_

Kolor wydruku w bloku - jak warstwa

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

Kolor wydruku w bloku - jak warstwa

Postprzez notdot » gru 22, 2020 20:44

Czy istnieje jakiś lisp który analogicznie do RedefineBlockProperties.lsp od @kojacka zmieni mi w blokach wartość StylWydruku tak żeby było ustawione JakWarstwa a nie np czarny_cienki
niestety dostałem podkłady na których jest ogromna ilość bloków i wszystkie mają ustawiony sty wydruku na czarny_cienki
resetowanie bloku narzędziem od @kojacek nie pomaga
a myślałem, że nazwane style wydruku pomogą
Avatar użytkownika
notdot
 
Posty: 349
Dołączył(a): sty 08, 2013 13:50
Lokalizacja: Kraków

Re: Kolor wydruku w bloku - jak warstwa

Postprzez kojacek » gru 24, 2020 17:51

notdot napisał(a):Czy istnieje jakiś lisp który analogicznie do RedefineBlockProperties.lsp od @kojacka zmieni mi w blokach wartość StylWydruku tak żeby było ustawione JakWarstwa a nie np czarny_cienki
niestety dostałem podkłady na których jest ogromna ilość bloków i wszystkie mają ustawiony sty wydruku na czarny_cienki
resetowanie bloku narzędziem od @kojacek nie pomaga
a myślałem, że nazwane style wydruku pomogą


Z Pack'iem (rzecz jasna)

Kod: Zaznacz cały
; --------------------------------------------------------------------
; BL-REDEF-PLSTYLE by kojacek (12-2020)                              ;
; --------------------------------------------------------------------
(defun C:BL-REDEF-PLSTYLE (/ s b o n l p r u)
  (if
    (and
      (setq s (car (entsel "\nWybierz blok do redefinicji:")))
      (= (cdr (assoc 0 (entget s))) "INSERT")
    )
    (if
      (= :vlax-false
        (vla-get-isXref
          (vla-item
            (cd:ACX_Blocks)
            (setq n
              (vla-get-EffectiveName (vlax-ename->vla-object s))
            )
          )
        )
      )
      (progn
        (setq l (cd:BLK_GetEntity n nil)
              p (vl-sort
                  (cons "ByBlock"
                    (cd:DCT_GetDictList
                      (cd:DCT_GetDict
                        (namedobjdict) "ACAD_PLOTSTYLENAME")
                      nil)) '<
                )
        )
        (if
          (setq r
            (cd:DCL_StdListDialog p 0
              "Zmiana stylu wydruku" "Wybierz styl:"
              40 15 2 13 (list "&OK" "&Anuluj")
              nil nil nil nil
            )
          )
          (progn
            (setq u (nth r p))
            (cd:SYS_UndoBegin)
            (foreach % l
              (vla-put-PlotStyleName (vlax-ename->vla-object %) u)
            )
            (princ
              (strcat
                "\nZmieniono " (itoa (length l))
                " obiektów w bloku: '" n "'")
            )
            (cd:SYS_UndoEnd)
          )
          (princ "\nAnulowano. ")
        )
      )
      (princ "\nBlok nie moze byc XRef-em. ")
    )
    (princ "\nNie wskazano bloku. ")
  )
  (princ)
)
Avatar użytkownika
kojacek
 
Posty: 5550
Dołączył(a): paź 03, 2005 20:17

Re: Kolor wydruku w bloku - jak warstwa

Postprzez notdot » gru 25, 2020 12:43

Dzięki mistrzu, jak mogę ci się odwdzięczyć, jakąś butelkę dobrego alko, pisz gdzie wysłać i co lubisz pić najbardziej? :D

Jedyny problem jest z wyborem, jeśli można prosić to o łatwiejszy wybór bloków, bo teraz muszę klikać w każdy
a na rysunku mam tych bloków kilkadziesiąt (architekt przy eksporcie ze swoich programów ma ustawione, że każdy blok to inna nazwa - drań jeden), więc wskazywanie pojedynczo bloków to ciężka sprawa,
nie działa zaznaczanie prostokątem ani przez zaznacz wszystko
więc może kwestia najpierw zaznacz potem polecenie, albo najpierw polecenie a potem wskaż wszystkie bloki?
Avatar użytkownika
notdot
 
Posty: 349
Dołączył(a): sty 08, 2013 13:50
Lokalizacja: Kraków


Powrót do AutoCAD

Kto przegląda forum

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