本文实例为大家分享了java判断某个点是否在所画范围内的具体代码,供大家参考,具体内容如下
isptinpoly.java
package com.ardo.util.circle;
import java.util.arraylist;
import java.util.list;
/**
* java判断某个点是否在所画范围内(多边形【isptinpoly】/圆形【distencepc】)
* @param point 检测点
* @param pts 多边形的顶点
* @return 点在多边形内返回true,否则返回false
* @author ardo
*/
public class isptinpoly {
/**
* 判断点是否在多边形内
* @param point 检测点
* @param pts 多边形的顶点
* @return 点在多边形内返回true,否则返回false
*/
public static boolean isptinpoly(point2d point, list pts){
int n = pts.size();
boolean boundorvertex = true; //如果点位于多边形的顶点或边上,也算做点在多边形内,直接返回true
int intersectcount = 0;//cross points count of x
double precision = 2e-10; //浮点类型计算时候与0比较时候的容差
point2d p1, p2