#define PERL_NO_GET_CONTEXT /* we want efficiency */ #include "EXTERN.h" #include "perl.h" #include "XSUB.h" #include "ppport.h" #include "at_centroid.h" #include "point.h" aglo_const_point at_centroid(aglo_state state) { if (state->centroid_sequence != state->sequence) { aglo_unsigned i, v, d; aglo_point centroid; d = state->dimensions; centroid = state->cached_centroid; aglo_point_zero(d, centroid); v = state->graph->vertices; for (i=0;ipoint[i]); aglo_point_scalar_mult(d, centroid, 1.0L / v, centroid); state->centroid_sequence = state->sequence; } return state->cached_centroid; } MODULE = Graph::Layout::Aesthetic::Dummy::Centroid PACKAGE = Graph::Layout::Aesthetic::Dummy