half edge neighbor is incorrect
Closed this issue · 3 comments
godpenguin7 commented
godpenguin7 commented
int i = rand() % myCells.size();
myCells[ i ].selected = true;
const jcv_site* site = &jcv_diagram_get_sites( &diagram )[ i ];
const jcv_graphedge* edge = site->edges;
while ( edge != nullptr )
{
const jcv_site* neighbor;
if ( edge->edge->sites[ 0 ] == site )
neighbor = edge->edge->sites[ 1 ];
else
neighbor = edge->edge->sites[ 0 ];
if ( neighbor != nullptr )
{
myCells[ neighbor->index ].selected = true;
}
edge = edge->next;
}
JCash commented
Hi!
The array is sorted with respect to the points, so i != site->index
Try “myCells[ site->index ].selected = true;”
and see if that makes a difference
…Sent from my iPhone
On 24 Dec 2018, at 06:30, godpenguin7 ***@***.***> wrote:
int i = rand() % myCells.size();
myCells[ i ].selected = true;
const jcv_site* site = &jcv_diagram_get_sites( &diagram )[ i ];
const jcv_graphedge* edge = site->edges;
while ( edge != nullptr )
{
const jcv_site* neighbor;
if ( edge->edge->sites[ 0 ] == site )
neighbor = edge->edge->sites[ 1 ];
else
neighbor = edge->edge->sites[ 0 ];
if ( neighbor != nullptr )
{
myCells[ neighbor->index ].selected = true;
}
edge = edge->next;
}
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.
godpenguin7 commented
you were right totally my fault, using site->index fixed it. thanks a lot, i was dreading switching back to this other voronoi library because yours is much faster.