Un pic de ajutor

Creat de viogrecu29, Dec 10, 2012, 01:54 PM

« precedentul - următorul »

viogrecu29

Am un lisp adaptat de mine (eu nu stiu lisp, incerc sa invat) la necesitatile mele si care are cateva defecte pe care as dori daca se poate sa ma ajutati sa le indrept.
Despre ce e vorba:
  - se da o sectiune de drum a carei existent este formata din mai multe linii cap la cap (am atasat un .dwg)
  - se da comanda ii si lispul uneste liniile intr-o polylinie, copiaza aceasta polylinie la 45cm, face o extindere si o trimuire si iarasi o copie la 15 cm (am explicat si in lisp asta;
  - problema este ca daca sunt cu un zoom mai mare (mai departat de sectiune) nu imi copiaza liniile la distantele din lisp, imi pune una peste alta, si nu stiu care este cauza. Presupun ca este o variabila de sistem ceva care este raspunzatoare de asta. Aceasta problema am mai avut-o si in cadrul altor lispuri in care a trebuit sa afisez niste texte calculate din masutatori de linii etc. din autocad. Daca sunt aproape e OK daca ma departez de sectiune imi lipeste textul de legenda.
  - ar mai fi problema cu trimuirea care as vrea sa arate ca in sectiunea din Layot-ul urmator celui care apare la deschiderea desenului, dar presupun ca cer prea mult.
Multumesc celor care se vor deranja sa-mi raspunda si va doresc tuturor o zi buna!

http://www.fileshare.ro/e29070141" target="_blank">http://www.fileshare.ro/e29070141
http://www.fileshare.ro/e29070073" target="_blank">http://www.fileshare.ro/e29070073

John Doe

Bun venit pe forum !

S-ar putea sa ai probleme cu variabila OSNAP, dezactiveaz-o ca te leaga de ce gaseste prea aproape.
Sau e posibil ca unele comenzi AutoCAD pur si simplu sa functioneze diferit la zoom diferit. Dai un zoom pe obiect sau cumva cât de cât pe zona unde actioneaza comenzile, si dupa aia offset si trim.

Chiar acum efectiv nu am timp sa ma uit la ce ai facut tu, dar maine e o alta zi si mai vedem. Spor !

viogrecu29

Multumesc de urare!
Nu e problema, sa realizez ce am de facut cu comenzile Autocad. Asta stiu ce sa fac. Am si facut asta in ultimul LAYOUT sa vedeti ce vreau sa obtin din sectiunea care apare cand se deschide DWG-ul.
Problema este ca eu am de facut acelasi lucru la peste 1500 de astfel de sectiuni si vroiam sa-mi fac un lisp care sa faca acesti pasi automat:
     - cauta liniine din layerul care am vrut eu si le face polylinie (fara sa mai stau eu sa le selectez)
     - polylinia care s-a creat este copiata la 15 si 45 cm de cea creata (in jos)
     - se face o extindere;
     - si as mai avea nevoie de doua trimuiri (care nu stiu cum sa le fac (momentan le fac clasic cu comenzile Autocadului)
Deci toate astea se fac cu o simpla comanda automat (ii) eu nu trebuie sa fac, sau sa selectez nimic.
Am automatizat niste comenzi care eu trebuie sa le fac de fiecare data cand trec la o noua sectiune (eu dupa aceea am de facut mult mai multe, dar macar pasii acestia care sunt identici am incercat sa-i automatizez cu un lisp).

Revin la problema:
     - lispul merge, este OK, atat timp cat execut comanda (ii) cand sunt aproape de sectiune.
     - daca sunt la distanta mai mare (zoom mai indepartat) imi copiaza cele doua polylinii una peste alta si nu stiu de ce.
     - deasemenea nu stiu cum sa rezolv problema cu trimuirea polyliniilor.
Merci, oricum pt. raspuns.
O zi buna!

John Doe

#3
Uite cum fac eu cu zoomul:

(command "zoom" "c" (list xb yb) 1000)

xb, yb = coordonatele unui punct, cam in mijloc la zona pe care vreau zoom.
1000 = factorul "magnification" din AutoCAD; daca e mai mic, zoomul e mai de detaliu


Si cu OSNAP:

(setq osn_old (getvar "osmode"))
(command "osmode" 0)

adica dezactivez osnapul dar memorez pe ce a fost setat de user, apoi inainte de final dau iar "osmode" si setez pe "osn_old" - asa mi-a dat mie prin cap sa numesc variabila asta.

viogrecu29

x

Modificat de viogrecu29 (11-03-2013 13:53:37)

viogrecu29

Merci John Doe pt. raspunsuri, dar nu am mai intrat si nu am avut timp sa le incerc.
Multumesc celor care s-au grabit sa-mi rezolve problema pe bani, dar nu e cazul. Nu e firma mea, asa ca daca domnii sefi vor lucruri mai rapide sa plateasca, eu oricum asta fac extra a ceea ce sunt angajat.
Eu vreau sa mai invat cate ceva, gratis  :D .
Acum am mai lucrat un pic la lisp ca sa zic asa. Pe mine ma multumeste, asta nu inseamna ca nu e loc de mai bine.
Daca e cineva interesat am atasat lispul care merge pe sectiunea anterioara.
Am pus niste zoom-uri si niste pauze la trimuiri cat sa le fac eu (un semiautomatism).
Deci trimuirea nu e in totalitate rezolvata, iar treaba cu zoom-ul mi se pare aiurea, dar merge. E o porcarie din partea autocadului daca eu spun sa puna linia la 4.5, el sa o puna tot la 2 daca nu dau zoomurile alea, dar asta e...probabil sunt eu mai ingramadit.
O zi buna!
http://www.fileshare.ro/e29333661" target="_blank">http://www.fileshare.ro/e29333661

Modificat de viogrecu29 (06-03-2013 16:54:58)