马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
 - (defun xd::dim:selen (e / styl xline1point xline2point dimlinepoint dimexo dimscale fxlen
- )
- (setq styl (xdrx_getpropertyvalue e "dimensionstyle" t)
- xline1point (xdrx_getpropertyvalue e "xline1point")
- xline2point (xdrx_getpropertyvalue e "xline2point")
- dimlinepoint (xdrx_getpropertyvalue e "dimlinepoint")
- )
- (if (and xline1point xline2point)
- (progn (or (setq dimexo (xdrx_getpropertyvalue e "dimexo"))
- (setq dimexo (xdrx_getpropertyvalue styl "dimexo"))
- )
- (or (setq dimscale (xdrx_getpropertyvalue e "dimscale"))
- (setq dimscale (xdrx_getpropertyvalue styl "dimscale"))
- )
- (cond ((or (= 1 (xdrx_getpropertyvalue e "dimfxlenon"))
- (xdrx_getpropertyvalue styl "dimfxlenon")
- )
- (if (setq fxlen (xdrx_getpropertyvalue e "dimfxlen"))
- (setq fxlen (* dimscale fxlen))
- (setq fxlen (* dimscale (xdrx_getpropertyvalue styl "dimfxlen")))
- )
- )
- (t
- (setq fxlen (- (distance dimlinepoint xline2point) (* dimscale dimexo)))
- )
- )
- )
- )
- )
- (defun c:XDTB_DIMJDXZ (/ ss selen height xdir len ydir p1 p2 x)
- (if (and (xdrx_initssget "\n选择标注实体<退出>:")
- (setq ss (xdrx_ssget '((0 . "dimension"))))
- )
- (progn (xdrx_begin)
- (mapcar '(lambda (x)
- (xdrx_getpropertyvalue
- x
- "xLine1Point"
- "xLine2Point"
- "DimLinePoint"
- )
- (setq selen (xd::dim:selen x)
- height (distance #xline2point #dimlinepoint)
- )
- (if (not (equal selen height 1e-5))
- (progn (setq ecs (xdrx_entity_getecs x)
- xdir (nth 1 ecs)
- len (distance #xline1point #xline2point)
- ydir (if (not (equal #xline2point #dimlinepoint 1e-5))
- (xdrx_vector_normalize (mapcar '- #xline2point #dimlinepoint))
- (nth 2 ecs)
- )
- p2 (mapcar '+ #dimlinepoint (xdrx_vector_product ydir selen))
- p1 (car (xd::pnts:orthoproject (list p2) #xline1point (mapcar '+ #xline1point ydir)))
- )
- (xdrx_setpropertyvalue x "dimfxlenon" nil "dimexo" 0.0)
- (xdrx_setpropertyvalue
- x "xline1point" p1 "xline2point" p2 "dimlinepoint" #dimlinepoint
- )
- )
- )
- )
- (xdrx_pickset->ents ss)
- )
- (xdrx_end)
- )
- )
- (princ)
- )
|