Scripturi in LISP AutoLISP

Creat de Admin, Iun 19, 2006, 12:16 AM

« precedentul - următorul »

John Doe


                  Ti-am trimis mail.


               

kod


                  sunt si eu interesat de scripturile astea LISP, dar nu ai putea sa le uploadezi pe un site, sa le ia de acolo toti cei care sunt interesati ?!

O zi faina !



               

John Doe


                  @kod: Ba da, dar e ceva mai complicat fiindca ar trebui sa le compilez intr-un singur fisier, care nu se mai poate modifica dupa cum are chef utilizatorul, iar unul dintre scopurile mele era tocmai sa faca cine ce vrea cu ele. Stiu cum era cand invatam eu Lisp, si cat mi-ar fi folosit asa ceva. Iar cine e chiar interesat se uita si aici. Daca vor fi prea multi, probabil asa am sa fac; deocamdata nici nu mai stiu o adresa unde se pot uploada ca mi s-a busit address book-ul.
Ti le trimit si tie. Spor !



               

kod


                  Multumesc, mult ! Nu din rautate am intrebat daca le poti pune pe toate intr-un folder si sa-l uploadezi pe vre-un site gen:
http://www.megaupload.com" target="_blank">www.megaupload.com
http://www.mediafire.com" target="_blank">www.mediafire.com
http://www.netdrive.ws" target="_blank">www.netdrive.ws ...mai sunt si altele da nu-mi vin in minte acum.

Ci ideea era ca daca tot sunt mai multi interesati sa nu te deranjeze de fiecare data cu aceeasi rugaminte: "Poti sa mi le trimiti si mie ? http://www.3xforum.ro/img/smilies/hi.png"> "

Toate cele bune !



               

John Doe


                  @kod: Mi-am dat seama de ce ai zis sa le uploadez, nu-ti fa probleme. Mersi pentru linkuri.

Si inca ceva: se poate scrie fisierul CP direct din AutoCAD. Deschideti un fisier CP cu Notepad si o sa vedeti ca are o structura relativ simpla. Eu am reusit sa-l fac, dar mai e de lucru.



               

kod


                  Da asa este practic un cod sursa .xml scris sub forma de tag-uri, se poate deschide/edita cu excel si/sau notepad. Desi nu stiu cine se apuca sa completeze linie cu linie decat sa completeze un tabel. Poate daca s-ar face un lisp in care sa-ti completezi informatiile in mod succesiv, eventual sa se automatizeze tot ce s-ar putea (gen suprafata, generare fisier dxf, salvare sub ext. cpxml...etc. ) stiu eu ce s-ar mai putea face, probabil multe altele, eu nu ma prea pricep la Lisp, cum am spus !

Numai bine !

Modificat de kod (09-03-2010 10:21:17)



               

diagodose2009


                  Se Sterge

Modificat de diagodose2009 (05-05-2010 05:28:03)


_______________________________________
http://we.tl/D8HOKFyTJ7" target="_blank">http://we.tl/D8HOKFyTJ7


               

Marian


                  Am fost unul din cei care au cistigat licitatia aia cu PLANURILE CADASTRALE. Am avut de facut citeva mii de CP-uri. Am folosit o aplicatie care le genera automat. Le-am predat la OCPI care le-a integrat in E-Terra 2 si nu am avut nici o problema de preluare.


               

John Doe


                  @diagodose: nu te contrazic, poate sa fie si cum spui tu. Am verificat ce am facut eu prin toate metodele care mi-au dat prin cap, am corectat tot ce dadea  eroare si acum astept sa vad ce spune si programul de la OCPI. Personal, nu as crede ca pentru fisierul CP ai nevoie de nu stiu ce hipergenerator XML dar pana la proba contrarie ma abtin.

@marian: felicitari.



               

scootergts


                  va salut !
Un program/addon/lisp pentru autocad care sa-mi insereze usi/geamuri la relevee de genul descris in imagine stie cineva? ii multumesc anticipat

p.s. folosesc Autocad 2009


580/389px  23.2KB


_______________________________________
It's nice to be important, but is more important to be nice !


               

goguletz


                  Cred ca mai usor ti-ar fi sa creezi blocuri (block) pentru usi, ferestre, etc. Dupa care le poti copia dintr-o plansa in alta.

Multa bafta!


_______________________________________
http://www.topo-online.ro" target="_blank">www.topo-online.ro
http://www.firmecadastru.ro" target="_blank">www.firmecadastru.ro


               

kod


                  Am nevoie de urmatorul lucru cand inserez un patrulater in ACad.
comanda: "rectangle"
datele problemei: am 2 coordonate (Y colt stanga jos si X colt dreapta sus)
specific celelalte coordonate se vor determina automat prin intersectii de linii, orizontale si verticaleale.
intrebare: cum fac sa-mi deseneze chenarul (patrulaterul) ?
eu sa introduc doar cele 2 coordonate (atentie nu perechi de coordonate, doar Y colt stanga jos si X colt dreapta sus)
Vre-un lisp ceva, stiu sigur ca se poate.

Si alta intrebare, dupa ce am georeferentiat un raster cum il pot salva din AutoCAD ca si imagine *TIFF + word file (contine coordonatele in stereo `70) sau alt format *.JPG, *BMP , dar neaparat sa-mi salveze automat si fisierul *.TFW ce contine coordonatele !



               

advex


                  
kod a scris:

Am nevoie de urmatorul lucru cand inserez un patrulater in ACad.
comanda: "rectangle"
datele problemei: am 2 coordonate (Y colt stanga jos si X colt dreapta sus)
specific celelalte coordonate se vor determina automat prin intersectii de linii, orizontale si verticaleale.
intrebare: cum fac sa-mi deseneze chenarul (patrulaterul) ?
eu sa introduc doar cele 2 coordonate (atentie nu perechi de coordonate, doar Y colt stanga jos si X colt dreapta sus)
Vre-un lisp ceva, stiu sigur ca se poate.

Si alta intrebare, dupa ce am georeferentiat un raster cum il pot salva din AutoCAD ca si imagine *TIFF + word file (contine coordonatele in stereo `70) sau alt format *.JPG, *BMP , dar neaparat sa-mi salveze automat si fisierul *.TFW ce contine coordonatele !


1. Nu cred ca este suficient sa introduci doar aceste valori pentru a genera patrulaterul dorit de tine.
De exemplu:
http://www.imagehost.ro/pict/162007474b9fc8f3344c6.gif" alt="" border="0" align="top">


2. Poti utiliza un program gratuit pentru generare fisier tfw, jpw (a mai fost semnalat pe forum)
Raster Manager: http://www.abcautocad.it/software_autocad.html#RasterManager_AutoCAD" target="_blank">http://www.abcautocad.it/software_autoc ... er_AutoCAD


_______________________________________
http://info-topograf.blogspot.ro/" target="_blank">http://info-topograf.blogspot.ro/


               

kod


                  mda, sa raspund:

1. advex uite cum arata un "coord. file" ce contine coordonatele (asa cum am spus anterior Y colt stanga jos, X colt dreapta sus)

format *.twf

0.500000000000000
0.000000000000000
0.000000000000000
-0.500000000000000
417080.250000000000000
553241.250000000000000

se poate si fara atatea zecimale, dar asta e:
linia 1 si 4 reprezinta precizia unui pixel exprimata in m (0,5 m) iar ultimele 2 linii : linia 5, respectiv 6 cele 2 coord.  Y colt stanga jos, X colt dreapta sus
liniile 2 si 3 nu stiu exact ce sunt, dar oricum sunt 0 "zero" tot timpul.
Presupun ca lungimile laturilor vor fi date de aceasta scara (0,5 m/pixel in cazul de fata) si asa se face georeferentierea http://www.3xforum.ro/img/smilies/hi.png">

2. mi-am dat seama ca merge si daca schimb extensia "word file-urilor" ce contin coordonate: si anume: *.twf pt. *TIFF-uri cu *.jgw pt. *.JPG-uri http://www.3xforum.ro/img/smilies/big_smile.png"> desi la unele extensi gen *.ers trebuiesc extrase, dar nu e complicat  http://www.3xforum.ro/img/smilies/hi.png">



               

advex


                  kod:
Fata de enuntul initial, acum sunt altele datele problemei. Este o diferenta intre a genera un patrulater stiind x, y la colturi si fisierele world file.

Explicatia ta privind caracteristicile fisierului este incompleta. Vezi articol: http://en.wikipedia.org/wiki/World_file" target="_blank">http://en.wikipedia.org/wiki/World_file
Pentru a genera patrulaterul dorit de tine, coordonatele x,y ale colturilor sunt extrase din fisierul world dar si din foto (transformare afina).

Pentru georeferentiere planuri topo, ortofotoplanuri la care aveti si fisierele world asociate va recomand un fisier autolisp. El este disponibil pe http://www.theswamp.org/index.php?topic=8904.0" target="_blank">http://www.theswamp.org/index.php?topic=8904.0 - autor ronjonp.



;;;Reads world tiff file (.tfw) to scale and place image correctly in autocad.
;;;First insert all tiff images into drawing at whatever scale and insertion point.
;;;If the TFW exists in same directory and is named the same as the image selected,
;;;it will automatically be found and the image will be scaled and placed. If it is
;;;not in the same directory the browser. Currently the routine does not
;;;support image rotation and disregards lines 2 and 3 of the TFW file.

(defun c:tfw (/          file_select     line1   line2   line3   line4
          line5   line6   ent     obj     hgt     wdth    bbox
          tfwlist name    llc     urc     ulc     pt
         )
  (vl-load-com)

;MP'S ROUTINE________________________________
  (defun FileToList (filename / handle result)
    (cond
      ((and
    (eq 'str (type filename))
    (setq handle (open filename "r"))
       )
       (while (setq stream (read-line handle))
    (setq result
        (cons (vl-string-trim
            " "
            stream
              )
              result
        )
    )
       )
       (close handle)
       (reverse result)
      )
    )
  )
 ;____________________________________________

  (defun getboundingbox    (obj / minpt maxpt llc urc)
    (vla-getboundingbox obj 'minpt 'maxpt)
    (mapcar 'vlax-safearray->list (list minpt maxpt))
    (setq llc (vlax-safearray->list minpt)
      urc (vlax-safearray->list maxpt)
    )
    (list llc urc)
  )
  (while
    (= ent nil)
     (setq ent (car (entsel "\n Select Image: ")))
     (if (= ent nil)
       (alert "\n You lush, you missed your pick...")
     )
  )
  (setq    obj  (vlax-ename->vla-object ent)
    name (vla-get-name Obj)
    hgt  (vla-get-height Obj)
    wdth (vla-get-width Obj)
  )
  (if (findfile (strcat (getvar 'dwgprefix) name ".tfw"))
    (setq file_select (strcat (getvar 'dwgprefix) name ".tfw"))
    (progn
      (setq file_select
         (getfiled (strcat "Select TFW File to read for image " name)
               (strcat (getvar 'dwgprefix) name)
               "tfw"
               8
         )
      )
      (if (findfile (strcat (getvar 'dwgprefix) file_select))
    (setq file_select (strcat (getvar 'dwgprefix) file_select))
      )
    )
  )
  (setq    tfwlist    (FileToList file_select)
    line1    (nth 0 tfwlist)
    line2    (nth 1 tfwlist)
    line3    (nth 2 tfwlist)
    line4    (nth 3 tfwlist)
    line5    (nth 4 tfwlist)
    line6    (nth 5 tfwlist)
  )
  (vla-put-imageheight obj (* hgt (atof line1)))
  (vla-put-imagewidth obj (* wdth (atof line1)))
  (setq
    bbox (getboundingbox obj)
    llc    (car bbox)
    urc    (cadr bbox)
    ulc    (list (car llc) (cadr urc))
  )
  (setq pt (list (atof line5) (atof line6)))
  (vla-move obj (vlax-3d-point ulc) (vlax-3d-point pt))
  (alert (strcat "DATA USED FROM FILE: " file_select "\n"
        "\n"         line1    "\n"         line2
        "\n"         line3    "\n"         line4
        "\n"         line5    "\n"         line6
        )
  )
)

Modificat de advex (17-03-2010 07:13:37)


_______________________________________
http://info-topograf.blogspot.ro/" target="_blank">http://info-topograf.blogspot.ro/