Ok, I think I have it narrowed down to “Point2d.Add(Vector2d)”
08 returns (25,25)(25,125)(125,125)(25,125)(25,25)(100024,100024)
09 returns (25,0)(25,0)(125,0)(25,0)(25,0)(100024,0)
It seems that AutoCAD 09 is losing the Y value. Well! At least I can write my own work-around function, I thought the problem was in the polyline class
// result from 08 (25,25)(25,125)(125,125)(25,125)(25,25)(100024,100024)
// result from 09 (25,0)(25,0)(125,0)(25,0)(25,0)(100024,0)
[CommandMethod("doit")]
public static void doit()
{
Editor editor = AcAp.Application.DocumentManager.MdiActiveDocument.Editor;
Vector2d MoveBy = new Vector2d(25, 25);
Point2dCollection ptc = new Point2dCollection();
ptc.Add(new Point2d(0, 0));
ptc.Add(new Point2d(0, 100));
ptc.Add(new Point2d(100,100));
ptc.Add(new Point2d(0, 100));
ptc.Add(new Point2d(0, 0));
ptc.Add(new Point2d(99999, 99999));
//bug in Point2d.Add(vector2d)
foreach (Point2d pt in ptc)
{
editor.WriteMessage("{0}", pt.Add(MoveBy));
}
}