CADsite forum

AutoCAD => AutoCAD probleem => Topic gestart door: sluys1978 op wo 18 04 2012, 16:10:22

Titel: blocks plaatsen op points
Bericht door: sluys1978 op wo 18 04 2012, 16:10:22
Ik heb een vraag over het plaatsen van blocks op points.
Ik heb vanuit een andere programma Xeiz een dwg gekregen met allemaal points.
Deze points moeten bomen voorstellen. Is het mogelijk om een block van een boom in een keer op al deze points te plaatsen?
Titel: Re: blocks plaatsen op points
Bericht door: HofCAD op wo 18 04 2012, 17:15:54
Beste Sluys1978,

Met AutoLisp kun je het volgende programma o.a. maken:
(defun c:rPo2Blk (/ BlkName Scale Pnt_Set i)
  (setq BlkName "MijnBlok"
Scale 1
  )
  (if (tblobjname "block" BlkName)
    (progn
      (if (setq Pnt_Set (ssget '((0 . "POINT"))))
(progn
  (setq i 0)
  (repeat (sslength Pnt_Set)
    (command "_.INSERT"
     BlkName
     "_S"
     Scale
     (cdr (assoc 10 (entget (ssname Pnt_Set i))))
     "0"
    )
    (setq i (1+ i))
  )
  (command "_.ERASE" Pnt_Set "")
)
      )
    )
    (princ
      (strcat "\nWarning: No block definition for the name: "
      BlkName
      "."
      )
    )
  )
  (princ)
)
(princ "\nrPo2Blk.lsp loaded. Type RPO2BLK to run.")
(princ)

Na het laden van dit programma typ je RPO2BLK in
en daarna kun je bijv. alle Points selecteren door ALL
in te typen.
Daarna worden alle Points vervangen door Block references
van het block met de naam MijnBlok.
Als de naam van het block ipv MijnBlok bijv. MijnBoom is,
dan moet je
  (setq BlkName "MijnBlok"
Scale 1
  )

veranderen in
  (setq BlkName "MijnBoom"
Scale 1
  )


Met vriendelijke groet, HofCAD CSI.
Titel: Re: blocks plaatsen op points
Bericht door: Jon Tampon op ma 07 05 2012, 11:22:56
Heb op een site dit eens tegengekomen..
http://autocadtips.wordpress.com/2012/03/27/autolisp-replace-selected-points-with-block/