star-enclosures-2d

Extract enclosures from 2D geometry
git clone git://git.meso-star.fr/star-enclosures-2d.git
Log | Files | Refs | README | LICENSE

commit 9b1dbfed0b7e5be2f6cbfab6a6cd4bf703d187e4
parent bd25dbc2c166e41fbd7ce85dd1d2f7c6507b9fd7
Author: Christophe Coustet <christophe.coustet@meso-star.com>
Date:   Tue, 21 Aug 2018 11:41:35 +0200

Some small fixes

Diffstat:
Msrc/senc2d_enclosure_c.h | 2+-
Msrc/senc2d_scene.c | 2+-
Msrc/senc2d_scene_analyze.c | 18+++++++-----------
3 files changed, 9 insertions(+), 13 deletions(-)

diff --git a/src/senc2d_enclosure_c.h b/src/senc2d_enclosure_c.h @@ -32,6 +32,6 @@ struct senc2d_enclosure { struct senc2d_enclosure* enclosure_create (struct senc2d_descriptor* desc, - const unsigned idx); + const unsigned idx); #endif /* SENC2D_ENCLOSURE_C_H */ diff --git a/src/senc2d_scene.c b/src/senc2d_scene.c @@ -178,7 +178,7 @@ senc2d_scene_add_geometry if(tmp.vertice_id[0] == tmp.vertice_id[1]) { const union double2* positions = darray_position_cdata_get(&scn->vertices); - log_warn(scn->dev, "%s: segment %lu is degenerate.\n", + log_err(scn->dev, "%s: segment %lu is degenerate.\n", FUNC_NAME, (unsigned long)tmp.global_id); log_err(scn->dev, " (%g %g) (%g %g)\n", SPLIT2(positions[seg[i].vertice_id[0]].vec), diff --git a/src/senc2d_scene_analyze.c b/src/senc2d_scene_analyze.c @@ -57,7 +57,7 @@ neighbour_cmp(const void* w1, const void* w2) static side_id_t get_side_not_in_connex_component - (const seg_id_t last_side, + (const side_id_t last_side, const struct segside* segsides, const unsigned char* processed, side_id_t* first_side_not_in_component, @@ -192,14 +192,14 @@ extract_connex_components /* We loop on sides to build connex components. */ #pragma omp for schedule(dynamic) nowait - for(mm = 0; mm < (int64_t) scn->nmeds; mm++) { /* Process all media */ + for(mm = 0; mm < (int64_t)scn->nmeds; mm++) { /* Process all media */ const medium_id_t m = (medium_id_t)mm; /* Any not-already-used side is used as a starting point */ const struct side_range* media_use = darray_side_range_cdata_get(&scn->media_use) + m; side_id_t first_side_not_in_component = media_use->first; double max_y_ny; - const seg_id_t last_side = media_use->last; + const side_id_t last_side = media_use->last; char one = 1; int component_canceled = 0; res_T tmp_res = RES_OK; @@ -366,8 +366,8 @@ canceled: double edge[2], normal[2], norm; /* To garanty that segments with 2 sides in the component total to 0 - * regardless of numeric accuracy, we need to prevent them to - * contribute (remember than x + y - x - y can be non-zero). */ + * regardless of numeric accuracy, we need to prevent them to + * contribute (remember than x + y - x - y can be non-zero). */ ASSERT(seg_comp->component[SIDE_FRONT] == cc->cc_id || seg_comp->component[SIDE_BACK] == cc->cc_id); if(seg_comp->component[SIDE_FRONT] == seg_comp->component[SIDE_BACK]) @@ -390,7 +390,7 @@ canceled: /* Need to synchronize connex_components growth as this global structure * is accessed by multipe threads */ -#pragma omp critical + #pragma omp critical { struct cc_descriptor** components; sz = darray_ptr_component_descriptor_size_get(connex_components); @@ -554,14 +554,10 @@ group_connex_components } else { /* If hit, group this component */ const seg_id_t hit_seg_id = (seg_id_t)hit.prim.prim_id; - /* const struct segment_in* hit_seg_in = - darray_segment_in_cdata_get(&desc->scene->segments_in) + hit_seg_id; */ const struct segment_comp* hit_seg_comp = darray_segment_comp_cdata_get(segments_comp) + hit_seg_id; enum side_id hit_side = (hit.normal[1] > 0) ? SIDE_FRONT : SIDE_BACK; - /* const side_id_t hit_side_id - = SEGIDxSIDE_2_SEGSIDE(hit_seg_id, hit_side); */ - + ASSERT(hit_seg_id < desc->scene->nusegs); /* Not really the root until following links */