// rotate_prime.java given y=f(x) and point xc, rotate function and derivative import java.awt.*; import java.awt.event.*; import java.io.*; public class rotate_prime extends Frame { double xmin = 0.005; double xmax = 1.0; double xoff = 50.0; double yoff = 600.0; double scale = 900.0; // for plotting double xtop, ytop, xbot, ybot, xfront, yfront; // special points int height = 1000; // upper part for title int width = 1000; // upper part for title double Pi = 3.14159265358979323846; double angle_deg = 22.0; // may be read in String angle_ch = "22"; double angle; double xc = 0.3; // rotate about point int n = 0; rotate_prime() { System.out.println("rotate_prime.java running"); angle = Pi*angle_deg/180.0; setTitle("rotate_prime"+angle_ch); setSize(width,height); setBackground(Color.white); setForeground(Color.black); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); setVisible(true); } // end constructor rotate_prime public void paint(Graphics g) { double x1, y1, x2, y2, dx; g.setColor(Color.black); g.drawString("rotate_prime "+angle_ch, 20, 50); g.drawLine((int)(xoff),height,(int)(xoff),0); g.drawLine(0,height-(int)(yoff),width,height-(int)(yoff)); g.setColor(Color.green); g.drawString("rotated function fry "+angle_ch, 20, 70); g.setColor(Color.red); g.drawString("rotated prime top "+angle_ch, 20, 90); g.setColor(Color.blue); g.drawString("rotated prime bottom "+angle_ch, 20, 110); g.setColor(Color.black); g.drawString("slope top "+angle_ch, 20, 130); n = 40; dx = (xmax-xmin)/(double)(n-1); for(int j=0; j