 - ;http://www.theswamp.org/index.php?topic=43188.msg484107#msg484107
- (defun _polyselfintersect-p ( obj / _gbn n v )
- (defun _gbn ( l n / r s )
- (repeat (/ (length l) n)
- (repeat n
- (setq s (cons (car l) s)
- l (cdr l)
- )
- )
- (setq r (cons (reverse s) r)
- s nil
- )
- )
- (reverse r)
- )
- (setq v (_gbn (vlax-get obj 'coordinates) 2)
- n (vlax-get obj 'normal)
- )
- (vl-some
- (function
- (lambda ( i )
- (null
- (vl-some
- (function
- (lambda ( v )
- (equal i (trans v n 0) 1e-8)
- )
- )
- v
- )
- )
- )
- )
- (_gbn (vlax-invoke obj 'intersectwith obj acextendnone) 3)
- )
- )
已解决
|