Topograf Online

Software => LISP, AutoLISP => Subiect creat de: phibrizzo din Feb 05, 2009, 10:57 AM

Titlu: lisp help
Scris de: phibrizzo din Feb 05, 2009, 10:57 AM
ma poate ajuta cineva cu un lisp cu ajurotul caruia sa desenez garduri dar sa fie compatibil cu zwCAD 2007?:D...un amic mia dat un lisp de la topolt dar nu e compatibil cu zwCAD din pacate.mutumesc anticipat:D
Titlu: Re: lisp help
Scris de: kod din Feb 05, 2009, 11:56 AM
daca zwCAD -ul are modulul de lisp...foloseste orice versiune de topograph...succes!
Titlu: Re: lisp help
Scris de: phibrizzo din Feb 05, 2009, 12:23 PM
poi am topograf:D...si are semne conventionale...caroiaj..taluz..etc..dar nu am gasit nimik despre linii de gard:(..o sa mai caut:D
Titlu: Re: lisp help
Scris de: John Doe din Feb 05, 2009, 05:21 PM
Iti pot construi o linie de tip gard de care vrei tu, dar nu stiu cum vrei sa arate.
Deseneaza una cu mâna, pune-i poza aici si vedem.
Nu cunosc ZwCAD ; are comenzile "divide" si "measure" sau ceva echivalent ?
Titlu: Re: lisp help
Scris de: phibrizzo din Feb 05, 2009, 05:41 PM
are ambele comenzi...si multumesc mult dar de mana asa pot constri si eu garduri dupa un idex al semnelor conventionale..pe mine ma interesa un lisp care sa ma ajute in felul urmator:in meniul "line tipe" selectezi gard sarma(sau gard ciment sau orice) si cand ai tras o linie face automan si semnele reprezentative pt tipul de gard dorit:D
Am observat in topograf o comande:incarca linii topo.nu stiu dak m-ar putea ajuta sau nu pt ca atunci cand o selectez imi zice ceva de genul:"Calea C:\TopoGraph neconfigurata."
Titlu: Re: lisp help
Scris de: kod din Feb 05, 2009, 07:12 PM
da trebuie configurata calea din aceasta cauza nu te lasa sa-ti incari liniile topo si semnele conventionale din TopoGraph
intri in AutoCAD...click dr. pe fundal/options.../files/Support File search Path/...dai browse si selectezi calea:  C:/Topograph/  sau unde ti-ai pus topographu` si dai ADD
la fel si cu "Working support file search path...

Succes  :hi:
Titlu: Re: lisp help
Scris de: phibrizzo din Feb 06, 2009, 10:13 AM
hey kod...ms mult a mers:D..uii numai tre sa fac de mana :cool:  :wink2:
Titlu: Re: lisp help
Scris de: John Doe din Feb 06, 2009, 10:50 AM
phibrizzo:
1. AutoCAD-ul are in meniu "Tools -> Options -> Support File search Path", si acolo îi adaugi (cu "Browse";) si calea C:\TopoGraph ; altfel, nu stie unde sa caute
2. Tot la AutoCAD, la linetype are "Other - Load - File..." si gasesti fisierul *.lin din TopoGraph si-l încarci
3. Daca nu seamana astea, cauta in TopoGraph fisierul de linii (*.LIN), si copiaza-l lânga fisierul de linii din Zwcad; atunci o sa ti-l gaseasca. Trebuie copiate si unele fisiere SHX sau SHP ; daca nu stii care, copiaza-le pe toate si daca spune ca are deja vreunul, da-i "Skip".

4. Si ultima solutie: scrie-ti la sfârsitul fisierului tau LIN din Zwcad exact textul de mai jos:

*X_LINE,X line ----X----X----X----X----X----X--
A,0.5,-0.2,["X",STANDARD,S=.1,R=0.0,X=-0.1,Y=-.05],-0.25

Este definitia unui tip de linie cu X pe ea. Daca asta vrei. Trebuie sa ai txt.shx pe undeva pe-acolo, tipul de text pentru "X" e standard.
Daca nu-ti place cum arata poti umbla linistit la cifrele de dupa "A" : 0.5 este lungimea unui segment de linie dintre X-uri, -0.2 este lungimea pauzei din linie unde e scris X-ul.
Titlu: Re: lisp help
Scris de: kod din Feb 06, 2009, 12:19 PM
da se poate crea si cu un fisier *.txt in notepad, si il salvezi ce extensia *.lin parca asa era !

Modificat de kod (06-02-2009 10:22:34)
Titlu: Re: lisp help
Scris de: kod din Feb 06, 2009, 12:21 PM
Citat din: phibrizzohey kod...ms mult a mers..uii numai tre sa fac de mana   

cresti mare ! dai o bere  :razz:
numai bine  :hi:
Titlu: Re: lisp help
Scris de: John Doe din Feb 06, 2009, 02:33 PM
Da phibrizzo, trebuie sa faci de mâna.
Ce frumos ar fi daca ar porni calculatorul singur când ne apropiem de el... si pe urma sa ne uitam la monitor, sa ne gândim ce vrem si el sa faca... nu ?

Daca vreti mai multe despre fisierul LIN, întrebati si va spun. Gratis, dar e nitica teorie. Eu mi-am spart capul destul cu ele, n-aveam de la cine sa învat si cred ca nu are rost sa piarda si altii timpul la fel. Altii interesati, vreau sa zic.
La fel, se pot face niste smecherii (in AutoCAD) cu fisierul acad200*doc.lsp, care e in ...\Support\. Daca aveti o aplicatie Lisp folosita relativ des, ca sa nu-i mai dati de fiecare data APPLOAD (sau "Load Application...";), scrieti de mâna in fisierul asta asa:

(load "MyApp.lsp";)

Scrieti undeva unde nu încurcati alte comenzi.
Pt. ca acad200*doc.lsp se încarca automat, va executa si linia voastra de comanda si o sa încarce si "MyApp.lsp" (MyApp = de exemplu). Cu mentiunea ca fisierul MyApp trebuie sa fie in calea de cautare, sau sa-i dati calea (path) completa; in cazul asta in Lisp se pun doua slash-uri pt. subdirectoare, ex.:

(load "C:\\Lispuri\\MyApp.lsp";)


La mine acad2000doc.lsp are adaugat de mine textul dintre asteriscuri; restul e de-al lui si arata cam asa (extras):


;;;            language command call (e.g. with the leading underscore
;;;            mechanism.)

;;;******************************************************
(command "ucsicon" "off";)
(load "coordonate_1.lsp";)
;;;******************************************************


;;;===== Raster Image Support for Clipboard Paste Special =====
;;
;; IMAGEFILE
;;
;; Allow the IMAGE command to accept an image file name without
;; presenting the file dialog, even if filedia is on.
;; Example: (imagefile "c:/images/house.bmp";)
;;
(defun imagefile (filename / filedia-save cmdecho-save)
  (setq filedia-save (getvar "FILEDIA";))
  (setq cmdecho-save (getvar "CMDECHO";))

Modificat de John Doe (06-02-2009 12:39:39)
Titlu: Re: lisp help
Scris de: advex din Feb 06, 2009, 05:30 PM
John Doe:
Observatiile tale sunt corecte, dar nu intotdeauna este indicat sa faci interventii in fisierele de sistem. Daca nu esti atent, nu ai facut o copie de siguranta sau nu esti "experimentat" risti sa treci la reinstalarea Autocad!

Cei de la Autodesk au prevazut o cale mai simpla si mai sigura de instalare a programelor lisp.
Cand executi "Load Application" ai la dispozitie "Startup Suite" si aici poti alege toate programele pe care Autocad sa le incarce automat la pornire.

(http://topograf.3xforum.ro/img/pics/topograf.3xforum.ro/ok_5853.jpg)
509/582px 55.9KB
Titlu: Re: lisp help
Scris de: John Doe din Feb 06, 2009, 06:33 PM
Da, ai dreptate. La cate tumbe am facut pana acum, macar atat am invatat: inainte de a umbla intr-un fisier, fac o copie de siguranta. Am in AutoCAD un folder (MyBackups) care are mai multe subfoldere cu copiile de siguranta, cu aceeasi denumire ca si originalele, ca sa stiu de unde sunt: Support, Template, etc.
Stiam vag si de "Startup Suite" dar nu folosesc, chestie de stil. Acum ca mi-ai spus, o sa ma uit mai bine ce e si asta. Mersi.
Titlu: Re: lisp help
Scris de: advex din Feb 06, 2009, 06:44 PM
Dupa cum ai mentionat mai sus important este sa adaugi la Tools - Option caile pentru "Support File Search" si "Working Support File Search".
Noile fisiere lisp se pot adauga si in directoarele standard ale Autocad - totusi, la reinstalarea Autocad ai sansa sa ramai fara ele!

(http://topograf.3xforum.ro/img/pics/topograf.3xforum.ro/ok_5855.jpg)
581/461px 54KB
Titlu: Re: lisp help
Scris de: John Doe din Feb 06, 2009, 07:15 PM
Da, asa e. Am patit si bine si nashpa la diverse reinstalari. Cred ca depinde de niste chestii care ma depasesc.
Dupa un timp, am constatat ca e mai bine sa-mi tin aplicatiile proprii intr-un folder separat cu cale de cautare data, si nu printre folderele de AutoCAD.
In orice caz, daca ai muncit la lispurile tale si te-ai chinuit suficient, cam stii ce si cum ai facut. Dar, cum am mai zis, e chestie de stil si fiecare are stilul lui. Nu vreau sa spun ca al meu e cel mai fericit.
Titlu: Re: lisp help
Scris de: alezu din Feb 10, 2010, 03:21 PM
Buna,
Am si eu o mica problema, folosesc autocad si autolisp. mi-am instalat autocad 2010 si im merg toate comenzile mai putin cea de generare a tabelului de coordonate a unei polilinii: TABPOL.
In restul versiunilor de autocad functioneaza in varianta de 2010 imi da eroare. Command: lin
File name to load? : tabpol
STRX
Command:
Command: tabpol
Polylinia:; error: bad list: 0

astept niste sfaturi.
va multumesc

(http://topograf.3xforum.ro/img/pics/topograf.3xforum.ro/ok_11677.jpg)
283/299px 14.6KB
Titlu: Re: lisp help
Scris de: John Doe din Feb 25, 2010, 05:57 PM
Poate stie cineva: de ce nu vrea Lisp-ul sa execute comanda NEW, sau QNEW ? (AutoCAD 2007). Vreo variabila de sistem, ceva, sau lispul functioneaza intr-un singur desen si atat?
Nu am pus bifa la "Single compatibility drawing mode" in optiuni.

@alezu: nu te pot ajuta concret, dar stiu ca TopoLT are mai multe versiuni, care functioneaza pe diverse versiuni de AutoCAD. Uita-te pe site si vezi care pe ce merge.
Titlu: Re: lisp help
Scris de: advex din Feb 25, 2010, 11:26 PM
Citat din: John DoePoate stie cineva: de ce nu vrea Lisp-ul sa execute comanda NEW, sau QNEW ? (AutoCAD 2007). Vreo variabila de sistem, ceva, sau lispul functioneaza intr-un singur desen si atat?
Nu am pus bifa la "Single compatibility drawing mode" in optiuni.

Cand lansezi Autocad-ul, setarile implicite sunt cuprinse in fisierul acaddoc.lsp.
Cred ca este necesar sa redefinesti in programul tau autolisp, calea catre fisierele "template" care se incarca cu NEW sau QNEW.
Titlu: Re: lisp help
Scris de: John Doe din Feb 26, 2010, 10:46 AM
Nu cred ca asta e. Pur si simplu, LISP returneaza nil si atât daca îi scriu la cmdline (command "open" ) , sau new, qnew, indiferent de sintaxa folosita (cu sau fara cale). Si indiferent ce setari îi tot modific la Tools->Options.
Sau poate nu stiu eu cum sa-i definesc calea pentru template. Cum se face asta ?

Ca sa nu incurc lumea: voiam sa fac un DXF pentru un contur de parcela, cat mai automat cu putinta. Am luat in clipboard conturul cu (command "copyclip" "l" "" ) si voiam sa deschid un desen nou unde sa-i spun, din acelasi Lisp (command "pasteorig" ) (command "zoom" "ob" "l" ) si pe urma (command "saveas" "DXF" <cale de salvare dxf> ) .

Ma mai gandeam ca data selectez conturul, cunosc toate coordonatele si sa incerc sa scriu DXF-ul din Lisp dar e cam prea multa bataie de cap.
Ar fi si alte variante ?


In alta ordine de idei: se poate face fisierul CP din Lisp . Fisierul e facut in limbajul XML, care e un fel de HTML. Se poate deschide cu Notepad - e de fapt text cu multe paranteze ascutite.
Titlu: Re: lisp help
Scris de: advex din Feb 26, 2010, 12:06 PM
Citat din: John DoeNu cred ca asta e. Pur si simplu, LISP returneaza nil si atât daca îi scriu la cmdline (command "open" ) , sau new, qnew, indiferent de sintaxa folosita (cu sau fara cale). Si indiferent ce setari îi tot modific la Tools->Options.
Sau poate nu stiu eu cum sa-i definesc calea pentru template. Cum se face asta ?

John, cel mai bine ar fi sa postezi tot fisierul lisp. Greu de dat cu parerea pentru o astfel de eroare.
Ai declarat variabila filedia=0 ?
de ex.
(setvar "filedia" 0)
(command "_.open" "c:\\temp\\xxx.dwg")
(setvar "filedia" 1)
....
Titlu: Re: lisp help
Scris de: John Doe din Feb 26, 2010, 12:43 PM
Da, am incercat. Si cu o gramada de alte variabile de sistem, nici nu mai stiu care. Asta de exemplu merge:

(setq pct (getpoint "\nUn punct in interior:" ) ) ;;;asta e un contur inchis
(command "-boundary" pct "" )
(command "_copyclip" "l" "" )

Merge si:

(command "_pasteorig" )
(command "saveas" "DXF" "16" "D:\\proba" )


Dar daca vreau sa deschid un desen nou, surprize-surprize ca nu face nimic:

(command "_qnew" )

Sau cu "new" , "_new" , cu FILEDIA 0 sau 1. Calea pentru template e definita in Tools->Options->Files->Template settings, la comanda QNEW de la tastatura sau meniu nu ma intreaba nimic indiferent de FILEDIA.
Uneori am reusit sa obtin mesajul de eroare "Can't reenter AutoLisp" ; cum se controleaza daca sa tina minte sau nu ce are de facut in LISP si in desenul urmator ?
Pe de alta parte, daca LISP nu stie efectiv sa functioneze decât intr-un desen, mi se pare normal din partea lui sa nu execute comanda NEW, adica sa se anuleze singur. Adica sa se ...sinucida.
Titlu: Re: lisp help
Scris de: advex din Feb 26, 2010, 05:02 PM
Mai verifica setarea implicita pentru QNEW

Options > Files tab > Template Settings > Default Template File Name for QNEW >...
eventual schimba fisierul *.dwt folosit

Pe alt calculator face la fel?!

Eventual, poti evita comanda qnew cu altceva:

(command "_.vbastmt" "Application.Documents.Add(\"DwtFileName\";)";)


Spor!

Modificat de advex (26-02-2010 15:11:45)
Titlu: Re: lisp help
Scris de: John Doe din Feb 26, 2010, 06:35 PM
Da, asta merge. Mersi mult.
Titlu: Re: lisp help
Scris de: John Doe din Mar 18, 2010, 02:03 PM
La compilare LISP cu Visual Lisp din AutoCAD 2007 (cu optiunea "Expert" fiindca am DCL, LSP si TXT), la un moment dat am optiunea "Separate name space", si putin mai incolo optiunile de compilare "Standard" sau "Optimize and Link". Stie cineva cam ce sunt astea ? Spune el Vlisp-ul ceva in engleza, dar la cunostintele mele nu prea inteleg.
Titlu: Re: lisp help
Scris de: cosin din Iun 10, 2010, 12:22 AM
salut, sunt nou pe forum, am si eu o problema, poate cineva sa ma ajute, lucrez cu civil 3d 2009, nu de foarte mul timp si am proble cu scara, dava import un block, sa zicem scara 1:1000, il importa cu totul la alta scara. astept raspuns merci
Titlu: Re: lisp help
Scris de: John Doe din Iun 10, 2010, 10:45 AM

                  Vezi daca nu ai unitati de masura diferite la desen si la blocul inserat (la unul inci si la altul milimetri, de exemplu). La AutoCAD le gasesti in meniu la Format -> Units... , la Civil 3D nu stiu sigur unde sunt.


               
Titlu: Re: lisp help
Scris de: cosin din Iun 18, 2010, 12:37 PM

                  merci, am reusit pana la urma


               
Titlu: Re: lisp help
Scris de: John Doe din Iul 01, 2010, 02:04 PM

                  Am o carte, se numeste "AutoLISP - manual de programare". Scrisa de un dr. ing. Tiparita de editura "FAST 2000" Bucuresti.
Din cartea asta am invatat eu LISP iar in timp, dupa mult rasfoit, am inceput sa am impresia ca am mai citit undeva cam aceleasi expresii, formulari, etc. Culmea e ca si am dreptate: este aproape exact Help-ul din Visual LISP de sub AutoCAD 2007, tradus in lb. româna (pentru curiosi: nu am licenta de 2007 si nu folosesc, helpul de VLISP este pe Net).

Ce parere aveti ? Se pot face bani din asemenea traduceri ?



               
Titlu: Re: lisp help
Scris de: advex din Iul 01, 2010, 03:09 PM

                  
John Doe a scris:


Ce parere aveti ? Se pot face bani din asemenea traduceri ?


John: avand in vedere costurile ridicate de editare, tiparire, drepturi de autor, taxe etc este putin probabil ca se pot face bani pentru un numar extrem de redus de exemplare vandute. Nu sunt convins ca este o cerere mare pentru astfel de lucrari chiar in conditiile in care aparitiile unor lucrari de specialitate in domeniul programarii autolisp sunt rarisime.
Incearca sa iei legatura cu Mircea Badut, autor de lucrari cu tematica GIS, Autocad - lucreaza in domeniul topo, pe la OJCPI Valcea si poate vei primi informatii mai optimiste.
vezi http://www.geocities.ws/mirceabadut/


_______________________________________
http://info-topograf.blogspot.ro/