int swcnt; // number of vertices in swarm polygon

int swidx; // index of swarm polygon's current vertex

int swrad; // radius of swarm polygon, in pixels

double theta = (PI * 2) * (double(swidx) / swcnt); // can be better optimized

Ring.Shift.x += sin(theta) * swrad;

Ring.Shift.y += cos(theta) * swrad;

swidx++;

swidx %= swcnt; // can be better optimized

NOTE that this feature requires the skew curve fix (see above), otherwise curves will be horribly distorted.

## No comments:

Post a Comment