这是API版本
- (defun Entity:Box (ss / an box from mat mat0 pj r to)
- (xdrx_document_ucsoff)
- (setq box (xdrx_entity_box ss))
- (if (not (xdrx_document_iswcs))
- (progn
- (setq an (XD::UCS:Angle)
- pj (car box)
- mat0 (xdrx_matrix_identity 3)
- from (list pj (getvar "ucsxdir") (getvar "ucsydir") (XD::UCS:ZDir))
- to (list pj '(1 0 0) '(0 1 0) '(0 0 1))
- mat (xdrx_matrix_AlignCoordSystem from to)
- )
- (xdrx_entity_transform ss Mat)
- (setq box (xdrx_entity_box ss))
- (xdrx_entity_transform ss (setq r (xdrx_matrix_inverse Mat)))
- (setq box (XD::Pnts:WCS2UCS (XD::Pnts:Transform box r)))
- )
- )
- box
- )
(defun pnts:box(box)(list(car box)(list(caar box)(cadadr box)(last(car box)))(cadr box)(list(caadr box)(cadar box)(last(car box))))(defun曲线:IsClosed(Curve/)(或(vlax Curve IsClosed Curve)(等于(vlax Curve getstartpoint Curve)(vlax Curve getendpoint Curve)1e-8))(defun Obj:角(ent/bp up)(vla getboundingbox ent“bp”up)(list(safearray value bp)(safearray value up))(定义曲线:方向(曲线/框参数)(setq box(\u pnts:box(Obj:角曲线))参数(mapcar)(λ(x)(vlax Curve getParamAtPoint Curve(vlax Curve GETCLOESSTPOINT Curve x)))框))(或(应用' |