如何识别分割凹多边形
来源:互联网 发布:韩国知乎 编辑:程序博客网 时间:2024/04/30 01:12
什么是凹多边形:一个多边形中至少有一个内角大于180度,就是凹多边形。
如何识别凹多边形:为每一条边建立一个向量,使用相邻边的叉积来测试凹凸性,凸多边形的所有边的向量
叉积均同号,因此一个多边形的所有边向量的叉积一些为正 ,一些为负,则可确定其为凹多边形。见下图
如何分割凹多边形:
1,向量分割法
步骤
1,参考图4.9,在平面直角坐标系中,首先确定边向量根据顶点和可得到边向量
接着按多边形边界顺序计算连续的边向量的叉积,如果有些叉向量的Z分量为正,有些为负,则此多边形为凹多边形。
多边形为凹则可沿叉积中第一边向量的直线进行切割,见下图
这样就把一个凹多边形分割成了两个凸多边形。
2,旋转分割法
步骤:
1,沿多边形边的逆时针方向,逐一将顶点V移动到坐标系原点,,然后顺时针旋转多边形,使、
下一个顶点V落在X轴上,如果再下一个顶点V位于X轴下面,则多边形为凹,然后我们利用X轴
将多边形分割成两个新多边形,并且对着两个新多边形重复使用凹测试,一直重复到所有顶点均经过测试。
见下图
阅读全文
0 0
- 如何识别分割凹多边形
- 计算机图形学(二)输出图元_10_多边形填充区_2_分割凹多边形
- 顶角判别法识别多边形的凸凹性,并将凹多边形近似处理为凸多边形
- 凹多边形画法
- 凸,凹多边形定义
- UE4 凹多边形渲染
- OpenGL Tessellation绘制凹多边形
- 凸多边形和凹多边形的判断
- 任意多边形的面积计算(包括凹多边形的)
- 判断点是否在凹多边形或交叉多边形内~
- opengl es画凹多边形问题:切割凹多边形为三角形
- 求三角形重心 包括凹多边形的模板
- 判断一个图形是否为凹多边形(1)
- 判断一个图形是否为凹多边形(2)
- HDU 2108 Shape of HDU(凸or凹多边形判定)
- HDU2108(叉积判断凸多边形,凹多边形)
- OpenCV画椭圆、实心圆、凹多边形、线段、矩形
- HDU 2108 Shape of HDU(凸or凹多边形判定)
- 关于JavaScript中constructor属性的灵活使用
- Centos装完MySQL模块后还是报 No module named MySQLdb错误
- (97)蓝图函数
- Kotlin 踩坑日记(一)Kotlin Dagger2 配置使用
- UIPickerView设置字体的方法
- 如何识别分割凹多边形
- Jenkins持续化构建Android项目(一)-安装配置Jenkins(by 星空武哥)
- 配置电子邮件传输----邮件接收dovecot
- Cross-Site Scripting(XSS): 跨站脚本攻击
- linux C/C++编程 常用系统函数整理, 持续增加......
- 腾讯云李海翔:数据库的并发控制技术深度探索
- 5.18特长生模拟题 Distinct
- 2017年湖南多校对抗赛第10场-COJ1930-roads
- RPC与Socket的关系,RPC与RMI的关系!