直线的两个端点为p1和p2 ,pt为直线上一点,如果(setq pt(getpoint)),这样(equal (+ (distance pt p1) (distance pt p2))(distance p1 p2))返回为t,但是(setq pt(cadr(entsel))),就返回为空,加入精度(equal (+ (distance pt p1) (distance pt p2))(distance p1 p2) 1e-3),有时返回t,有时返回为nil,用角度判断也是这样,要怎么样才能总是返回t呢,大家有没有好的办法呀; |