马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 newer 于 2017-8-15 17:50 编辑
TF = NIL的情况
TF=T的情况
 - (defun XD::Dim:AssDimEnts (elst tf / e el1 inx pts pts1 spts ss x)
- (setq inx (XD::Dim:GetNearInx (car elst) (cadr elst))
- spts (xdrx_entity_getstretchpoint (car elst))
- )
- (setq pts (mapcar
- '(lambda (x)
- (nth x spts)
- )
- inx
- )
- )
- (if (not tf)
- (progn
- (XD::Entity:AssIntersectEntsInit)
- (reverse (XD::Entity:AssIntersectEnts (car elst) '((0 . "DIMENSION"))
- 0.0
- )
- )
- )
- (progn
- (setq ss (ssget "cp" (xd::pnts:wcs2ucs (XD::Geom:GetPolyBox
- pts (XD::Doc:GetPickBoxHeight)
- )
- ) '((0 . "DIMENSION"))
- )
- )
- (xdrx_setsstodb ss 9)
- (while (setq e (xdrx_getentdata 9))
- (setq pts1 (xdrx_entity_getstretchpoint e))
- (if (vl-some '(lambda (x)
- (apply
- 'xdrx_point_ison
- (cons x pts)
- )
- ) pts1
- )
- (setq el1 (cons e el1))
- )
- )
- (reverse el1)
- )
- )
- )
应用代码:
 - (defun c:tt ()
- (if (setq e (xdrx_entsel "\n点取尺寸<退出>:" '((0 . "dimension"))))
- (progn (setq elst (XD::Dim:AssDimEnts e nil))
- (xdrx_pickset_redraw elst)
- )
- )
- (princ)
- )
|