Sunteți pe pagina 1din 8

Capitolul 5

Noi caracteristici ale personalizării

Scopul acestui capitol este de a explica modul de încărcare a aplicaţiilor rezidente AutoLISP,
ActiveX Automation şi aplicaţii modulare.

Obiective

În acest capitol, veţi


• Face rezidente aplicaţiile AutoLISP
• Parcurge ActiveX Automation şi câteva din aplicaţiile sale
• Observa procesul de încărcare la cerere a aplicaţiilor

AutoLISP rezident

Atunci când începeţi un nou desen, AutoLISP rămâne încărcat din desenele anterioare. Când
AutoLISP se autoîncarcă, el rămâne disponibil pentru toate desenele din sesiunea de lucru curentă.
În tabelul  din caseta de dialog  , puteţi opta
dacă AutoLISP este reîncărcat automat între desene, prin selectarea sau deselectarea opţiunii
    .

Active X

Folosind OLE 2.0 Automation, puteţi dezvolta fişiere script, macrouri sau aplicaţii ale altor
parteneri, pentru AutoCAD, cu limbaje moderne şi accesibile, precum Visual Basic 4.0 sau Visual
C++. Cu Active X, puteţi crea şi edita obiecte din orice aplicaţie, care serveşte drept controler
Active X, precum Microsoft Excel.

Următoarele trei sunt elementele de bază pentru terminologia Active X:


• Obiecte AutoCAD care sunt posibil a fi procesate sunt cunoscute ca obiecte Active X
• Metodele sunt funcţii care îndeplinesc o acţiune asupra unui obiect Active X
• Proprietăţile sunt funcţii care returnează informaţii despre starea unui obiect

Autodesk Development System (ADS) şi AutoCAD Runtime Extension (ARX) au fost dezvoltate
ca instrumente de programare pentru programatori avansaţi. Active X este un instrument de
programare mai compact şi transportabil, accesibil tuturor programatorilor.

Caracteristici şi avantaje

Active X este o alternativă la AutoLISP şi Proteus. Versiunea interfeţei în AutoCAD este foarte
asemănătoare cu interfaţa Active X în alte aplicaţii, precum Microsoft Excel, Microsoft Acces,
Visio 3.0, iar tehnicile de programare sunt aceleaşi în toate aplicaţiile. Puteţi lucra cu obiecte din
diferite aplicaţii în acelaşi timp, sau puteţi automatiza operaţiile repetitive în AutoCAD, precum
crearea componentelor parametrizate.

AutoCAD funcţionează numai ca server Active X, nu şi ca controler, şi cere ca o aplicaţie precum


Excel să lucreze ca un controler automat.

Funcţia de batch plot (plotare din stivă) din AutoCAD este un exemplu de program Active X.
Pentru informaţii asupra acestei funcţii, vedeţi “Plotarea din stivă” din capitolul 6 al acestui manual.

1
Pentru o documentare completă asupra metodelor Active X, vedeţi help-ul online, la secţiunea
“Using Active X Guide”.

Obiecte Active X

În AutoCAD, obiectele Active X sunt toate obiectele din interiorul AutoCAD-ului, inclusiv layerul,
blocul, stilul de text, linia, arcul, cercul, pentru a denumi câteva dintre ele. Aceste obiecte sunt
accesibile unui controler Active X, precum Excel. Utilizând caseta de dialog
  din Excel, puteţi avea acces la multe setări şi la controlul obiectelor
AutoCAD, aşa cum se prezintă în figura următoare:

Fig 5- Caseta de dialog Object Browser din Excel


Aceste obiecte devin disponibile în Excel, deoarece AutoCAD îşi înregistrează obiectele în mediul
sistemului de operare. Având acces la aceste obiecte şi la setările pentru Property şi Methods, vi se
oferă condiţiile pentru crearea şi manipularea desenelor AutoCAD.

Proprietăţile obiectelor

Proprietatea unui obiect este un atribut sau o caracteristică a acestuia. În cazul unei linii, câteva din
proprietăţile ei sunt punctele de început şi de sfârşit şi grosimea. Aşa cum puteţi observa din figura
5-2, numele unui obiect de tip linie în AutoCAD este AcadLine (în lista din partea stângă) şi una
din multele lui proprietăţi este endPoint (în lista din partea dreaptă).
Atunci când creaţi un macro în Excel (controler Active X), puteţi folosi oricare dintre obiecte (din
lista Objects/Modules) sau accesa oricare dintre proprietăţile obiectelor (din lista
Methods/Properties). Combinarea acestor setări vor conduce la un macro sau program.

Metode

Metodele sunt diferite de proprietăţi, în sensul că metoda controlează acţiunea unui obiect sau
valori. Câteva din metodele disponibile pentru Line sunt Erase, Copy sau Move. Un exemplu este
folosirea selecţiei Move din lista Methods/Properties, aşa cum se prezintă în figura 5-3.

2
Fig 5- Caseta de dialog Object Browser cu AcadLine selectată

Puteţi controla mutarea unei linii cu o singură metodă. Aceasta diferă de proprietatea StartPoint sau
EndPoint prin aceea că puteţi folosi o singură setare (metodă) pentru a controla punctele de început
şi de sfârşit ale unei linii, în loc de două setări (proprietate), câte una pentru fiecare capăt. Sunt
foarte asemănătoare, dar când sunt folosite corect pot mări viteza de accesare a macroului sau
programului.

Fig 5- Caseta de dialog Object Browser cu metoda Move selectată

Exerciţiul 1: Utilizarea Active X


3
În acest exerciţiu, veţi folosi Excel pentru a crea un macro care desenează un obiect în AutoCAD.

Considerarea unui obiect AutoCAD de către Excel

1. Deschideţi aplicaţia Excel.


2. Din meniul , selectaţi Macro, apoi Module pentru a insera o pagină Module.
3. Din meniul  , selectaţi Reference.
4. În caseta de dialog , prezentată în figura următoare, marcaţi AutoCAD
Object Library.

Fig 5- Caseta de dialog References


5. Selectaţi OK pentru a închide caseta de dialog. Aceasta face ca Excel să ia in considerare
obiectele AutoCAD. Puteţi accesa obiectele listate prin alegerea din meniul View a opţiunii
 sau prin apăsarea tastei F2.

Crearea unui macro

1. Mai întâi, veţi înregistra un macro, pe care îl veţi fixa într-o pagină modul. Pagina modul este
locul în care este plasată programarea în Visual Basic. Din meniul , selectaţi Record
Macro, apoi alegeţi Record New Macro.
2. Daţi un nume macroului (în acest caz, Draw_Circle) în această casetă de dialog, aşa cum se
prezintă în figura următoare:

Fig 5- Caseta de dialog Record New Macro

4
3. Selectaţi OK. Excel va afişa un tool palette cu un buton pătrat "stop recording", aşa cum se
prezintă în figura următoare:

Fig 5- Stop Recording


4. Apăsaţi acest buton pentru a opri înregistrarea macroului. Aceasta a fost făcută pentru a stabili
un nume de macro şi o pagină modul asociată.
5. Faceţi activă noua pagină modul. Veţi vedea următorul cod:

Fig 5- Microsoft Excel prezentând Sub Draw_Circle


6. Dacă aveţi unul sau mai multe "coduri" între liniile Sub Draw_Circle() şi End Sub, ştergeţi-le şi
treceţi la pasul următor. Acest “cod” adiţional este datorat unui meniu sau toolbar pe care l-aţi
mutat şi nu au importanţă pentru macroul pe care îl creaţi.
7. Următorul exemplu de cod porneşte AutoCAD-ul, desenează un cerc cu centrul la (5,5,0) şi de
rază 0.5. Acest cod schimbă apoi layerul, culoarea şi tipul de linie al cercului la valorile
“Geometry”, “Green” şi, respectiv, Dashed şi salvează desenul sub numele circle.dwg.

Asiguraţi-vă că pagina modul este activă şi introduceţi următorul cod Visual Basic:

Option Explicit
Public acad As Object

Sub Draw_Circle()
Dim dwg As Object
Dim circle1 As Object
Dim mspace As Object
Dim centerpt (1 to 3) As Double
Set acad = CreateObject (“AutoCAD.Application”)
acad.Visible = True
centerpt (1) = 2#
centerpt 2) = 2#
centerpt (3) = 0#
Set dwg = acad.ActiveDocument
dwg.Layers.Add (“Geometry”)
Set mspace = dwg.ModelSpace
Set circle1 = mspace.AddCircle (centerpt, 0.5)
circle1.Layer = “Geometry”

5
circle1.Color = acGreen
dwg.SaveAs (“c:\circle”)
End Sub

Ecranul dumneavoastră se va prezenta sub forma următoare:

Fig 5- Macroul Draw_Circle


8. Dacă calculatorul dumneavoastră nu are suficiente resurse de memorie RAM, asiguraţi-vă că aţi
închis orice sesiune AutoCAD deschisă. Apoi, folosiţi butonul Run Macro din tool palette
Visual Basic, pentru a rula acest macro:

Fig 5- Selectarea comenzii Run Macro din toolbar-ul Visual Basic


9. Dacă macroul curent nu a fost salvat, Excel va afişa caseta de dialog  , aşa cum se
prezintă în figura următoare. Introduceţi un nume pentru acest macro, apoi selectaţi butonul

Run.
Fig 5- Caseta de dialog Macro

6
AutoCAD va fi lansat şi veţi avea un cerc verde creat în layerul Geometry, aşa cum se prezintă în
figura următoare:

Fig 5- Cercul creat cu Active X

Încărcarea aplicaţiilor modulare

O cale prin care AutoCAD măreşte performanţa este prin intermediul structurii de aplicaţii
modulare şi încărcarea la cerere a aplicaţiilor.

Structura aplicaţiilor modulare

În scopul utilizării la minim a resurselor sistemului, structura de aplicaţii modulare din R14 adoptă
varianta încărcării la cerere a aplicaţiilor. În loc să încarce totdeauna aplicaţiile suplimentare la
începutul unei sesiuni de lucru, R14 încarcă automat aplicaţia potrivită numai atunci când este
necesară, după lansarea unei comenzi sau după selectarea unui obiect. Acest mod de lucru
economiseşte resursele sistemului şi măreşte viteza atunci când puţine aplicaţii sunt necesar a fi
încărcate.

Exerciţiul 2: Încărcarea la cerere a aplicaţiilor

În acest exerciţiu, veţi observa încărcarea la comandă a aplicaţiilor într-un fişier eşantion.

Utilizarea comenzilor EXTRUDE şi RENDER

1. Din meniul  , selectaţi Open, apoi alegeţi autodesk.dwg pentru a deschide acest desen.
Desenul va arăta ca în figura următoare:

7
Fig 5- Fişierul autodesk.dwg
2. Din meniul , selectaţi Solids, apoi Extrude. Va fi încărcată aplicaţia modulară Modeler.
La prompter, vi se anunţă aceasta:

Command: _extrude
Loading Modeler DLLs.

3. Selectaţi dreptunghiul albastru. Pentru înălţimea extrudării, introduceţi valoarea 67.40, iar
pentru unghiul de extrudare acceptaţi valoarea implicită de 0.
4. Faceţi curent layerul Adesklogo.
5. Din meniul , selectaţi Solids, apoi Extrude.
6. Selectaţi cele trei polilinii optimizate roşii. Pentru înălţimea de extrudare, introduceţi valoarea
20, iar pentru unghiul de extrudare, introduceţi 0.
7. Din meniul  , selectaţi Render, apoi Render. Va fi afişată caseta de dialog
.
8. Din lista Rendering Type, selectaţi Render.
9. Apăsaţi pe butonul Render. Vederea randată trebuie să arate ca în figura următoare:

Fig 5- Vederea randată a fişierului autodesk.dwg

S-ar putea să vă placă și