
import java.awt.*;


public class JoeyOscopeGraphics extends Object {
	
	// this on is streamlined for the "draw" application
	
	Graphics g;
	
	public JoeyOscopeGraphics(Graphics g) { 
		this.g = g;
	}
	
	public void setColor(Color c) { 
		g.setColor(c);
	}


	public void drawIdLine(int id, int x1, int y1, int x2, int y2) {
		
		
		switch (id)	{
		case 0:
			drawOscope0Line(x1, y1, x2, y2);
			break;
		case 1:
			drawOscope1Line(x1, y1, x2, y2);
			break;
		case 2:
			drawOscope2Line(x1, y1, x2, y2);
			break;
		case 3:
			drawOscope3Line(x1, y1, x2, y2);
			break;
		case 4:
			drawOscope4Line(x1, y1, x2, y2);
			break;
		case 5:
			drawOscope5Line(x1, y1, x2, y2);
			break;
		case 6:
			drawOscope6Line(x1, y1, x2, y2);
			break;
		case 7:
			drawOscope7Line(x1, y1, x2, y2);
			break;
		case 8:
			drawOscope8Line(x1, y1, x2, y2);
			break;
		case 9:
			drawOscope9Line(x1, y1, x2, y2);
			break;
		case 10:
			drawOscope10Line(x1, y1, x2, y2);
			break;
		case 11:
			drawOscope11Line(x1, y1, x2, y2);
			break;	
		case 12:
			drawOscope12Line(x1, y1, x2, y2);
			break;
			
		default:
			g.drawLine(x1, y1, x2, y2);
		}	
		
	}

	
	

	public void drawOscope0Line(int x1, int y1, int x2, int y2) {

		float X1 = (float) (400 * Math.cos((double)(x1+y1)/400));	
		g.drawLine((int)x1, y1, 400, (int)(X1));	

	}

	
	public void drawOscope1Line(int x1, int y1, int x2, int y2) {
		
			float X1 = (float) (400 * Math.cos((double)x1/400) * Math.cos((double)x1/400));	
			g.drawLine((int)x1, y1, (int)(X1), 400);			
	}

	
	
	public void drawOscope2Line(int x1, int y1, int x2, int y2) {
		
		float X1 = (float) (200 * Math.cos((double)x1/200) + Math.sin((double)x1/200));	
			g.drawLine((int)x1, y1, (int)(X1), 400);		
	
	}
	
	public void drawOscope3Line(int x1, int y1, int x2, int y2) {
		float X1 = (float) (300 * Math.sin((double)y1/300) + Math.sin((double)x1/300));	
			g.drawLine((int)x1, y1, (int)(X1), 400);		
		
	}
	
		
	
	public void drawOscope4Line(int x1, int y1, int x2, int y2) {
	
			float X1 = (float) (400 * Math.cos((double)x1/100) + Math.sin((double)x1/100));	
			g.drawLine((int)x1, y1, (int)(X1), 400);		

	}
	

		
	public void drawOscope5Line(int x1, int y1, int x2, int y2) {
		float X1 = (float) (400 * Math.cos((double)x1/100) + Math.sin((double)x1/100));	
			g.drawLine((int)x1, y1, (int)(X1), 400);			
	}



	public void drawOscope6Line(int x1, int y1, int x2, int y2) {
		float X1 = (float) (400 * Math.cos((double)x1/100) + Math.sin((double)x1/100));	
			g.drawLine((int)x1, y1, (int)(X1), 400);		
	}


	public void drawOscope7Line(int x1, int y1, int x2, int y2) {

		float X1 = (float) (400 * Math.cos((double)x1/100) + Math.sin((double)x1/100));	
			g.drawLine((int)x1, y1, (int)(X1), 400);		
	}
	
	
	
	public void drawOscope8Line(int x1, int y1, int x2, int y2) {

		float X1 = (float) (400 * Math.cos((double)x1/100) + Math.sin((double)x1/100));	
			g.drawLine((int)x1, y1, (int)(X1), 400);		
	}
	
		
	
	public void drawOscope9Line(int x1, int y1, int x2, int y2) {

		float X1 = (float) (400 * Math.cos((double)x1/100) + Math.sin((double)x1/100));	
			g.drawLine((int)x1, y1, (int)(X1), 400);		

	}




	public void drawOscope10Line(int x1, int y1, int x2, int y2) {
		
		float X1 = (float) (400 * Math.cos((double)x1/100) + Math.sin((double)x1/100));	
			g.drawLine((int)x1, y1, (int)(X1), 400);		
		
	}
		
	public void drawOscope11Line(int x1, int y1, int x2, int y2) {

			float X1 = (float) (400 * Math.cos((double)x1/100) + Math.sin((double)x1/100));	
			g.drawLine((int)x1, y1, (int)(X1), 400);		

	}
		
	public void drawOscope12Line(int x1, int y1, int x2, int y2) {

		float X1 = (float) (400 * Math.cos((double)x1/100) + Math.sin((double)x1/100));	
			g.drawLine((int)x1, y1, (int)(X1), 400);		
		
	}



}
