Originally Posted by MikeJarosz
I admit to also finding the complete understanding of that method quite elusive. In fact, the routine above contains an unneccessary step:
varStPt = dblStPt
varStPt = .Utility.TranslateCoordinates(varStPt, acOCS, acWorld, 0, varNormal)
could be just:
varStPt = .Utility.TranslateCoordinates(dblStPt, acOCS, acWorld, 0, varNormal)
Likewise for the End Point.
I could have sworn that step was required when I first wrote it. Oh well.
For an even more complete understanding of the LWPoly and its properties, do a search for Arbitrary Axis Algorithm. Caution, it is some head banging stuff.