package graphics; public class Disk extends Shape { Disk() { super(30, 2); } Disk(int newM, int newN) { super(newM, newN); } //convert u/v pair to xyz point protected double[] calculatePoint(double u, double v) { //point-normal pair double[] vertex = {0,0,0, 0,0,0}; double theta = 2 * Math.PI * u; vertex[0] = v * Math.cos(theta); //x vertex[1] = v * Math.sin(theta); //y vertex[2] = 0; //z //vertex[3] = Math.cos(theta); //nx //vertex[4] = Math.sin(theta); //ny //vertex[5] = 0; //nz return vertex; } //gotta overwrite this b/c of casting issues :-/ public Object clone() { Disk newDisk = new Disk(M, N); for (int i=0; i