]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.scenegraph/src/com/infomatiq/jsi/Point.java
Added module header feature to SCL language.
[simantics/platform.git] / bundles / org.simantics.scenegraph / src / com / infomatiq / jsi / Point.java
1 //   Point.java
2 //   Java Spatial Index Library
3 //   Copyright (C) 2002-2005 Infomatiq Limited.
4 //  
5 //  This library is free software; you can redistribute it and/or
6 //  modify it under the terms of the GNU Lesser General Public
7 //  License as published by the Free Software Foundation; either
8 //  version 2.1 of the License, or (at your option) any later version.
9 //  
10 //  This library is distributed in the hope that it will be useful,
11 //  but WITHOUT ANY WARRANTY; without even the implied warranty of
12 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13 //  Lesser General Public License for more details.
14 //  
15 //  You should have received a copy of the GNU Lesser General Public
16 //  License along with this library; if not, write to the Free Software
17 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
18
19 package com.infomatiq.jsi;
20
21 /**
22  * Currently hardcoded to 2 dimensions, but could be extended.
23  * 
24  * @author  aled@sourceforge.net
25  * @version 1.0b8
26  */
27 public class Point {
28   /**
29    * The (x, y) coordinates of the point.
30    */
31   public float x, y;
32   
33   /**
34    * Constructor.
35    * 
36    * @param x The x coordinate of the point
37    * @param y The y coordinate of the point
38    */
39   public Point(float x, float y) {
40     this.x = x; 
41     this.y = y;
42   }
43   
44   /**
45    * Copy from another point into this one
46    */
47   public void set(Point other) {
48     x = other.x;
49     y = other.y;
50   }
51   
52   /**
53    * Print as a string in format "(x, y)"
54    */
55   public String toString() {
56     return "(" + x + ", " + y + ")";
57   }
58   
59   /**
60    * @return X coordinate rounded to an int
61    */
62   public int xInt() {
63     return (int) Math.round(x);
64   }
65   
66   /**
67    * @return Y coordinate rounded to an int
68    */
69   public int yInt() {
70     return (int) Math.round(y);
71   }
72 }