社区
C++ 语言
帖子详情
判断平行四边形相交的算法(C++)
wangweiat2008
2009-08-29 06:52:10
各位大虾:
我是刚注册的,没有分,望谅解.
现在遇到一个难题:就是在平面坐标系下,怎样判断两个平行四边形相交?
以上. 多谢!!
...全文
726
9
打赏
收藏
判断平行四边形相交的算法(C++)
各位大虾: 我是刚注册的,没有分,望谅解. 现在遇到一个难题:就是在平面坐标系下,怎样判断两个平行四边形相交? 以上. 多谢!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
herman~~
2009-08-29
打赏
举报
回复
mark
建议google下吧
wangweiat2008
2009-08-29
打赏
举报
回复
对,不过6楼,要写成程序 ,感觉比较困难.
dqdx_zch
2009-08-29
打赏
举报
回复
5楼的方法可以是可以,但是涉及到考虑端点的情况,恐怕有些不好讨论。
我这又想到一个算法:
就是平行于x轴做射线,做射线的范围是两个图形在Y轴上的投影相交的部分。
如果第一次碰到第一图形,第二次碰到第二个图形,第三次又碰到第一个图形,那么两个图像相交。
我其中所说的碰到第一个图形,是只与第一个图形的线段相交。
如果第一次和第二次都是碰到的统一个图形,那么在做下一条射线。
遍历相交部分。
不知道我说清楚了吗?
blueink_200451
2009-08-29
打赏
举报
回复
顶5楼。
4楼也不错吧。帮顶。
wangweiat2008
2009-08-29
打赏
举报
回复
我也有一个思路:
判断一个平行四边形的任意一条边如果和另一个四边形的任意一条边有交点 则这两个四边形相交.(除一个四边形嵌套另一个四边形外)
dqdx_zch
2009-08-29
打赏
举报
回复
我有个思路,但是可能效率比较慢。
如果存在一个点,即在一个四边形内,又在另一个四边形内,那么两个四边形相交。
那么,问题就在如何判断点在四边形内。
这个算法在计算几何的书上是有的。
不过感觉速度会很慢。
thy38
2009-08-29
打赏
举报
回复
叉积不能判断两条线段是否相交,还得考虑端点。
wangweiat2008
2009-08-29
打赏
举报
回复
没有明白,能具体点吗?多谢
Paradin
2009-08-29
打赏
举报
回复
都是直线段,因此可以枚举 4*4对边(线段)是否相交
用叉积判断两条线段是否相交
yocto-gl:YoctoGL:用于数据驱动的基于物理的图形的微型C ++库
Yocto / GL:面向数据的基于物理的图形的微型C ++库 Yocto / GL是小型C ++ 17库的集合,用于构建根据MIT许可发布的基于物理的图形
算法
。 Yocto / GL以故意面向数据的风格编写,以便于开发和使用。 Yocto / GL被分成几个小的库,以使代码导航更加容易。 有关文档,请参见每个头文件。 yocto/yocto_math.{h} :固定大小的向量,矩阵,刚性框架,射线,边界框,变换 yocto/yocto_color.{h} :颜色转换,颜色调整,色调映射功能,Perlin杂色,阴影和积分实用程序 yocto/yocto_geometry.{h} :几何函数,射线本原
相交
,点本原重叠 yocto/yocto_noise.{h} :佩林噪声 yocto/yocto_sampling.{h} :随机数生成,点和方向的生成,蒙特卡洛实用程序 yocto/yocto_shading.{h} :菲涅耳函数,bsdf瓣,透射瓣,相位函数的评估和采样 yocto/yocto_shape.{h,cpp} :用于处理三角形网格,四边形网格和线集,法线和切线计算,线性和
判断
两条线段是否
相交
以及点是否在四边形内的
C++
算法
1.
判断
两条线段是否
相交
#include <iostream> using namespace std; struct Point { double x, y; }; //
判断
两条直线是否
相交
double determinant(double v1, double v2, double v3, double v4) // 行列式 { return (v1*v4 -...
POJ 1971 统计
平行四边形
HASH
题目链接:http://poj.org/problem?id=1971 题意:给定n个坐标。问有多少种方法可以组成
平行四边形
。题目保证不会有4个点共线的情况。 思路:可以发现
平行四边形
的一个特点,就是对角线
相交
后得到的点。如果两点线的中点
相交
,那么这两条线就可以组成一个
平行四边形
[不需去排除4点共线],所以枚举两两组合的点对HASH成中点。然后
判断
所有中点,如果某个中点出现了K次,那么可...
【附代码】
判断
线段是否
相交
算法
(Python,
C++
)
判断
线段是否
相交
算法
【
C++
】任意两个多边形
相交
问题
标题
C++ 语言
64,654
社区成员
250,484
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章