Move compute_segment_center body to dcx

This commit is contained in:
Kp 2017-02-22 03:05:44 +00:00
parent 892d450022
commit 8a89313ec4
2 changed files with 13 additions and 9 deletions

View file

@ -66,8 +66,8 @@ static inline vms_vector compute_center_point_on_side(const segment &sp, const u
vms_vector v; vms_vector v;
return compute_center_point_on_side(v, sp, side), v; return compute_center_point_on_side(v, sp, side), v;
} }
void compute_segment_center(vms_vector &vp,vcsegptr_t sp); void compute_segment_center(vms_vector &vp, const segment &sp);
static inline vms_vector compute_segment_center(vcsegptr_t sp) static inline vms_vector compute_segment_center(const segment &sp)
{ {
vms_vector v; vms_vector v;
compute_segment_center(v, sp); compute_segment_center(v, sp);

View file

@ -112,6 +112,15 @@ static void compute_center_point_on_side(vms_vector &r, const array<unsigned, MA
vm_vec_copy_scale(r, vp, F1_0 / 4); vm_vec_copy_scale(r, vp, F1_0 / 4);
} }
static void compute_segment_center(vms_vector &r, const array<unsigned, MAX_VERTICES_PER_SEGMENT> &verts)
{
vms_vector vp;
vm_vec_zero(vp);
range_for (auto &v, verts)
vm_vec_add2(vp, Vertices[v]);
vm_vec_copy_scale(r, vp, F1_0 / 8);
}
} }
namespace dsx { namespace dsx {
@ -132,14 +141,9 @@ void compute_center_point_on_side(vms_vector &vp, const segment &sp, const unsig
// ------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------
// Compute segment center. // Compute segment center.
// The center point is defined to be the average of the 8 points defining the segment. // The center point is defined to be the average of the 8 points defining the segment.
void compute_segment_center(vms_vector &vp,const vcsegptr_t sp) void compute_segment_center(vms_vector &vp, const segment &sp)
{ {
vm_vec_zero(vp); compute_segment_center(vp, sp.verts);
range_for (auto &v, sp->verts)
vm_vec_add2(vp,Vertices[v]);
vm_vec_scale(vp,F1_0/8);
} }
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------