1 / 31

SQL

SQL. Porysujmy trochę czyli Łączenie SQLa, AutoCADa i Delphi. 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.

naida-koch
Télécharger la présentation

SQL

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SQL Porysujmy trochę czyli Łączenie SQLa, AutoCADa i Delphi

  2. 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

  3. LINE 5 21 100 AcDbEntity 8 0 100 AcDbLine 10 2.0 20 4.0 30 0.0 11 12.0 21 14.0 31 0.0 0

  4. CIRCLE 5 25 100 AcDbEntity 8 0 100 AcDbCircle 10 14.713649 20 10.469058 30 0.0 40 2.598426 0 ENDSEC 0

  5. TEXT 5 1F 100 AcDbEntity 8 0 100 AcDbText 10 9.894427 20 0.978737 30 0.0 40 0.695922 1 zmienia sie 0 50 2.943398 100 AcDbText 0

  6. 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 begin ent.textString:=Edit2.Text; ent.Update; end; end;//for end;

  7. 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;

  8. 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 end;

  9. procedure TForm1.Button2Click(Sender: TObject); begin Close; end;

  10. Ć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

More Related