找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 253|回复: 4
打印 上一主题 下一主题

求解,PCB上任意两条线交叉点坐标算法,附代码没看懂

[复制链接]

97

主题

710

帖子

2971

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
2971
跳转到指定楼层
1#
发表于 2015-3-26 15:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 fengyu6117 于 2015-3-26 17:18 编辑

求大神详细解释。
A_x    直线AB的开始和终点坐标
A_y
B_x
B_y
C_x    直线CD的开始和终点坐标
C_y
D_x
D_y

denom =  (( D_y -  C_y)*( B_x -  A_x) - ( D_x -  C_x)*( B_y -  A_y))    两条直线斜率相减。


u_AB = ((( D_x -  C_x)*( A_y -  C_y) - ( D_y -  C_y)*( A_x -  C_x)) / denom)  这个是什么公式?

u_CD = ((( B_x -  A_x)*( A_y -  C_y) - ( B_y -  A_y)*( A_x -  C_x)) / denom)  这个是什么公式?

cross_x =  A_x + u_AB * ( B_x -  A_x)   交叉点X坐标   这个是什么公式?
cross_y =  A_y + u_AB * ( B_y -  A_y)   交叉点Y坐标   这个是什么公式?
    if( (u_AB >= 0.0 && u_AB <= 1.0) && (u_CD >= 0.0 && u_CD <= 1.0) then
        true_intersect_exists = t


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏3 支持!支持! 反对!反对!
这个家伙很懒,从来不写个人签名。

1

主题

130

帖子

378

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
378
2#
发表于 2015-3-26 16:13 | 只看该作者
个人表示很晕

97

主题

710

帖子

2971

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
2971
3#
 楼主| 发表于 2015-3-26 16:26 | 只看该作者
估计上小学的时候算这个在行
这个家伙很懒,从来不写个人签名。

11

主题

45

帖子

503

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
503
4#
发表于 2015-3-27 09:55 | 只看该作者
建议楼主自己把公式推导一遍,这个也许是简化后的公式。。。也许根本就是错的。。

97

主题

710

帖子

2971

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
2971
5#
 楼主| 发表于 2015-3-27 16:52 | 只看该作者
是对的,可以执行
这个家伙很懒,从来不写个人签名。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2024-11-26 21:04 , Processed in 0.055347 second(s), 32 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表