liminnet 发表于 2008-11-21 17:59:00

狂刀lxx 发表于 2008-11-21 18:22:00

什么样的,有图么

liminnet 发表于 2008-11-21 18:29:00

ZZXXQQ 发表于 2008-11-21 21:52:00


;判断直线所处象限 ZZXXQQ 2008.11.21
(defun c:tt ()
(if (setq p0 (getpoint "\n坐标原点 :")) (progn
(setq x0 (car p0) y0 (cadr p0))
(if (and (setq s1 (entsel "\n选择一条直线 :"))
       (setq ent (entget (car s1)))
       (= (cdr(assoc 0 ent)) "LINE")) (progn
   (setq p1 (cdr(assoc 10 ent))
   p2 (cdr(assoc 11 ent))
   x1 (car p1)y1 (cadr p1)
   x2 (car p2)y2 (cadr p2))
   (cond
    ((and (<= x0 x1) (<= x0 x2) (<= y0 y1) (<= y0 y2)) (princ "1象限"))
    ((and (>= x0 x1) (>= x0 x2) (<= y0 y1) (<= y0 y2)) (princ "2象限"))
    ((and (>= x0 x1) (>= x0 x2) (>= y0 y1) (>= y0 y2)) (princ "3象限"))
    ((and (<= x0 x1) (<= x0 x2) (>= y0 y1) (>= y0 y2)) (princ "4象限"))
(T (princ "error!"))
   )
))
))
(princ)
)

狂刀lxx 发表于 2008-11-22 01:09:00

(defun c:ttt (/ A B ENT P0 P1 P2 PI/2 S1)
(if (and (setq p0 (getpoint "\n坐标原点 :"))
    (setq s1 (entsel "\n选择一条直线 :"))
    (setq ent (entget (car s1)))
    (= (cdr (assoc 0 ent)) "LINE")
      )
    (progn
      (setq p1(cdr (assoc 10 ent))
   p2(cdr (assoc 11 ent))
   pi/2 (/ pi 2)
      )
      (setq a (1+ (fix (/ (angle p0 p1) pi/2)))
   b (1+ (fix (/ (angle p0 p2) pi/2)))
      )
      (if (= a b)
(princ (strcat (itoa a) "象限"))
(princ (strcat (itoa a) "~" (itoa b) "象限"))
      )
    )
)(princ)
)

cnks 发表于 2008-11-23 18:21:00

很简单的问题楼主都不愿动手,如今的人。。。

mccad 发表于 2008-11-23 21:01:00

<p>是应该批评一下。</p><p>在明经将近1年半的时间都没有多少进步,哪位老板这么难为我们的BMW。</p>

liminnet 发表于 2008-11-23 21:08:00

狂刀lxx 发表于 2008-11-23 22:33:00

你们老板要不是很有耐心就是很喜欢你。要不他/她怎么受得了哦
页: [1]
查看完整版本: 怎么判断一条直线是属于第一第三像限或是第二第四像限