Scrigroup - Documente si articole

     

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


Fisierele program AutoLISP

autocad



+ Font mai mare | - Font mai mic



Fisierele program AutoLISP

Puteti crea functii definite de utilizator introducind codul corespunzator in linia de comanda. Pentru definirea functiilor si pentru succesiuni complexe de s-expresii este adesea mult mai eficient sa folositi un editor de text si sa scrieti functiile sau expresiile intr-un fisier de tip text cu o extensie .lsp. Codul din fisier poate fi incarcat    in editorul grafic cu ajutorul functiei AutoLISP load.



Obiective

in acest capitol veti studia:

Cum sa scrieti fisiere text care contin programe AutoLISP.

Cum sa incarcati fisierele program AutoLISP in editorul grafic AutoCAD.

Cum lucreaza functia AutoLISP load.

Cum sa recunoasteti cele mai frecvente mesaje de erori in timpul incarcarii.

Evaluarea la incarcarea fisierului

Functia load citeste pe rind expresiile dintr-un fisier si evalueaza fiecare expresie in parte. Valoarea returnata de functia load este valoarea ultimei expresii care a fost evaluata.

Functia load cere un singur argument de tip sir: numele fisierului .lsp de incarcat.

(load "filename").

Daca adaugati codul pentru functia c:rectangle la numele unui fisier rectang.lsp    puteti incarca fisierul intr-o sesiune de editare grafica fara sa

reintroduceti intreaga definitie a functiei

NOT| Functia AutoLISP load este diferita de comanda AutoCAD LOAD.

Cautarea fisierului

AutoLISP-ul va cauta fisierul rectang.lsp    in directorul curent impreuna cu alte directoare mentionate in specificarea de cale a bibliotecii AutoCAD-ului. Daca gaseste fisierul, il va incarca in editor.

Pentru lista de directoare aflate in specificarea de cale a bibliotecii AutoCAD consultati descrierea functiei findfile in capitolul 4 din AutoLISP Programmer's Reference Manual.

Mesaje de eroare la incarcare

Daca AutoLISP-ul afiseaza un mesaj de eroare la incarcarea fisierului, trebuie sa editati fisierul si sa corectati eroarea.

Lista erorilor AutoLISP si a cauzelor acestora se afla in Appendix D din AutoLISP Programmer's Reference Manual.. O lista succinta a erorilor pe care este posibil sa le intilniti la incarcare este data mai jos. Majoritatea mesajelor indica erori tipice de programare AutoLISP cum ar fi:

Ortografierea gresita a functiilor sau a numelor simbol

Tipuri gresite de argumente la functie

Paranteze neimperecheate

Ghilimele neimperecheate

Mesaje de eroare

Explicatii

can't open file for input -- LOAD failed

Fisierul numit in    Functia load nu poate fi gasit., sau utilizatorul nu are acces sa citeasca fisierul.

extra right paren

S-a detectat una sau mai multe paranteze dreapta in plus.

insufficient string space

Nu exista spatiu suficient pentru a aranja sirul text specificat, de obicei datorita ghilimelelor neimperecheate.

malformed list

O lista citita dintr-un fisier s-a terminat prematur. Cea mai frecventa cauza este imperecherea gresita a parantezelor sau a ghilimeleor..

Tabelul 18. Mesaje de eroare la incarcare

Recapitulare

Programele AutoLISP pot fi stocate in fisiere text externe.

Fisierele AutoLISP au extensia .lsp.

Functia load incarca un program AutoLISP in AutoCAD.

AutoLISP-ul va atrage atentia printr-un mesaj de eroare daca are o problema la incarcarea fisierului.

exercitiul 15: incarcarea unui fisier sursa    autolisp

in acest exercitiu veti:

Crea un fisier program AutoLISP.

incarca fisierul in editorul grafic .

Folosi comanda definita de fisier.

Instructiuni

Folositi editorul text pe statia dvs. de lucru. Rugati instructorul sa va ajute sa configurati editorul de text in sistemul dvs.

Creati un fisier de text numit rectang.lsp.

Salvati fisierul in directorul de lucru.

incarcati fisierul in editorul grafic.

Folositi comanda RECTANGLE.

(defun c:rectangle ()

(setq pt1 (getpoint 'anFirst corner: '))

(setq pt3 (getpoint 'anOther corner: '))

(command

'_.pline'

pt1

(list (car pt1) (car (cdr pt3)))

pt3

(list (car pt3) (car (cdr pt1)))

'c'

)

Command: (load 'rectang')
C:RECTANGLE

Command: rectangle
First corner:



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 1262
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