Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class CollectionPolygon extends SimplePolygon
- {
- private List<Vertex2D> vertices = new ArrayList<Vertex2D>();
- /**
- * Constructor for objects of class CollectionPolygon
- */
- public CollectionPolygon(Vertex2D[] vertArray)
- {
- if (vertArray == null)
- throw new NullPointerException("Array is null.");
- for (int i = 0; i < vertArray.length; i++)
- {
- if (vertArray[i] == null)
- {
- throw new NullPointerException(i +" in array is null.");
- }
- else
- {
- vertices.add(vertArray[i]);
- }
- }
- }
- public int getNumVertices(){
- return vertices.size();
- }
- public Vertex2D getVertex(int index){
- if (index < 0)
- throw new IllegalArgumentException("Index cant be negative.");
- return vertices.get(index % this.vertices.size());
- }
- public Collection<Vertex2D> getVertices(){
- return Collections.unmodifiableList(vertices);
- }
- public CollectionPolygon invert(){
- List<Vertex2D> reversed = new ArrayList<Vertex2D>();
- for ( int i = vertices.size() - 1; i >= 0; i-- )
- {
- Vertex2D obj = this.vertices.get( i ) ;
- reversed.add( obj ) ;
- }
- Vertex2D[] reversedArray = new Vertex2D[reversed.size()];
- reversedArray = reversed.toArray(reversedArray);
- CollectionPolygon reversedPolygon = new CollectionPolygon(reversedArray);
- return reversedPolygon;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement