bhatch 命令里的PT能接受自己定义的坐标吗?
各位老师。(command "bhatch" "p" "solid" Pt "") bhatch 命令里的PT能接受自己定义的坐标吗?还是PT必须是getpoint获取?
我曾用自定义的PT,CAD提示点在对像上。
请问有何方法让hatch接受自己定义的坐标 块内填充。
CAD提示点在对像上,说明视图缩的太小了,将视图放大一点! 自己定义的坐标与(getpoint)的返回值相同吗? 已放到最大了,还是一样。
点是肯定一样的。孤岛取点。
我只是想实现框选每个块然后用实实色填充。
算出的PT坐标就是不能用来做填充的坐标点,而getpoint就可以。请高手帮忙看看。
(defun c:QQ( / SS I Devtype ENT1 ENT)
(setvar "cmdecho" 0)
(setq color (acad_truecolordlg (cons 62 0)))
(setq co (cdr (car color)))
(IF(SETQ SS (SSGET '((0 . "INSERT") (66 . 1))))
(PROGN
(SETQ I -1)
(REPEAT (SSLENGTH SS)
(SETQ EN (SSNAME SS (SETQ I (1+ I))))
(SETQ ENT (ENTGET EN ) ENT1 ENT)
(GetLeftUp EN)
(command "bhatch" "p" "solid" Pt "")
(command "color" oldcolor)
)
)
(princ)
)
)
下面的函数用来计算PT反回中心点。
(defun GetLeftUp( EntName /);( EntName / blkname name pa pa_x pa_y ppd_x pd_y pt1 pt2 pt3 pt4)
(Setq blkname (Vlax-Get (setq get (Vlax-Ename->Vla-Object EntName)) 'Name ))
(Vlax-Invoke-Method (Vlax-Ename->Vla-Object EntName) 'GetBoundingBox 'pa 'pb)
;(setq PtLeftUp (list (car (vlax-safearray->list pc)) (cadr (vlax-safearray->list pb))))
(setq PtLeftDown (vlax-safearray->list pa) PtRightUp (vlax-safearray->list pb))
(setq PaX (car PtLeftDown) PaY (cadr PtLeftDown))
(setq PbX (car PtRightUp ) PbY (cadr PtLeftDown))
(setq PtX (+ PaX ( /( - PbX PaX ) 2)))
(setq PtY (+ PaY ( /( - PbY PaY ) 2)))
(setq Pt (list PtX PtY 0.0))
)
关闭捕捉 是的,是关闭的 kingerst 发表于 2012-9-5 10:54 static/image/common/back.gif
是的,是关闭的
检查UCS是否WCS坐标系统重合! 老大。这个怎么检查,我真不会。 那么就上传调试时所牵涉到的文件资料呗 已上传,相当于批量填充块。
页:
[1]
2