public ArrayList<Vector> getCollisions(Polygon polygon) {
		if(polygon.min.greaterThan(max) || polygon.max.lessThan(min)) {
			return null;
		}
		ArrayList<Vector> intersections = new ArrayList<Vector>();
		Vector intersection;
		for(Edge edge : edges) {
			for(Edge otherEdge : polygon.edges) {
				intersection = edge.getIntersection(otherEdge, false);
				if(intersection != null) {
					intersections.add(intersection);
				}
			}
		}
		return intersections.size() > 0 ? intersections : null;
	}