加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 计算一条线在哪一侧

发布时间:2020-12-15 04:18:56 所属栏目:Java 来源:网络整理
导读:我需要弄清楚如何计算一条线的哪一侧.我正在寻找一种非常快速和简单的碰撞算法,因为我只需要知道对象在哪一侧定义碰撞状态. 就像: if(x line.x) return EnumSide.LEFT; 但该线需要对角线.有任何想法吗? 解决方法 给定从点p0(x0,y0)到p1(x1,y1)的有向线,您
我需要弄清楚如何计算一条线的哪一侧.我正在寻找一种非常快速和简单的碰撞算法,因为我只需要知道对象在哪一侧定义碰撞状态.

就像:

if(x > line.x)
    return EnumSide.LEFT;

但该线需要对角线.有任何想法吗?

解决方法

给定从点p0(x0,y0)到p1(x1,y1)的有向线,您可以使用以下条件来确定点p2(x2,y2)是否位于该行左侧,或右侧,或者在同一行:

value =(x1 – x0)(y2 – y0) – (x2 – x0)(y1 – y0)

如果值> 0,p2位于该行的左侧.如果value = 0,则p2在同一行.如果值< 0,p2在该行的右侧. 这是一个解释一切的数字:

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读