Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AccessAdobe photoshopAlgoritmiAutocadBaze de dateCC sharp
CalculatoareCorel drawDot netExcelFox proFrontpageHardware
HtmlInternetJavaLinuxMatlabMs dosPascal
PhpPower pointRetele calculatoareSqlTutorialsWebdesignWindows
WordXml


S-expresii AutoLISP in cadrul comenzilor AutoCAD

autocad



+ Font mai mare | - Font mai mic



S-expresii AutoLISP in cadrul comenzilor AutoCAD

S-expresiile AutoLISP pot fi folosite in cadrul comenzilor AutoCAD.

Obiective

in acest capitol veti studia:

Cum sa folositi AutoLISP-ul in cadrul comenzilor AutoCAD



Cum sa returnati o valoare din AutoLISP catre o comanda AutoCAD

Returnarea unei valori in linia de comanda

Valoarea unei expresii AutoLISP este trecuta din AutoLISP in AutoCAD ca raspuns la linia AutoCAD in actiune.

Daca linia de comanda este in actiune, valoarea unei expresii este pur si simplu tiparita    in zona liniei de comanda.

Command: (setq x (+ 4 6))

Command: !x

Aceasta expresie returneaza valoarea divizarii radacinii patrate numarului 50 prin numarul real 9.

Command: (/ (sqrt 50.0) 9.0)

Aceasta expresie returneaza valoarea multiplicarii rezultatului obtinut prin adunarea lui 2.5 cu 6.3 de 24.0.

Command: (* (+ 2.5 6.3) 24.0)

Returnarea unei valori la o comanda AutoCAD

Daca o comanda AutoCAD este in actiune, atunci evaluarea unei expresii AutoLISP returneaza valoarea expresiei in AutoCAD. Valoarea devine raspunsul la linia curenta a comenzii AutoCAD.

in acest exemplu, comanda ARRAY receptioneaza ca numar de repetitii ale functiei, rezultatul unei expresii AutoLISP pentru care 6.0 se divide la 0.35; cu alte cuvinte, nu stim dinainte cite repetitii cuprinde unitatea 0.35 la o distanta de 6.0 unitati, deci rugam AutoLISP-ul sa calculeze valoarea pentru noi si sa returneze raspunsul AutoCAD-ului.Deoarece comanda din ARRAY accepta numai numere intregi si nu numere reale, vom folosi functia AutoLISP fix pentru a rotunji cel mai apropiat numar intreg.

Exemplu

incepeti un desen nou.

Tipariti comenzile si expresiile care urmeaza.

Command: (/ 6.0 0.35)

Command: (fix 17.1429)

Command: (fix (/ 6.0 0.35))

Command: line

From point: 1,1

To point: 5,5

To point: Enter

Command: array

Select objects: I

Select objects: Enter

Rectangular or Polar array (R/P): r

Number of rows (-) <1>: 1

Number of columns (III) <1>: (fix (/ 6.0 0.35))

Distance between columns: 0.35

AutoCAD creaza 17 elemente in array.

Trebuie avut in vedere faptul ca o expresie AutoLISP a fost folosita interactiv, in mijlocul unei comenzi AutoCAD, pentru a calcula o valoare (in acest caz un numar intreg) care ulterior este data automat comenzii in acel punct special la    secventa de cerere a comenzii.

in exemplul urmator, AutoLISP-ul calculeaza marimea razei unei racordari.

Exemplu

incepeti un desen nou.

Tipariti expresiile si comenzile care urmeaza.

Marimea razei unei racordari este stabilita la 2.24.

Command: line
From point: 1,1
To point: 5,5
To point: Enter

Command: line
From point: 10,1
To point: 6,5
To point: Enter

Command: fillet
Polyline/Radius/<Select two lines>: r
Enter fillet radius <1.0>: (/ 28.0 12.5)

Command: fillet
Polyline/Radius/<Select two lines>: pick first line
Select second object: pick second line

Figura 10. Doua linii cu o racordare la o raza de (/28.0 12.5) sau 2.24

Recapitulare

S-expresiile pot fi folosite ca raspunsuri la cererile de comanda AutoCAD.

AutoLISP returneaza valoarea unei s-expresii folosite in cadrul unei comenzi AutoCAD la cererea comenzii.

exercitiul 4: expresii autolisp in cadrul comenzilor autocad

in acest exercitiu veti:

Folosi functii aritmetice si functia setq pentru a crea valori si legaturi simbol

Folosi valorile si simbolurile ca raspunsuri la cererile de comanda AutoCAD

Instructiuni

incepeti un desen nou.

Desenati un arc cu un unghi inclus de 1 radian.

Desenati doua cercuri concentrice: unul cu o raza de doua treimi pi si unul cu o raza la jumatate din aceasta valoare.

Amplasati arcul in jurul centrului cercurilor.

Fixati cite o copie la fiecare 15 grade de rotatie.

Command: arc
Center/<Start point>: 5,5
Center/End/<Second point>: c
Center: 3,5
Angle/Length of chord/<End point>: a
Included angle: (/ 180 pi)

Command: (setq x (* pi (/ 2.0 3.0)))
2.0944

Command: circle
3P/2P/TTR/<Center point>: 5,5
Diameter/<Radius>: !x

Command: circle
3P/2P/TTR/<Center point>: 5,5
Diameter/<Radius>: (/ x 2)

Command: (setq x (/ 360 15))
24

Command: array
Select objects: pick the arc
1 found
Select objects: Enter
Rectangular or Polar array (R/P): p
Center point of array: 5,5
Number of items: !x
Angle to fill (+=ccw, -=cw) <360>:Enter
Rotate objects as they are copied? <Y>Enter

Figura 11. Array completat

Aceasta pagina este lasata libera in mod intentionat.



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 1411
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved