algorithm - 检查reuleaux三角形是否在C中的三角形/五边形/圆形内部/外部
问题描述
您可以在此处检查 Reuleaux 三角形的定义: https ://en.wikipedia.org/wiki/Reuleaux_triangle
我一直在处理几何 2D 形状并进行检查,设置测试以查看它们是否与另一个形状相交,或者在另一个形状内(包括触摸)。到目前为止,我已经测试了圆(以Point类型为中心,以双x,y 属性为坐标,以及双半径)、三角形(具有三个顶点Point)、五边形(具有五个顶点Point),但我发现一个有趣的形状叫做鲁洛三角形,由三个圆组成,弧边到对边顶点的距离相同。
首先,我尝试查看顶点是否在形状内部,就好像我使用边缘作为原始大圆的一部分一样,该大圆的顶点是中心,或者尝试如果我上面提到的其他形状的一部分与它相交(圆比直边形状更令人困惑),但我坚持,因为我不知道如何限制角度或其他东西,所以我只能扫描要测试的这部分弧,实际上很难设置测试检测到相交。
我试图找到从顶点到边缘中点的距离,并将其视为六边形,但在小弧段中总是有更多的空间不会被包括在内。现在我不知道要设置一种新方法来测试这个奇怪的圆形三角形是否会在我已经找到一种测量位置关系的方法的内部/外部/相交/接触任何形状(圆形、三角形、五角形)。
那么您对此有何想法?也许形成这个三角形的三个大圆圈会有所帮助?
解决方案
推荐阅读
- asp.net-core - Swashbuckle.AspNetCore 如何描述错误响应模型?
- swift - 使用数组内容过滤数组
- google-apps-script - 编译时间太长
- amazon-web-services - AWS Elastic MapReduce 和 AWS Kinesis Data Analytics 有什么区别?
- git - 使用没有父目录的 git 子模块
- java - .jsp 文件中的 ModelAttribute:无法解析符号。春天
- php - Joomla 用户登录、注册、开始会话
- scheme - 方案递归在列表为空后从列表的开头开始
- typescript - Lodash _.map 获取对象数组的属性
- java - Maven-如何找到负责我当前项目正在使用的 jar 文件的组 ID?