_

Wstawianie plików dxf do jednego pliku z uporządkowaniem

Forum poświęcone flagowemu produktowi oraz aplikacjom pochodnym Autodesku. To jedyne forum mające w tytule nazwę programu, a to ze względu na jego olbrzymią popularność w Polsce. Można tutaj umieszczać również posty z ogólnie pojętej tematyki "Kreślarskie 2D".

Wstawianie plików dxf do jednego pliku z uporządkowaniem

Postprzez Wieja » sty 25, 2019 09:52

Witam,
Mam problem z napisaniem lispa do wrzucenia dużej liczby plików dxf do jednego rysunku i posortowanie tego przynajmiej w stałych odległościach jeden nad drugim.
Najlepiej jakby szczytywał wartość gabarytu z pliku i na tej podstawie sortował.
Musi to być pełne wstawienie bloku, więc rozwiązanie krugera z xRefami niestety nie spełnia mojego celu.
Jedyne co znalazłem to lisp do wstawienia wszystkiego w jednym punkcie, ale przy 500 lub więcej bloków staje się to ciężkie do obróbki.
Z drugiej strony skoro już mam lispa który wstawia wszystko w jeden punkt, to wystarczyłby mi drugi lisp, który uporządkuje mi te bloki z punktu do kolumny.
Może ktoś z szanownych forumowiczów byłby w stanie pomóc w problemie?
Z góry dzięki.

To co mam:

defun c:WDXFS (/ directory files)
(setq directory (vl-filename-directory (getfiled "Select any file in subject directory" "" "" 2)))
(if (setq files (vl-directory-files directory "*.dxf" 1))
(foreach dxf files
(command "_.-insert"
(strcat directory "\\" dxf)
'(0. 0. 0.)
""
""
""
)
)
(princ "\n No DXF files found into that folder !")
)
(princ)
)
Załączniki
wdxfs.lsp
(362 Bajtów) Pobrane 16 razy
Wieja
 
Posty: 2
Dołączył(a): sty 24, 2019 13:48

Re: Wstawianie plików dxf do jednego pliku z uporządkowaniem

Postprzez GekOn » sty 25, 2019 11:28

Spróbuj tak (nietestowane):

Wieja napisał(a):
Kod: Zaznacz cały
(defun c:WDXFS (/ directory files dx dy licz)
   (setq directory (vl-filename-directory (getfiled "Select any file in subject directory" "" "" 2)))
   (if (setq files (vl-directory-files directory "*.dxf" 1))
      (progn
         (setq licz 0)
         (setq dX (getreal "\nPodaj odległość X."))
         (setq dY (getreal "\nPodaj odległość Y."))
         (foreach dxf files
            (command "_.-insert"
               (strcat directory "\\" dxf)
               (list (* licz dX) (* licz dY))
               ""
               ""
               ""
            )
            (setq licz (+ licz 1))
         )
      );_progn
      (princ "\n No DXF files found into that folder !")
   )
   (princ)
)

GekOn
www.gekoncad.pl | www.warancad.pl
GekOn
 
Posty: 14
Dołączył(a): sty 26, 2017 21:05

Re: Wstawianie plików dxf do jednego pliku z uporządkowaniem

Postprzez Wieja » sty 25, 2019 12:21

Dzięki wielkie.
Jak dla mnie bajka.
Przetestowałem na 1100 plikach.
Jeszcze raz dzięki
Wieja
 
Posty: 2
Dołączył(a): sty 24, 2019 13:48


Powrót do AutoCAD

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników