projects
/
sixth-3d.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Updated readability of the code.
[sixth-3d.git]
/
src
/
main
/
java
/
eu
/
svjatoslav
/
sixth
/
e3d
/
geometry
/
Point2D.java
diff --git
a/src/main/java/eu/svjatoslav/sixth/e3d/geometry/Point2D.java
b/src/main/java/eu/svjatoslav/sixth/e3d/geometry/Point2D.java
index
834ffb1
..
c272047
100755
(executable)
--- a/
src/main/java/eu/svjatoslav/sixth/e3d/geometry/Point2D.java
+++ b/
src/main/java/eu/svjatoslav/sixth/e3d/geometry/Point2D.java
@@
-1,16
+1,14
@@
/*
/*
- * Sixth 3D engine. Copyright ©2012-2019, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of version 3 of the GNU Lesser General Public License
- * or later as published by the Free Software Foundation.
- *
+ * Sixth 3D engine. Author: Svjatoslav Agejenko.
+ * This project is released under Creative Commons Zero (CC0) license.
*/
*/
-
package eu.svjatoslav.sixth.e3d.geometry;
import static java.lang.Math.sqrt;
package eu.svjatoslav.sixth.e3d.geometry;
import static java.lang.Math.sqrt;
+/**
+ * Used to represent point in a 2D space or vector.
+ */
public class Point2D implements Cloneable {
public double x, y;
public class Point2D implements Cloneable {
public double x, y;
@@
-23,17
+21,26
@@
public class Point2D implements Cloneable {
this.y = y;
}
this.y = y;
}
- public Point2D(final Point2D
source
) {
- x =
source
.x;
- y =
source
.y;
+ public Point2D(final Point2D
parent
) {
+ x =
parent
.x;
+ y =
parent
.y;
}
}
- public Point2D add(final Point2D direction) {
- x += direction.x;
- y += direction.y;
+
+ /**
+ * Add other point to current point. Value of other point will not be changed.
+ *
+ * @return current point.
+ */
+ public Point2D add(final Point2D otherPoint) {
+ x += otherPoint.x;
+ y += otherPoint.y;
return this;
}
return this;
}
+ /**
+ * @return true if current point coordinates are equal to zero.
+ */
public boolean isZero() {
return (x == 0) && (y == 0);
}
public boolean isZero() {
return (x == 0) && (y == 0);
}
@@
-43,12
+50,22
@@
public class Point2D implements Cloneable {
return new Point2D(this);
}
return new Point2D(this);
}
- public void clone(final Point2D source) {
- x = source.x;
- y = source.y;
+ /**
+ * Copy coordinates from other point to current point. Value of other point will not be changed.
+ */
+ public void clone(final Point2D otherPoint) {
+ x = otherPoint.x;
+ y = otherPoint.y;
}
}
- public Point2D getMiddle(final Point2D p1, final Point2D p2) {
+ /**
+ * Set current point to middle of two other points.
+ *
+ * @param p1 first point.
+ * @param p2 second point.
+ * @return current point.
+ */
+ public Point2D setToMiddle(final Point2D p1, final Point2D p2) {
x = (p1.x + p2.x) / 2d;
y = (p1.y + p2.y) / 2d;
return this;
x = (p1.x + p2.x) / 2d;
y = (p1.y + p2.y) / 2d;
return this;
@@
-60,6
+77,9
@@
public class Point2D implements Cloneable {
/**
* Compute distance to another point.
/**
* Compute distance to another point.
+ *
+ * @param anotherPoint point to compute distance to.
+ * @return distance from current point to another point.
*/
public double getDistanceTo(final Point2D anotherPoint) {
final double xDiff = x - anotherPoint.x;
*/
public double getDistanceTo(final Point2D anotherPoint) {
final double xDiff = x - anotherPoint.x;
@@
-68,31
+88,59
@@
public class Point2D implements Cloneable {
return sqrt(((xDiff * xDiff) + (yDiff * yDiff)));
}
return sqrt(((xDiff * xDiff) + (yDiff * yDiff)));
}
+ /**
+ * Calculate length of vector.
+ * @return length of vector.
+ */
public double getVectorLength() {
return sqrt(((x * x) + (y * y)));
}
public double getVectorLength() {
return sqrt(((x * x) + (y * y)));
}
+ /**
+ * Invert current point.
+ *
+ * @return current point.
+ */
public Point2D invert() {
x = -x;
y = -y;
return this;
}
public Point2D invert() {
x = -x;
y = -y;
return this;
}
+ /**
+ * Round current point coordinates to integer.
+ */
public void roundToInteger() {
x = (int) x;
y = (int) y;
}
public void roundToInteger() {
x = (int) x;
y = (int) y;
}
- public Point2D subtract(final Point2D point) {
- x -= point.x;
- y -= point.y;
+ /**
+ * Subtract other point from current point. Value of other point will not be changed.
+ *
+ * @return current point.
+ */
+ public Point2D subtract(final Point2D otherPoint) {
+ x -= otherPoint.x;
+ y -= otherPoint.y;
return this;
}
return this;
}
+ /**
+ * Convert current point to 3D point.
+ * Value of the z coordinate will be set to zero.
+ *
+ * @return 3D point.
+ */
public Point3D to3D() {
return new Point3D(x, y, 0);
}
public Point3D to3D() {
return new Point3D(x, y, 0);
}
+ /**
+ * Set current point to zero.
+ *
+ * @return current point.
+ */
public Point2D zero() {
x = 0;
y = 0;
public Point2D zero() {
x = 0;
y = 0;