*/
void DistanceTransform( float *source, float* dest, unsigned int length )
{
- int parabolas[length]; // Locations of parabolas in lower envelope
- float edge[length + 1]; // Locations of boundaries between parabolas
+ std::vector<int> parabolas(length); // Locations of parabolas in lower envelope
+ std::vector<float> edge(length + 1); // Locations of boundaries between parabolas
+
int rightmost(0); // Index of rightmost parabola in lower envelope
parabolas[0] = 0;