¸®½À °Á - Activex ÇÔ¼ö¸¦ ÀÌ¿ëÇÑ ÇÞÄ¡ÀÇ °í¸³¿µ¿ª ŽÁöÀ¯Çü Àû¿ë ¹× ÀÌÇØ.
| º» °Á´ ¾ÆÅ°¿ÀÇǽº(±èÈñÅÂ)¿¡ ÀÇÇØ ¸¸µé¾î Á³À¸¸ç ¾î¶°ÇÑ À¥»ó¿¡ ¾ÆÅ°¿ÀÇǽº(±èÈñÅÂ)ÀÇ µ¿ÀǾøÀÌ ¿Ã¸®´Â °ÍÀ» Çã¶ôÇÏÁö ¾Ê½À´Ï´Ù. |
°í¸³¿µ¿ª ŽÁö À¯Çü¿¡ µû¶ó ÇÞÄ¡ÀÇ ½ºÅ¸ÀÏÀÌ
¹Ù²ñ´Ï´Ù.
|
||
|
|
||
¾Æ·¡Ã³·³ ÇÞÄ¡ÇÒ ¿µ¿ªÀ¸·Î Æ÷ÀÎÆ®¸¦ ½ÊÀÚ¸¶Å©À§Ä¡¿¡¼ Ŭ¸¯ ÇßÀ»¶§
|
||
(defun hatch-test (point HatchStyle / ex lapp sa saout acadobject acaddocument mspace n myhatch)
(setq ex (entlast))
(command "boundary" point "")
(if (not (equal ex (entlast)))
(progn
(while (setq ex (entnext ex))
(setq lapp (cons ex lapp))
)
(vl-load-com)
(setq acadObject (vlax-get-acad-object))
(setq acadDocument (vla-get-ActiveDocument acadObject))
(setq mSpace (vla-get-ModelSpace acadDocument))
(setq myhatch (vlax-invoke-method mspace 'Addhatch 0 "ansi31" :vlax-false))
(vla-put-patternscale myhatch 1)
(setq sa (vlax-make-safearray vlax-vbObject '(0 . 0) ))
(setq saout (vlax-make-safearray vlax-vbObject '(0 . 0)))
(vlax-safearray-put-element saout 0 (vlax-ename->vla-object (nth 0 lapp)))
(vla-appendouterloop myhatch saout)
(setq n 1)
(repeat (1- (length lapp))
(vlax-safearray-put-element sa 0 (vlax-ename->vla-object (nth n lapp)))
(vla-AppendinnerLoop myhatch sa)
(setq n (1+ n))
)
(vla-put-hatchstyle myhatch HatchStyle);acHatchStylenormal
(vla-Evaluate myhatch)
(vla-regen acadDocument acActiveViewport)
(mapcar 'entdel lapp)
)
)
(princ)
)
(defun hatch-test (point HatchStyle / ex lapp sa saout acadobject acaddocument mspace n myhatch)
(setq ex (entlast))
;; ¿µ¿ªµéÀ» »ý¼ºÇÑ´Ù.
(command "boundary" point "")
(if (not (equal ex (entlast)))
(progn
;; ¿µ¿ªµéÀ» ¸ðÀº´Ù.
(while (setq ex (entnext ex))
(setq lapp (cons ex lapp))
)
(vl-load-com)
(setq acadObject (vlax-get-acad-object))
(setq acadDocument (vla-get-ActiveDocument acadObject))
(setq mSpace (vla-get-ModelSpace acadDocument))
;; ÇÞÄ¡ ¿ÀºêÀèÆ®¸¦ ¸¸µç´Ù.
(setq myhatch (vlax-invoke-method mspace 'Addhatch 0 "ansi31" :vlax-false))
;; ÆÐ´ø scale ¸¦ Á¤ÇÑ´Ù.
(vla-put-patternscale myhatch 1)
;; ³»ºÎ·çÇÁ(³»ºÎ¿µ¿ª)¸¦ ÀúÀåÇÒ º¯¼ö¸¦ ¸¸µç´Ù.
(setq sa (vlax-make-safearray vlax-vbObject '(0 . 0) ))
;; ¿ÜºÎ·çÇÁ(¿ÜºÎ¿µ¿ª)¸¦ ÀúÀåÇÒ º¯¼ö¸¦ ¸¸µç´Ù.
(setq saout (vlax-make-safearray vlax-vbObject '(0 . 0)))
;; °¡Àå ¹Ù±ùÀÇ ·çÇÁ¸¦ appendouterloop ÇÔ¼ö·Î ÇÞÄ¡ ¿ÀºêÀèÆ®¿¡ Ãß°¡ÇÑ´Ù.
(vlax-safearray-put-element saout 0 (vlax-ename->vla-object (nth 0 lapp)))
(vla-appendouterloop myhatch saout)
;; ³ª¸ÓÁö ³»ºÎ·çÇÁ¸¦ AppendinnerLoop ÇÔ¼ö·Î °¢°¢ ÇÞÄ¡ ¿ÀºêÀèÆ®¿¡ Ãß°¡ ÇÑ´Ù.
(setq n 1)
(repeat (1- (length lapp))
(vlax-safearray-put-element sa 0 (vlax-ename->vla-object (nth n lapp)))
(vla-AppendinnerLoop myhatch sa)
(setq n (1+ n))
)
;; ÇÞÄ¡ style ¸¦ Àû¿ëÇÑ´Ù.
;; 0 = acHatchStylenormal => ³»¿ÜºÎ ä¿ò ¹æ½Ä
;; 1 = acHatchStyleouter => ¿ÜºÎ¸¸ ä¿ò ¹æ½Ä
;; 2 = acHatchStyleignore => Àüü ä¿ò ¹æ½Ä
(vla-put-hatchstyle myhatch HatchStyle)
;; ÇÞÄ¡¸¦ Æò°¡ÇÏ¿© °»½ÅÇÑ´Ù.
(vla-Evaluate myhatch)
;; regen À¸·Î ÇÞÄ¡¸¦ Ãâ·ÂÇÑ´Ù.
(vla-regen acadDocument acActiveViewport)
;; »ý¼ºµÈ ¿µ¿ªµéÀ» »èÁ¦ÇÑ´Ù.
(mapcar 'entdel lapp)
)
)
(princ)
)