Interface UnmodifiablePoint2D<RP extends Point2D<? super RP,? super RV>,RV extends Vector2D<? super RV,? super RP>>
-
- Type Parameters:
RP
- is the type of points that can be returned by this tuple.RV
- is the type of vectors that can be returned by this tuple.
- All Superinterfaces:
Cloneable
,JsonableObject
,Point2D<RP,RV>
,Serializable
,Tuple2D<RP>
,UnmodifiableTuple2D<RP>
- All Known Implementing Classes:
ImmutablePoint2D
public interface UnmodifiablePoint2D<RP extends Point2D<? super RP,? super RV>,RV extends Vector2D<? super RV,? super RP>> extends UnmodifiableTuple2D<RP>, Point2D<RP,RV>
Unmodifiable2D Point.- Since:
- 13.0
- Version:
- 17.0 2020-01-04 14:41:43
- Author:
- Stéphane GALLAND
- Maven Group Id:
- org.arakhne.afc.core
- Maven Artifact Id:
- mathgeom
-
-
Method Summary
All Methods Instance Methods Default Methods Modifier and Type Method Description default void
add(Point2D<?,?> point, Vector2D<?,?> vector)
Sets the value of this tuple to the sum of tuples t1 and t2.default void
add(Vector2D<?,?> vector)
Sets the value of this tuple to the sum of itself and t1.default void
add(Vector2D<?,?> vector, Point2D<?,?> point)
Sets the value of this tuple to the sum of tuples t1 and t2.default void
operator_add(Vector2D<?,?> v)
Increment this point with the given vector:this += v
.default void
operator_remove(Vector2D<?,?> v)
Subtract the v vector to this:this -= v
.default void
scaleAdd(double scale, Point2D<?,?> point, Vector2D<?,?> vector)
Sets the value of this tuple to the scalar multiplication of tuple t1 plus tuple t2 (this = s*point + vector).default void
scaleAdd(double scale, Vector2D<?,?> vector)
Sets the value of this tuple to the scalar multiplication of itself and then adds tuple t1 (this = s*this + vector).default void
scaleAdd(double scale, Vector2D<?,?> vector, Point2D<?,?> point)
Sets the value of this tuple to the scalar multiplication of tuple t1 plus tuple t2 (this = s*vector + point).default void
scaleAdd(int scale, Point2D<?,?> point, Vector2D<?,?> vector)
Sets the value of this tuple to the scalar multiplication of tuple t1 plus tuple t2 (this = s*point + vector).default void
scaleAdd(int scale, Vector2D<?,?> vector)
Sets the value of this tuple to the scalar multiplication of itself and then adds tuple t1 (this = s*this + vector).default void
scaleAdd(int scale, Vector2D<?,?> vector, Point2D<?,?> point)
Sets the value of this tuple to the scalar multiplication of tuple t1 plus tuple t2 (this = s*vector + point).default void
sub(Point2D<?,?> point, Vector2D<?,?> vector)
Sets the value of this tuple to the difference of tuples point and vector (this = point - vector).default void
sub(Vector2D<?,?> vector)
Sets the value of this tuple to the difference of itself and the given vector (this = this - vector).default UnmodifiablePoint2D<RP,RV>
toUnmodifiable()
Replies an unmodifiable copy of this point.default void
turn(double angle)
Turn this point about the given rotation angle around the origin point.default void
turn(double angle, Point2D<?,?> pointToTurn)
Turn the given point about the given rotation angle around the origin point, and set this point with the result.default void
turn(double angle, Point2D<?,?> pointToTurn, Point2D<?,?> origin)
Turn the given point about the given rotation angle around the origin point, and set this point with the result.default void
turnLeft(double angle)
Turn this vector on the left around the origin when the given rotation angle is positive.default void
turnLeft(double angle, Point2D<?,?> pointToTurn)
Turn the given vector on the left, and set this vector with the result.default void
turnLeft(double angle, Point2D<?,?> pointToTurn, Point2D<?,?> origin)
Turn the given vector on the left, and set this vector with the result.default void
turnRight(double angle)
Turn this vector on the right around the origin when the given rotation angle is positive.default void
turnRight(double angle, Point2D<?,?> pointToTurn)
Turn this vector on the right around the origin when the given rotation angle is positive.default void
turnRight(double angle, Point2D<?,?> pointToTurn, Point2D<?,?> origin)
Turn this vector on the right around the origin when the given rotation angle is positive.-
Methods inherited from interface org.arakhne.afc.vmutil.json.JsonableObject
toJson
-
Methods inherited from interface org.arakhne.afc.math.geometry.d2.Point2D
$amp$amp, $minus, $minus, $minus, $plus, $plus, getDistance, getDistanceL1, getDistanceLinf, getDistanceSquared, getGeomFactory, getIdistanceL1, getIdistanceLinf, operator_and, operator_elvis, operator_equals, operator_minus, operator_minus, operator_minus, operator_notEquals, operator_plus, operator_plus, operator_upTo, operator_upTo
-
Methods inherited from interface org.arakhne.afc.math.geometry.d2.Tuple2D
clone, epsilonEquals, equals, equals, get, get, get, getX, getY, hashCode, ix, iy
-
Methods inherited from interface org.arakhne.afc.math.geometry.d2.UnmodifiableTuple2D
absolute, absolute, add, add, addX, addX, addY, addY, clamp, clamp, clamp, clamp, clampMax, clampMax, clampMax, clampMax, clampMin, clampMin, clampMin, clampMin, interpolate, interpolate, negate, negate, scale, scale, scale, scale, set, set, set, set, set, setX, setX, setY, setY, sub, sub, subX, subX, subY, subY
-
-
-
-
Method Detail
-
add
default void add(Point2D<?,?> point, Vector2D<?,?> vector)
Description copied from interface:Point2D
Sets the value of this tuple to the sum of tuples t1 and t2.
-
add
default void add(Vector2D<?,?> vector, Point2D<?,?> point)
Description copied from interface:Point2D
Sets the value of this tuple to the sum of tuples t1 and t2.
-
add
default void add(Vector2D<?,?> vector)
Description copied from interface:Point2D
Sets the value of this tuple to the sum of itself and t1.
-
scaleAdd
default void scaleAdd(int scale, Vector2D<?,?> vector, Point2D<?,?> point)
Description copied from interface:Point2D
Sets the value of this tuple to the scalar multiplication of tuple t1 plus tuple t2 (this = s*vector + point).
-
scaleAdd
default void scaleAdd(double scale, Vector2D<?,?> vector, Point2D<?,?> point)
Description copied from interface:Point2D
Sets the value of this tuple to the scalar multiplication of tuple t1 plus tuple t2 (this = s*vector + point).
-
scaleAdd
default void scaleAdd(int scale, Point2D<?,?> point, Vector2D<?,?> vector)
Description copied from interface:Point2D
Sets the value of this tuple to the scalar multiplication of tuple t1 plus tuple t2 (this = s*point + vector).
-
scaleAdd
default void scaleAdd(double scale, Point2D<?,?> point, Vector2D<?,?> vector)
Description copied from interface:Point2D
Sets the value of this tuple to the scalar multiplication of tuple t1 plus tuple t2 (this = s*point + vector).
-
scaleAdd
default void scaleAdd(int scale, Vector2D<?,?> vector)
Description copied from interface:Point2D
Sets the value of this tuple to the scalar multiplication of itself and then adds tuple t1 (this = s*this + vector).
-
scaleAdd
default void scaleAdd(double scale, Vector2D<?,?> vector)
Description copied from interface:Point2D
Sets the value of this tuple to the scalar multiplication of itself and then adds tuple t1 (this = s*this + vector).
-
sub
default void sub(Point2D<?,?> point, Vector2D<?,?> vector)
Description copied from interface:Point2D
Sets the value of this tuple to the difference of tuples point and vector (this = point - vector).
-
sub
default void sub(Vector2D<?,?> vector)
Description copied from interface:Point2D
Sets the value of this tuple to the difference of itself and the given vector (this = this - vector).
-
toUnmodifiable
@Pure default UnmodifiablePoint2D<RP,RV> toUnmodifiable()
Description copied from interface:Point2D
Replies an unmodifiable copy of this point.
-
operator_add
default void operator_add(Vector2D<?,?> v)
Description copied from interface:Point2D
Increment this point with the given vector:this += v
.This function is an implementation of the operator for the languages that defined or based on the Xtext framework.
-
operator_remove
default void operator_remove(Vector2D<?,?> v)
Description copied from interface:Point2D
Subtract the v vector to this:this -= v
.This function is an implementation of the operator for the languages that defined or based on the Xtext framework.
-
turn
default void turn(double angle)
Description copied from interface:Point2D
Turn this point about the given rotation angle around the origin point.The rotation is done according to the trigonometric coordinate. A positive rotation angle corresponds to a left or right rotation according to the current
CoordinateSystem2D
.- Specified by:
turn
in interfacePoint2D<RP extends Point2D<? super RP,? super RV>,RV extends Vector2D<? super RV,? super RP>>
- Parameters:
angle
- is the rotation angle in radians.- See Also:
Point2D.turn(double, Point2D, Point2D)
,Point2D.turnLeft(double)
,Point2D.turnRight(double)
-
turn
default void turn(double angle, Point2D<?,?> pointToTurn)
Description copied from interface:Point2D
Turn the given point about the given rotation angle around the origin point, and set this point with the result.The rotation is done according to the trigonometric coordinate. A positive rotation angle corresponds to a left or right rotation according to the current
CoordinateSystem2D
.- Specified by:
turn
in interfacePoint2D<RP extends Point2D<? super RP,? super RV>,RV extends Vector2D<? super RV,? super RP>>
- Parameters:
angle
- is the rotation angle in radians.pointToTurn
- the point to turn.- See Also:
Point2D.turn(double, Point2D, Point2D)
,Point2D.turn(double)
,Point2D.turnLeft(double)
,Point2D.turnRight(double)
-
turn
default void turn(double angle, Point2D<?,?> pointToTurn, Point2D<?,?> origin)
Description copied from interface:Point2D
Turn the given point about the given rotation angle around the origin point, and set this point with the result.The rotation is done according to the trigonometric coordinate. A positive rotation angle corresponds to a left or right rotation according to the current
CoordinateSystem2D
.- Specified by:
turn
in interfacePoint2D<RP extends Point2D<? super RP,? super RV>,RV extends Vector2D<? super RV,? super RP>>
- Parameters:
angle
- is the rotation angle in radians.pointToTurn
- the point to turn.origin
- the origin point.- See Also:
Point2D.turn(double, Point2D)
,Point2D.turn(double)
,Point2D.turnLeft(double)
,Point2D.turnRight(double)
-
turnLeft
default void turnLeft(double angle)
Description copied from interface:Point2D
Turn this vector on the left around the origin when the given rotation angle is positive.A positive rotation angle corresponds to a left or right rotation according to the current
CoordinateSystem2D
.- Specified by:
turnLeft
in interfacePoint2D<RP extends Point2D<? super RP,? super RV>,RV extends Vector2D<? super RV,? super RP>>
- Parameters:
angle
- is the rotation angle in radians.- See Also:
CoordinateSystem2D
,Point2D.turnLeft(double, Point2D, Point2D)
,Point2D.turn(double)
,Point2D.turnRight(double)
-
turnLeft
default void turnLeft(double angle, Point2D<?,?> pointToTurn)
Description copied from interface:Point2D
Turn the given vector on the left, and set this vector with the result.A positive rotation angle corresponds to a left or right rotation according to the current
CoordinateSystem2D
.- Specified by:
turnLeft
in interfacePoint2D<RP extends Point2D<? super RP,? super RV>,RV extends Vector2D<? super RV,? super RP>>
- Parameters:
angle
- is the rotation angle in radians.pointToTurn
- the vector to turn.- See Also:
CoordinateSystem2D
,Point2D.turnLeft(double, Point2D, Point2D)
,Point2D.turn(double)
,Point2D.turnRight(double)
-
turnLeft
default void turnLeft(double angle, Point2D<?,?> pointToTurn, Point2D<?,?> origin)
Description copied from interface:Point2D
Turn the given vector on the left, and set this vector with the result.A positive rotation angle corresponds to a left or right rotation according to the current
CoordinateSystem2D
.- Specified by:
turnLeft
in interfacePoint2D<RP extends Point2D<? super RP,? super RV>,RV extends Vector2D<? super RV,? super RP>>
- Parameters:
angle
- is the rotation angle in radians.pointToTurn
- the vector to turn.origin
- the origin point.- See Also:
CoordinateSystem2D
,Point2D.turnLeft(double, Point2D)
,Point2D.turn(double)
,Point2D.turnRight(double)
-
turnRight
default void turnRight(double angle)
Description copied from interface:Point2D
Turn this vector on the right around the origin when the given rotation angle is positive.A positive rotation angle corresponds to a left or right rotation according to the current
CoordinateSystem2D
.- Specified by:
turnRight
in interfacePoint2D<RP extends Point2D<? super RP,? super RV>,RV extends Vector2D<? super RV,? super RP>>
- Parameters:
angle
- is the rotation angle in radians.- See Also:
CoordinateSystem2D
,Point2D.turn(double)
,Point2D.turnLeft(double)
-
turnRight
default void turnRight(double angle, Point2D<?,?> pointToTurn)
Description copied from interface:Point2D
Turn this vector on the right around the origin when the given rotation angle is positive.A positive rotation angle corresponds to a left or right rotation according to the current
CoordinateSystem2D
.- Specified by:
turnRight
in interfacePoint2D<RP extends Point2D<? super RP,? super RV>,RV extends Vector2D<? super RV,? super RP>>
- Parameters:
angle
- is the rotation angle in radians.pointToTurn
- the vector to turn.- See Also:
CoordinateSystem2D
,Point2D.turn(double)
,Point2D.turnLeft(double)
-
turnRight
default void turnRight(double angle, Point2D<?,?> pointToTurn, Point2D<?,?> origin)
Description copied from interface:Point2D
Turn this vector on the right around the origin when the given rotation angle is positive.A positive rotation angle corresponds to a left or right rotation according to the current
CoordinateSystem2D
.- Specified by:
turnRight
in interfacePoint2D<RP extends Point2D<? super RP,? super RV>,RV extends Vector2D<? super RV,? super RP>>
- Parameters:
angle
- is the rotation angle in radians.pointToTurn
- the vector to turn.origin
- the origin point.- See Also:
CoordinateSystem2D
,Point2D.turn(double)
,Point2D.turnLeft(double)
-
-