Posted by: CIGG March 27, 2007
Java Help needed
Login in to Rate this Post:     0       ?        
import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.io.*; import java.lang.Object.*; public class ProblemB { static int Counter ; static int windowWidth; static int windowHeight; // FOUR WINDOW CORNERS static int x1; static int y1; static int x2; static int y2; static int x3; static int y3; static int x4; static int y4; static boolean flag; static int T1; // Diagonal Point static int diagonalPointX; static int diagonalPointY; static int triangle1Y1; static int triangle1Y2; static class MyFrame extends JFrame { public void paint (Graphics g) { super.paint(g); System.out.println("printing " + Counter); if (flag){ g.setColor(Color.BLUE); } else { g.setColor(Color.BLACK); } g.drawString( new Integer (Counter).toString(),50,50); g.drawLine( 5, 30, windowWidth-5,windowHeight-2 ); g.drawLine(5,windowHeight-2, windowWidth-5, 30 ); } } static MyFrame frame; public static void main (String[] args) { windowWidth = 200; // Default window Width windowHeight = 200; // Default Window Height frame = new MyFrame (); Dimension Size = new Dimension (windowWidth,windowHeight); //Vec2d[] Vertex1 = new Vec2d[100]; class MyAdapter extends MouseAdapter { public void mouseClicked (MouseEvent e) { Counter++; if (Counter%2==0) { flag = true; } else { flag = false; } frame.repaint(); x1 = 5; y1 = 30; x2 = windowWidth-5 ; y2 = 30; x3 = windowWidth; y3 = windowHeight-2; x4 = 0; y4 = windowHeight-2; // Diagonal Point diagonalPointX = (x1+x3)/2 ; diagonalPointY = (y1+y3)/2; // System.out.println(diagonalPointX +","+diagonalPointY); Point x_y = new Point(e.getX(),e.getY()); // System.out.println(" point " +x_y); // swcond point on diagonal 1 triangle1Y1 = (((y3-y1)/(x3-x1))*(x2-x1))+y1; triangle1Y2 = (((y4-y2)/(x4-x2))*(x1 -x2))+y2; if(triangle1Y1y2){ if(e.getY()>y2){ T1++; } } if(triangle1Y2y1){ if(e.getY()>y1){ T1++; } } System.out.println(triangle1Y1+" "+triangle1Y2); if(T1==2){ System.out.println("The point is inside triangle 1."); } T1=0; } } class MyWindowAdapter extends WindowAdapter { public void windowClosing (WindowEvent e) { System.exit(0); } } class MyComponentAdapter extends ComponentAdapter { public void componentResized(ComponentEvent e) { windowHeight = frame.getSize().height; windowWidth = frame.getSize().width; frame.repaint(); } } MyAdapter MyAdapterObject = new MyAdapter(); MyWindowAdapter MyWindowAdapterObject = new MyWindowAdapter(); MyComponentAdapter MyComponentAdapterObject = new MyComponentAdapter(); Counter = 0; T1=0; x1 = 5; y1 = 30; x2 = windowWidth-5 ; y2 = 30; x3 = windowWidth; y3 = windowHeight-2; x4 = 0; y4 = windowHeight-2; triangle1Y1 = 0; triangle1Y2 = 0; flag =false; // Diagonal Point diagonalPointX = (x1+x3)/2 ; diagonalPointY = (y1+y3)/2; frame.addMouseListener(MyAdapterObject); frame.addWindowListener (MyWindowAdapterObject); frame.addComponentListener (MyComponentAdapterObject); frame.setSize(Size); frame.setVisible(true); } } -------------------------------------------------------------------------------------------------- Edit the code to what you want from it.
Read Full Discussion Thread for this article