//This file is part of SECONDO. //Copyright (C) 2004, University in Hagen, Department of Computer Science, //Database Systems for New Applications. //SECONDO is free software; you can redistribute it and/or modify //it under the terms of the GNU General Public License as published by //the Free Software Foundation; either version 2 of the License, or //(at your option) any later version. //SECONDO is distributed in the hope that it will be useful, //but WITHOUT ANY WARRANTY; without even the implied warranty of //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //GNU General Public License for more details. //You should have received a copy of the GNU General Public License //along with SECONDO; if not, write to the Free Software //Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA package viewer.viewer3d.graphic2d; import java.awt.*; import java.awt.image.*; import gui.idmanager.*; /*************************** * * Autor : Thomas Behr * Version : 1.1 * Datum : 16.5.2000 * ****************************/ /** this class provides a colorized Point-Object*/ public class Point2D { protected double x_pos; protected double y_pos; protected int cr,cg,cb; // Colorvalues for this Point public String toString() { return "[( " + x_pos + " , "+ y_pos + "),("+cr+","+cg+","+cb+")]"; } /** creates a new Point from gives values */ public Point2D(double x, double y,int r,int g,int b) { x_pos=x; y_pos = y; cr=r; cg = g; cb = b; } /** creates a new Point from given values */ public Point2D(double x, double y, Color C) { x_pos = x; y_pos = y; cr = C.getRed(); cg = C.getGreen(); cb = C.getBlue(); } /** equalize this to source */ public void equalize(Point2D Source) { x_pos = Source.x_pos; y_pos = Source.y_pos; cr = Source.cr; cg = Source.cg; cb = Source.cb; } /** returns a copy from this */ public Point2D duplicate() { return new Point2D(x_pos,y_pos,cr,cg,cb); } /** check for equality */ public boolean equals(Point2D Pt) { return (x_pos == Pt.x_pos) && (y_pos ==Pt.y_pos) && (cr == Pt.cr) && (cg==Pt.cg) && (cb==Pt.cg); } /** check for equal position */ public boolean equalsCoordinates(Point2D P){ return x_pos==P.x_pos && y_pos == P.y_pos; } /** returns the x-coordinate of this point*/ public double getX() { return x_pos; } /** returns the y-coordinate of this point*/ public double getY() { return y_pos; } /** set the x-coordinate */ public void setX(double x) { x_pos = x; } /** set the y-coordinate */ public void setY(double y) { y_pos = y; } /** set the x and the y-coordinate */ public void moveTo(double x, double y) { x_pos = x; y_pos = y; } /** get the red-part of the color of this point */ public int getRed() { return cr; } /** get the green-part of the color of this point */ public int getGreen() { return cg; } /** get the blue-part of the color of this point */ public int getBlue() { return cb; } /** returns the distance to Pt2 */ public double distance(Point2D Pt2) { double x,y,d; x = x_pos-Pt2.x_pos; y = y_pos-Pt2.y_pos; d = Math.sqrt(x*x + y*y); return d; } } // class Point2D