Page 1 of 1

Как сохранить полилинию в LWPOLYLINE

Posted: 06 Feb 2007, 15:45
by Rio
Как сохранить полилинию в LWPOLYLINE как в DXFExport в файл DXF?
приведите пример пожалуйста
1 из имющихся координат.
2 из компонента SGImage.

Posted: 07 Feb 2007, 18:05
by PoltP
Пример создания LWPOLYLINE есть в Demo DXFExporter(Main.pas>TfmDXFExporter.btnFormShapesClick):

Code: Select all

...
    FillChar(Data, SizeOf(Data), 0);
    Data.Color := ColorToDXF(TColor($224AF5));
    Data.GlobalWidth := 5;// Constant width DXF code 43
    Data.Points := TList.Create;
    Data.Points.Add(TList.Create);
    New(Pt);
    Pt^ := MakeExpPoint(310, -190, 0);
    TList(Data.Points[0]).Add(Pt);
    New(Pt);
    Pt^ := MakeExpPoint(-60, -100, 0);
    TList(Data.Points[0]).Add(Pt);
    New(Pt);
    Pt^ := MakeExpPoint(-60, 100, 0);
    TList(Data.Points[0]).Add(Pt);
    New(Pt);
    Pt^ := MakeExpPoint(20, 170, 0);
    TList(Data.Points[0]).Add(Pt);
    New(Pt);
    Pt^ := MakeExpPoint(600, 170, 0);
    TList(Data.Points[0]).Add(Pt);
    New(Pt);
    Pt^ := MakeExpPoint(680, 100, 0);
    TList(Data.Points[0]).Add(Pt);
    New(Pt);
    Pt^ := MakeExpPoint(680, -100, 0);
    TList(Data.Points[0]).Add(Pt);
    Data.Count := Data.Points.Count;
    Data.Flags := 1; // closed
    vDXF.AddPolyLine(Data, 0);// one boundary
    FreeDataPoints;
...
здесь создаётся именно LWPOLYLINE, а не POLYLINE.

2. Из sgImage сохранение в DXF возможно только через метафайл (см. Demo Viewer).

Если я не ошибаюсь, мы уже давали Вам ссылку на новый продукт - прямой экспорт ( http://www.soft-gold.ru/forum/topic.asp?TOPIC_ID=469 )? Вы не используете его?

- - -
Yours faithfully,
Pavel Poltavets,
senior developer Soft Gold Ltd.