_

Usuwanie/tworzenie arkuszy/rzutni z wiersza poleceń

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".

Usuwanie/tworzenie arkuszy/rzutni z wiersza poleceń

Postprzez 88marcin » cze 07, 2017 15:16

Witam,

mam pytanie jak usunąć arkusze z pliku taka żeby został 1 - z wiersza poleceń.

Dodatkowo pytanie - jak utworzyć arkusz z wiersza poleceń?

Ew. jak z wiersza poleceń usunąć wszystkie obiekty.
88marcin
 
Posty: 51
Dołączył(a): mar 22, 2016 12:08

Re: Usuwanie/tworzenie arkuszy/rzutni z wiersza poleceń

Postprzez ziele_o2k » cze 07, 2017 16:09

88marcin napisał(a):Witam,

mam pytanie jak usunąć arkusze z pliku taka żeby został 1 - z wiersza poleceń.

Jeden wybrany, czy usunąć wszystkie, a jeden domyślny i tak zawsze się utworzy z automatu.
88marcin napisał(a):Dodatkowo pytanie - jak utworzyć arkusz z wiersza poleceń?


Poczytaj o poleceniu Arkusz (_layout)

88marcin napisał(a):Ew. jak z wiersza poleceń usunąć wszystkie obiekty.

Stworzyć nowy rysunek ;), a na poważnie to nie ma takiego polecenia; po co coś takiego robić?!
Ziele
Avatar użytkownika
ziele_o2k
 
Posty: 492
Dołączył(a): mar 18, 2014 11:33
Lokalizacja: Poznań

Re: Usuwanie/tworzenie arkuszy/rzutni z wiersza poleceń

Postprzez 88marcin » cze 08, 2017 09:38

Chodzi mi o to, że dostaję projekty architektoniczne i chciałbym maksymalnie oczyścić plik żeby zostały elementy w samym tylko modelu.
88marcin
 
Posty: 51
Dołączył(a): mar 22, 2016 12:08

Re: Usuwanie/tworzenie arkuszy/rzutni z wiersza poleceń

Postprzez ziele_o2k » cze 08, 2017 09:51

88marcin napisał(a):Chodzi mi o to, że dostaję projekty architektoniczne i chciałbym maksymalnie oczyścić plik żeby zostały elementy w samym tylko modelu.

Lisp do usunięcia wszystkich arkuszy.
Kod: Zaznacz cały
(defun C:test1 ()
  (vl-load-com)
  (vlax-for
    layout
    (vla-get-layouts
      (vla-get-ActiveDocument (vlax-get-acad-object))
    )
    (if (/= (vla-get-name layout) "Model")
      (vla-delete layout)
    )
  )
  (princ)
)
Ziele
Avatar użytkownika
ziele_o2k
 
Posty: 492
Dołączył(a): mar 18, 2014 11:33
Lokalizacja: Poznań

Re: Usuwanie/tworzenie arkuszy/rzutni z wiersza poleceń

Postprzez kojacek » cze 08, 2017 10:27

ziele_o2k napisał(a):
88marcin napisał(a):Chodzi mi o to, że dostaję projekty architektoniczne i chciałbym maksymalnie oczyścić plik żeby zostały elementy w samym tylko modelu.

Lisp do usunięcia wszystkich arkuszy.
Kod: Zaznacz cały
(defun C:test1 ()
  (vl-load-com)
  (vlax-for
    layout
    (vla-get-layouts
      (vla-get-ActiveDocument (vlax-get-acad-object))
    )
    (if (/= (vla-get-name layout) "Model")
      (vla-delete layout)
    )
  )
  (princ)
)



lub całkiem krótko (z Packiem):
Kod: Zaznacz cały
(mapcar
  '(lambda (%)
     (vla-delete
       (vla-item (cd:ACX_Layouts) %)
     )
  )
  (layoutlist)
)


a bez Packa:

Kod: Zaznacz cały
(mapcar
  '(lambda (%)
     (vla-delete
       (vla-item
         (vla-get-layouts
           (vla-get-ActiveDocument (vlax-get-acad-object))
         ) %
       )
     )
  )
  (layoutlist)
)
Avatar użytkownika
kojacek
 
Posty: 5249
Dołączył(a): paź 03, 2005 20:17

Re: Usuwanie/tworzenie arkuszy/rzutni z wiersza poleceń

Postprzez 88marcin » cze 08, 2017 11:29

Dzięki ;]- działa - o to chodziło.

Została 1 rzutnia, ew. czy da się usunąć ostatnią rzutnię by była bez elementów i miała nazwę dajmy na to "0"?

Jeszcze pytanie: Dlaczego nie da się wycofać tego polecenia (CTRL+Z) usunięciem rzutni?
88marcin
 
Posty: 51
Dołączył(a): mar 22, 2016 12:08

Re: Usuwanie/tworzenie arkuszy/rzutni z wiersza poleceń

Postprzez ziele_o2k » cze 08, 2017 11:36

ten mapcar i mapcar, ja tam wolę foreach :)
Bez tych lambd jakoś ładniej
Kod: Zaznacz cały
(foreach % (layoutlist)
  (vla-delete
    (vla-item (cd:ACX_Layouts) %)
  )
)
Ziele
Avatar użytkownika
ziele_o2k
 
Posty: 492
Dołączył(a): mar 18, 2014 11:33
Lokalizacja: Poznań

Re: Usuwanie/tworzenie arkuszy/rzutni z wiersza poleceń

Postprzez ziele_o2k » cze 08, 2017 11:44

88marcin napisał(a):Została 1 rzutnia, ew. czy da się usunąć ostatnią rzutnię by była bez elementów i miała nazwę dajmy na to "0"?

da się, ale trza by trochę kodu dopisać.
88marcin napisał(a):Jeszcze pytanie: Dlaczego nie da się wycofać tego polecenia (CTRL+Z) usunięciem rzutni?

Teraz się da (cadpack ma być wczytany)
Kod: Zaznacz cały
(defun C:test1 ()
  (cd:SYS_UndoBegin)
  (foreach % (layoutlist)
    (vla-delete
      (vla-item (cd:ACX_Layouts) %)
    )
  )
  (cd:SYS_UndoEnd)
  (princ)
)
Ziele
Avatar użytkownika
ziele_o2k
 
Posty: 492
Dołączył(a): mar 18, 2014 11:33
Lokalizacja: Poznań


Powrót do AutoCAD

Kto przegląda forum

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