star-2d

Contour structuring for efficient 2D geometric queries
git clone git://git.meso-star.fr/star-2d.git
Log | Files | Refs | README | LICENSE

commit 2e74745c9d1e0c558f0d138d61c7e6fae2a58eb5
parent e24675d4017ca2f1cd5ac5d17018b1265cfca0b5
Author: Vincent Forest <vincent.forest@meso-star.com>
Date:   Mon, 20 Jun 2016 08:43:19 +0200

Implement the line_segments_compute_aabb backend function

Diffstat:
Msrc/s2d_line_segments.c | 24++++++++++++++++++++++++
1 file changed, 24 insertions(+), 0 deletions(-)

diff --git a/src/s2d_line_segments.c b/src/s2d_line_segments.c @@ -479,3 +479,27 @@ error: goto exit; } +void +line_segments_compute_aabb + (struct line_segments* line, + float lower[2], + float upper[2]) +{ + float* pos; + size_t ivert, nverts; + ASSERT(line && lower && upper); + + f2_splat(lower, FLT_MAX); + f2_splat(upper,-FLT_MAX); + + nverts = line_segments_get_nverts(line); + if(!nverts) return; + + pos = line_segments_get_pos(line); + FOR_EACH(ivert, 0, nverts) { + const size_t ipos = ivert * 2/*#coords per vertex*/; + f2_min(lower, lower, pos + ipos); + f2_max(upper, upper, pos + ipos); + } +} +