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