Advertisement
Guest User

Untitled

a guest
Feb 20th, 2020
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 0.61 KB | None | 0 0
  1. public boolean contains(double[] point, Shape s, int vertices) {
  2.        
  3.         float[][] nVec = new float[vertices][2];
  4.         for(int i = 0; i < vertices; i++) {
  5.             if(i!=vertices-1) {
  6.                 nVec[i][0] = -(s.sides[i+1][1] - s.sides[i][1]);
  7.                 nVec[i][1] = s.sides[i+1][0] - s.sides[i][0];
  8.             }
  9.            
  10.             else {
  11.                 nVec[i][0] = -(s.sides[0][1] - s.sides[i][1]);
  12.                 nVec[i][1] = s.sides[0][0] - s.sides[i][0];
  13.             }
  14.            
  15.             if((nVec[i][0]*((float)point[0]-s.sides[i][0])+nVec[i][1]*((float)point[1]-s.sides[i][1])) > 0) {
  16.                 return false; }
  17.            
  18.         }
  19.         return true;    
  20. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement