Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałBlanka Nowotny Został zmieniony 11 lat temu
1
Porysujmy trochę czyli Łączenie SQLa, AutoCADa i Delphi
13
Sekcja podaje kody grup, które stosuje się do obiektów graficznych
Sekcja podaje kody grup, które stosuje się do obiektów graficznych. Kody te znajdują się w sekcji ENTITIES pliku DXF i są wykorzystywane przez aplikacje AutoLISP-u i ARX w listach definicji elementów. Kody grup opisane w omawianej sekcji, można stosować do plików DXF, aplikacji (AutoLISP-u lub ARX), względnie do obu przypadków. Jeżeli opis kodu jest różny w przypadku aplikacji i w przypadku plików DXF (lub odnosi się tylko do jednego z tych rodzajów plików), to opis poprzedzony jest następującym wskaźnikiem: APP Opis dotyczący aplikacji DXF Opis dotyczący plików DXF Nie stosuje się specjalnego wskaźnika, jeżeli opis dotyczy obu rodzajów zastosowań. W przeciwnym przypadku wskaźnik jest podawany. Kody, które występują warunkowo, napisano na szarym tle. Tematy w tej sekcji: Wspólne kody grup obiektów graficznych 3DFACE 3DSOLID ARC ATTDEF ATTRIB BODY CIRCLE DIMENSION ELLIPSE HATCH IMAGE INSERT LEADER LINE LWPOLY LINE MLINE MTEXT OLEFRAME OLE2FRAME POINT POLYLINE RAY REGION SEQEND SHAPE SOLID SPLINE TEXT TOLERANCE TRACE VERTEX VIEWPORT XLINE ACAD_PROXY_ENTITY
15
LINE 5 21 100 AcDbEntity 8 AcDbLine 10 2.0 20 4.0 30 0.0 11 12.0 14.0 31
17
CIRCLE 5 25 100 AcDbEntity 8 AcDbCircle 10 20 30 0.0 40 ENDSEC
20
TEXT 5 1F 100 AcDbEntity 8 AcDbText 10 20 30 0.0 40 1 zmienia sie 0 50
27
procedure TForm1.Button1Click(Sender: TObject);
var p1, p2, p3 :OleVariant; Mspace, Acad, ent :OleVariant; l_poz:integer; begin p1:= varArrayCreate([0,2], VT_R8); p2:= varArrayCreate([0,2], VT_R8); p3:= varArrayCreate([0,2], VT_R8); // p1[0]:=2.0; p1[1]:=4; p1[2]:=0; p2[0]:=12.0; p2[1]:=14; p2[2]:=0; p3[0]:=7.0; p3[1]:=8; p3[2]:=0; try Acad:=GetActiveOleObject('AutoCAD.Application.16'); except Acad:=CreateOleObject('AutoCAD.Application.16'); end; Acad.Visible:=True; Mspace:=Acad.ActiveDocument.ModelSpace; MSpace.AddLine(varArrayref(p1), varArrayref(p2)).Update; l_poz := MSpace.Count; Label3.Caption:=IntToStr(l_poz); ent:=Mspace.Item(0); for l_poz := 0 to MSpace.Count-1 do begin; ent:=Mspace.Item(l_poz); if ent.layer = Edit1.text then if ent.EntityName = 'AcDbText' then ent.textString:=Edit2.Text; ent.Update; end;//for
28
procedure TForm1.Button1Click(Sender: TObject);
var p1, p2, p3 :OleVariant; Mspace, Acad, ent :OleVariant; l_poz:integer; begin p1:= varArrayCreate([0,2], VT_R8); p2:= varArrayCreate([0,2], VT_R8); p3:= varArrayCreate([0,2], VT_R8); // p1[0]:=2.0; p1[1]:=4; p1[2]:=0; p2[0]:=12.0; p2[1]:=14; p2[2]:=0; p3[0]:=7.0; p3[1]:=8; p3[2]:=0; try Acad:=GetActiveOleObject('AutoCAD.Application.16'); except Acad:=CreateOleObject('AutoCAD.Application.16'); end; Acad.Visible:=True; Mspace:=Acad.ActiveDocument.ModelSpace; MSpace.AddLine(varArrayref(p1), varArrayref(p2)).Update; l_poz := MSpace.Count;
29
Acad.Visible:=True; Mspace:=Acad.ActiveDocument.ModelSpace; MSpace.AddLine(varArrayref(p1), varArrayref(p2)).Update; l_poz := MSpace.Count; Label3.Caption:=IntToStr(l_poz); ent:=Mspace.Item(0); for l_poz := 0 to MSpace.Count-1 do begin; ent:=Mspace.Item(l_poz); if ent.layer = Edit1.text then if ent.EntityName = 'AcDbText' then begin ent.textString:=Edit2.Text; ent.Update; end; end;//for
30
procedure TForm1.Button2Click(Sender: TObject);
begin Close; end;
31
Ćwiczenie Napisz program tworzący i przesuwający obiekt typu LINE o zadany wektor Napisz program pobierający tekst z bazy danych i modyfikujący rysunek AutoCADa
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.