Тема: Как получить координаты узлов полилинии?

Выбираю через selectionset полилинии. Как добраться до координат узлов этих полилиний не прибегая к лиспу?
Поможите!

Re: Как получить координаты узлов полилинии?

Помогите! Вот пример для наглядности:
var acad:iacadapplication;
      pe1,pe2,pe3,pe4,pe5,pe6:real;
      pt:olevariant;
     selset:IAcadSelectionSet;
     FT: OleVariant;
     FD: OleVariant;
     P: IAcadLWPolyLine;
begin
    try
    acad:=getactiveoleobject('autocad.application') as iacadapplication;
    form1.AcadDocument1.ConnectTo(acad.ActiveDocument);
    except
    end;
Pt:= VarArrayCreate([0, 5], VarDouble);
  pt[0]:=0;
  pt[1]:=1;
  pt[2]:=2;
  pt[3]:=3;
  pt[4]:=4;
  pt[5]:=5;
acad.ActiveDocument.ModelSpace.AddLightWeightPolylin(pt);
// Полилиния чертится, всё нормально. Если наоборот то не работает:
  FT:=VarArrayCreate([0,0],VT_I2);
  FD:=VarArrayCreate([0,0],VT_VARIANT);
  FT[0]:=0;
  FD[0]:='Lwpolyline';
  selSet:=acad.ActiveDocument.SelectionSets.Add('fifffkkks');
  SelSet.SelectOnScreen(ft,fd);
  p:=(SelSet.Item(0) as IAcadlwpolyline);
  Pt:= VarArrayCreate([0, 5], VarDouble);
  pt:=p.coordinates;
  pe1:=pt[0];
    pe2:=pt[1];
      pe3:=pt[2];
        pe4:=pt[3];
          pe5:=pt[4];
            pe6:=pt[5];
//Координаты pe почему-то равны нулю. Хотя выбираю полилинию которую только что создал выше. Где ошибка, не пойму?
   SelSet.Delete;
end;

Re: Как получить координаты узлов полилинии?

VT_I2 - может стипом напутал? У меня по-другому получилось:
var
acad:iacadapplication;
pt:olevariant;
disp: IDispatch;
P: IAcadLWPolyLine;
pe1,pe2,pe3,pe4,pe5,pe6:real;
begin
try
acad:=GetAcadApplication(true);
except
end;
  acad.ActiveDocument.Utility.GetEntity(disp, emptyparam, 'Ткни полилинию');
  Pt:= VarArrayCreate([0, 5], VarDouble);
  p:=(disp as IAcadlwpolyline);
  pt:= p.Coordinates;
  pe1:=pt[0];
  pe2:=pt[1];
  pe3:=pt[2];
  pe4:=pt[3];
  pe5:=pt[4];
  pe6:=pt[5];
end;