rite a library of static methods that performs various geometric transforms on polygons . Mathematically, a polygon is defined by its sequence of vertices ( x 0 , y 0 ), ( x 1 , y 1 ), ( x 2 , y 2 ),...


rite a library of static methods that performs variousgeometric transforms onpolygons. Mathematically, a polygon is defined by its sequence of vertices (x
0,y0), (x1,y1), (x2,y2), …. In Java, we will represent a polygon by storing thex– andy-coordinates of the vertices in two parallel arrays x[] and y[].


Three useful geometric transforms arescale,translate androtate.






    • Scale the coordinates of each vertex (x
      i
      ,y
      i
      ) by a factor α.


    • x

      i = αx
      i


    • y

      i = αy
      i


    • Translate each vertex (x
      i
      ,y
      i
      ) by a given offset (dx,dy).


    • x

      i =x
      i +dx


    • y

      i =y
      i +dy


    • Rotate each vertex (x
      i
      ,y
      i
      ) byθ degrees counterclockwise, around the origin.


    • x

      i =x
      i cosθ –y
      i sinθ


    • y

      i =y
      i cosθ +x
      i sinθ




Write a two-dimensional transformation library by implementing the following API:



public class PolygonTransform {


// Returns a new array object that is an exact copy of the given array. // The given array is not mutated.



public static double[] copy(double[] array)


// Scales the polygon by the factor alpha.



public static void scale(double[] x, double[] y, double alpha)


// Translates the polygon by (dx, dy).



public static void translate(double[] x, double[] y, double dx, double dy)


// Rotates the polygon theta degrees counterclockwise, about the origin.public static void rotate(double[] x, double[] y, double theta)


// Tests each of the API methods by directly calling them.



public static void main(String[] args)}



Jun 03, 2022
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here