Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public boolean contains(double[] point, Shape s, int vertices) {
- float[][] nVec = new float[vertices][2];
- for(int i = 0; i < vertices; i++) {
- if(i!=vertices-1) {
- nVec[i][0] = -(s.sides[i+1][1] - s.sides[i][1]);
- nVec[i][1] = s.sides[i+1][0] - s.sides[i][0];
- }
- else {
- nVec[i][0] = -(s.sides[0][1] - s.sides[i][1]);
- nVec[i][1] = s.sides[0][0] - s.sides[i][0];
- }
- if((nVec[i][0]*((float)point[0]-s.sides[i][0])+nVec[i][1]*((float)point[1]-s.sides[i][1])) > 0) {
- return false; }
- }
- return true;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement