返回首页
当前位置: 主页 > 编程语言 > C/C++教程 >

c语言判断一个点是否在多边形内

时间:2016-09-18 13:07来源:电脑教程学习网 www.etwiki.cn 编辑:admin

使用Canvas绘制图形时,为了使得在鼠标移动到某个多边形内部时,对整个多边形进行高亮显示,这里就需要用到判断某个点是否在多边形内部的算法.

其实用到的几何原理就是, 从要判断的点任意作一条射线, 然后计数射线与多边形相交点的个数,若相交点个数为奇数个,刚此点位于多边形内部,若相交点个数为偶数个,刚此点位于多边形外部.

所以下面的三个方法就是实现这个目的.

检验方法

// CoffeeScript

// 多边形
polygon = [
0, 0,
0, 2,
2, 2,
2, 0,
0, 0
];

point = [1, 1];

console.log insidePolygon(polygon, point[0], point[1]);
// = 1, 证明要检验的点位于多边形内部

 

顶一下
(0)
0%
踩一下
(0)
0%
标签(Tag):C语言
------分隔线----------------------------
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码:点击我更换图片
推荐内容