docs: public void boundingPolygonCCW(SquareGrid grid, Polygon2D_F64 bounding) {
  		int w = grid.columns;
  		int h = grid.rows;
  
  		if( w == 1 && h == 1 ) {
  			SquareNode n = grid.get(0,0);
  			bounding.get(0).set(n.square.get(0));
  			bounding.get(1).set(n.square.get(1));
  			bounding.get(2).set(n.square.get(2));
  			bounding.get(3).set(n.square.get(3));
  		} else if( w == 1 ) {
  			orderNode(grid.get(0, 0), grid.get(h - 1, 0), false);
  			bounding.get(0).set(ordered[0]);
  			bounding.get(1).set(ordered[1]);
  			orderNode(grid.get(h - 1, 0), grid.get(0, 0), false);
  			bounding.get(2).set(ordered[0]);
  			bounding.get(3).set(ordered[1]);
  		} else if( h == 1 ) {
  			orderNode(grid.get(0, 0), grid.get(0, w - 1), true);
  			bounding.get(0).set(ordered[0]);
  			bounding.get(3).set(ordered[3]);
  			orderNode(grid.get(0, w - 1), grid.get(0, 0), true);
  			bounding.get(1).set(ordered[3]);
  			bounding.get(2).set(ordered[0]);
  		} else {
  			orderNode(grid.get(0, 0), grid.get(0, w - 1), true);
  			bounding.get(0).set(ordered[0]);
  			orderNode(grid.get(0, w - 1), grid.get(h - 1, w - 1), true);
  			bounding.get(1).set(ordered[0]);
  			orderNode(grid.get(h - 1, w - 1), grid.get(h - 1, 0), true);
  			bounding.get(2).set(ordered[0]);
  			orderNode(grid.get(h - 1, 0), grid.get(0, 0), true);
  			bounding.get(3).set(ordered[0]);
  		}
  	}