CADsite forum

AutoCAD => AutoCAD probleem => Topic gestart door: cadtools@gmail.com op vr 16 12 2005, 11:27:24

Titel: linetype definities
Bericht door: cadtools@gmail.com op vr 16 12 2005, 11:27:24
Wij gaan van lintypes lts=10 over op linetypes lts=10?
Ik zoke een tool waarmee ik lijntype def. kan overschrijven...
Als ik doe dmv een blockmethode waarin ik de linetypes heb gedefinieer krijg ik onderstaande melding

Linetype(s) added. Duplicate definitions will be ignored

.. dit werkt dus niet Idem met Designcenter..
Weet iemand een manier / lisp om lintypes met dezelfde definitie te overschrijven?

************
(defun c:ins_RH-iso_lin ()            ; linetypes lts=10   
      (setvar "cmdecho" 0)
      (command ".insert" "RH-iso_lin.dwg" "0,0" "1" "1" "0")     ; template voor inladen linetypes
      (setq ss (ssget "X" '((2 . "RH_iso_lin"))))      ; del block
      (command "erase" ss "")
      (command "-purge" "b" "RH-iso_lin" "n")      ; houd linetypes over
      (command "-purge" "d" "RH-iso_lin" "n")
      (command "-purge" "st" "RH-iso_lin" "n")
      (setvar "cmdecho" 0))


(defun c:ins_acad_lin ()            ; linetypes lts=1
      (setvar "cmdecho" 0)
      (command ".insert" "acad_lin.dwg" "0,0" "1" "1" "0")     ; template voor inladen linetypes
      (setq ss (ssget "X" '((2 . "acad_lin"))))      ; del block
      (command "erase" ss "")
      (command "-purge" "b" "acad_lin" "n")         ; houd linetypes over
      (command "-purge" "d" "acad_lin" "n")
      (command "-purge" "st" "acad_lin" "n")
      (setvar "cmdecho" 0))
Titel: Re: linetype definities
Bericht door: bart op vr 16 12 2005, 13:14:13
Kan je hier niet met het commando linetype werken vanuit je lisp
Titel: Re: linetype definities
Bericht door: WebRacer op vr 16 12 2005, 22:42:39
Misschien helpt dit u al beetje vooruit:
deze routine heeft u een lijst terug van alle aanwezige linetypes in uw tekening,
en als je er eentje kiest verwijderd hij die ook... van hieraf misschien verder bouwen....?

   (vl-load-com)
   (setq acadobject (vlax-get-Acad-Object))
   (setq activedocument (vla-get-activedocument acadobject))
   (setq LinetypeTable (vla-get-Linetypes activedocument))
   (vlax-for each LinetypeTable
      (setq thelist (cons (vla-get-Name each) thelist)))
   (if thelist (reverse thelist))
   (prompt "\nVolgende lijntypes werden gevonden: \n")(princ thelist)(princ)
   (setq dellnt (getstring "\nWelke wil je verwijderen?"))
   (vlax-for dellnt (vla-get-linetypes activedocument)
    (vl-catch-all-apply 'vla-delete (list dellnt))
  )
Titel: Re: linetype definities
Bericht door: cadtools@gmail.com op zo 18 12 2005, 00:03:02
Bedankt,
Hier kan ik wel wat mee...
Je kunt inderdaad met commando-benadering maar dit gaat sosm wel lastig omdat ie elke keer vraagt (per linetype)... overwrite (y/n) .. er is geen optie overwrite all zoals je dat in je dialoogje wel krijgt.
Dit is dus latig te omzeilen
Misschien lukt het met jouw code ... beter ...

Titel: Re: linetype definities
Bericht door: bart op ma 19 12 2005, 11:27:18
dat is op te lossen door de systeem variabel  EXPERT tydelijk anders in te stellen

voor alle lijntype's gebruik je een wildcard *
Titel: Re: linetype definities
Bericht door: cadtools@gmail.com op ma 02 01 2006, 08:46:51
bedankt voor deze mooie tip..