CADsite forum

AutoCAD => AutoCAD probleem => Topic gestart door: gery op zo 15 11 2015, 19:23:20

Titel: linetype vervangen door een ander
Bericht door: gery op zo 15 11 2015, 19:23:20
Ik heb meerdere (enkele 100en) tekeningen van leveranciers waarin een aantal exotische lijntypes zijn gebruikt waarvan ik het bronbestand (.lin) niet heb en die in een andere schaal dan onze gebruikelijke lijntypes zijn gedefinieerd. Deze diverse lijntypes zijn in veel blocks gebruikt, maar op slechts een paar layers, zodat linetype by layer geen optie is. Liefst vervang ik die exotische lijntypes door standaard lijntypes ipv ze aan te passen naar de juiste schaal.
Wat ik dus betracht is om lijntype x (ook in blocks) te vervangen door lijntype y.
Heeft iemand een oplossing of kan iemand me op de goede weg naar een oplossing zetten?
Script? LISP? VBA? ...

Hopelijk is mijn vraag een beetje duidelijk zo.

Ik gebruik AutoCAD 2012.
Titel: Re: linetype vervangen door een ander
Bericht door: delangstevandestraat op ma 16 11 2015, 12:16:17
je kan dat zo ingewikkeld oplossen als je wilt,
maar waarschijnlijk kan dit ook lukken met quick select
Titel: Re: linetype vervangen door een ander
Bericht door: AdenRob op ma 16 11 2015, 13:49:13
Misschien is het commando "STANDARDS" een optie?

Hiermee kun je lijntypes vervangen door een ander lijntype. Dit werkt ook in blocks.
Je moet wel even een .dws file aanmaken met wat lijntypes erin welke je wil gebruiken (lijntype Y).

Waarschijnlijk kun je dit commando ook verwerken in een lisp/macro...

Hopelijk kun je hier wat mee
Titel: Re: linetype vervangen door een ander
Bericht door: gery op ma 16 11 2015, 13:52:25
Citaat van: delangstevandestraat op ma 16 11 2015, 12:16:17
maar waarschijnlijk kan dit ook lukken met quick select
Merci voor je reactie.

qselect in blocks? Hoe doe je dat?

Zou wel handig en vooral eenvoudig zijn mocht dit ook in blocks werken.
Titel: Re: linetype vervangen door een ander
Bericht door: gery op ma 16 11 2015, 13:53:21
Citaat van: AdenRob op ma 16 11 2015, 13:49:13
Misschien is het commando "STANDARDS" een optie?
Merci voor je reactie.

Zal dit eens grondig bestuderen, want dit ken ik (nog) niet.
Titel: Re: linetype vervangen door een ander
Bericht door: gery op do 19 11 2015, 09:50:14
Citaat van: AdenRob op ma 16 11 2015, 13:49:13
Misschien is het commando "STANDARDS" een optie?
Dit is een handige functie, maar voor dit specifieke geval niet de meest ideale oplossing die ik zoek.
Titel: Re: linetype vervangen door een ander
Bericht door: gery op do 19 11 2015, 11:25:33
heb het zo opgelost:

(vl-load-com)
(command "_undo" "begin")
  (vlax-for b (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object)))
      (if (and
              (= :vlax-false (vla-get-islayout b))
              (= :vlax-false (vla-get-isxref b))
          )
          (vlax-for o b
              (if (and
                      (wcmatch (setq n (vla-get-linetype o)) "oldLT")
                      (setq n "hidden")
                      (tblsearch "LTYPE" n)
                  )
                  (vl-catch-all-apply 'vla-put-linetype (list o n))
              )
          )
      )
  )
(command "regenall")
(command "_undo" "end")
(princ)


Bron: http://www.cadtutor.net/forum/showthread.php?76193-Replace-LINETYPE-with-another-one-in-dwg-and-all-blocks-inside (http://www.cadtutor.net/forum/showthread.php?76193-Replace-LINETYPE-with-another-one-in-dwg-and-all-blocks-inside)