寒林清远 发表于 2009-4-14 15:43:00

<p>我能明白楼主的意思:</p><p>楼主是希望找到一个判断点的位置的参数,在一条直线的一侧还是另一侧,是不是?</p><p>如果是这样的话,我有个办法:</p><p>假设直线倾角为a,选取的点为p0,直线上任一点---假设就为起点p1吧,判断sin[(angle p1 p0)-a]是否大于0即可判断出p0是在直线的上侧还是下侧了。</p>

aytxq 发表于 2009-4-16 17:15:00

<p>謝謝提供思路。回去好好學習一下.</p>

aytxq 发表于 2009-4-17 13:02:00

<p>我想了好久。最重要的是要得到任意物件的幾何中心才能完成任意方向的選擇吧。</p>

highflybir 发表于 2009-4-17 14:51:00

<p>如果楼主自己都不清楚判别法则,别人怎么能帮助你呢?</p><p>几何中心?可是质心? 重心?或者boundingbox的中心? 所以楼主对这个问题的描述不够详细。</p>

wuzheng80425 发表于 2016-9-26 17:09:42

从别人那里拷过来,希望对你有帮助

(defun c:ABCD()
(setq      PA(getpoint "\n 第一点:")
      PB(getpoint PA "\n 第二点:")
      PC(getpoint PB "\n 方向:")
      an1 (angle PA PB)
      an2 (angle PC PB)
      an3 (abs (- an1 an2))
)
(if (< an1 an2)
    (setq keyang (- (* pi 2) an3))
    (setq keyang an3)
)
(if (< keyang pi)
    (setq finalang (+ an1 (/ pi 2)))
    (setq finalang (- an1 (/ pi 2)))
)
(setq      pe (polar PA finalang 600)
      pf (polar PB finalang 600)
)
(command "pline" PA PB pf pe "C")
(prin1)
)

页: 1 [2]
查看完整版本: 请教一下如何确定一个点相对于选定物件的方向