org.apache.commons.math3.geometry.euclidean.oned
Class OrientedPoint

java.lang.Object
  extended by org.apache.commons.math3.geometry.euclidean.oned.OrientedPoint
All Implemented Interfaces:
Hyperplane<Euclidean1D>

public class OrientedPoint
extends Object
implements Hyperplane<Euclidean1D>

This class represents a 1D oriented hyperplane.

An hyperplane in 1D is a simple point, its orientation being a boolean.

Instances of this class are guaranteed to be immutable.

Since:
3.0
Version:
$Id: OrientedPoint.java 1416643 2012-12-03 19:37:14Z tn $

Constructor Summary
OrientedPoint(Vector1D location, boolean direct)
          Simple constructor.
 
Method Summary
 OrientedPoint copySelf()
          Copy the instance.
 Vector1D getLocation()
          Get the hyperplane location on the real line.
 double getOffset(Vector<Euclidean1D> point)
          Get the offset (oriented distance) of a point.
 boolean isDirect()
          Check if the hyperplane orientation is direct.
 void revertSelf()
          Revert the instance.
 boolean sameOrientationAs(Hyperplane<Euclidean1D> other)
          Check if the instance has the same orientation as another hyperplane.
 SubOrientedPoint wholeHyperplane()
          Build a region covering the whole hyperplane.
 IntervalsSet wholeSpace()
          Build a region covering the whole space.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OrientedPoint

public OrientedPoint(Vector1D location,
                     boolean direct)
Simple constructor.

Parameters:
location - location of the hyperplane
direct - if true, the plus side of the hyperplane is towards abscissas greater than location
Method Detail

copySelf

public OrientedPoint copySelf()
Copy the instance.

Since instances are immutable, this method directly returns the instance.

Specified by:
copySelf in interface Hyperplane<Euclidean1D>
Returns:
the instance itself

getOffset

public double getOffset(Vector<Euclidean1D> point)
Get the offset (oriented distance) of a point.

The offset is 0 if the point is on the underlying hyperplane, it is positive if the point is on one particular side of the hyperplane, and it is negative if the point is on the other side, according to the hyperplane natural orientation.

Specified by:
getOffset in interface Hyperplane<Euclidean1D>
Parameters:
point - point to check
Returns:
offset of the point

wholeHyperplane

public SubOrientedPoint wholeHyperplane()
Build a region covering the whole hyperplane.

Since this class represent zero dimension spaces which does not have lower dimension sub-spaces, this method returns a dummy implementation of a SubHyperplane. This implementation is only used to allow the SubHyperplane class implementation to work properly, it should not be used otherwise.

Specified by:
wholeHyperplane in interface Hyperplane<Euclidean1D>
Returns:
a dummy sub hyperplane

wholeSpace

public IntervalsSet wholeSpace()
Build a region covering the whole space.

Specified by:
wholeSpace in interface Hyperplane<Euclidean1D>
Returns:
a region containing the instance (really an IntervalsSet instance)

sameOrientationAs

public boolean sameOrientationAs(Hyperplane<Euclidean1D> other)
Check if the instance has the same orientation as another hyperplane.

This method is expected to be called on parallel hyperplanes. The method should not re-check for parallelism, only for orientation, typically by testing something like the sign of the dot-products of normals.

Specified by:
sameOrientationAs in interface Hyperplane<Euclidean1D>
Parameters:
other - other hyperplane to check against the instance
Returns:
true if the instance and the other hyperplane have the same orientation

getLocation

public Vector1D getLocation()
Get the hyperplane location on the real line.

Returns:
the hyperplane location

isDirect

public boolean isDirect()
Check if the hyperplane orientation is direct.

Returns:
true if the plus side of the hyperplane is towards abscissae greater than hyperplane location

revertSelf

public void revertSelf()
Revert the instance.



Copyright © 2003-2012 The Apache Software Foundation. All Rights Reserved.