摘要: 在GIS(地理信息管理系统)中,判断一个坐标是否在多边形内部是个经常要遇到的问题。乍听起来还挺复杂。根据W. Randolph Franklin 提出的PNPoly算法,只需区区几行代码就解决了这个问题。假设多边形的坐标存放在一个数组里,首先我们需要取得该数组在横坐标和纵坐标的最大值和最小值,根据这四个点算出一个四边型,首先判断目标坐标点是否在这个四边型之内,如果在这个四边型之外,那可以跳过后面较为复杂的计算,直接返回false。if (p.x maxX || p.y maxY) { // 这个测试都过不了。。。直接返回false;}接下来是核心算法部分:int pnpoly (int n.. 阅读全文
posted @ 2014-01-22 09:39 armyfai 阅读(18216) 评论(0) 推荐(3) 编辑