objects
Class EuParametrized

java.lang.Object
  |
  +--objects.EuObject
        |
        +--objects.EuParametrized
All Implemented Interfaces:
java.lang.Cloneable
Direct Known Subclasses:
EuCircle, EuLine

public abstract class EuParametrized
extends EuObject

An instance of this class represents a point, represented as a cartesian pair.


Field Summary
 fundamentals.EuVector anchor
          An anchor point on the object, corresponds to parameter 0
 
Fields inherited from class objects.EuObject
infoHash, provenience, scaledown
 
Constructor Summary
EuParametrized()
          Contructor for dummy object
EuParametrized(double x, double y)
          Creates a new EuParametrized instance.
EuParametrized(fundamentals.EuVector anchor)
          Creates a new EuParametrized instance.
 
Method Summary
abstract  fundamentals.EuVector atParameter(double t)
          Returns the cartesian coordinates at the parameter in the internal representation of the object.
 fundamentals.EuVector atParameter(fundamentals.EuAngle t)
          Return in a EuVector the coordinates of a point on the circle at a given angle.
 fundamentals.EuVector atParameter(fundamentals.EuReal t)
          Returns the cartesian coordinates at the parameter in the internal representation of the object
abstract  double closestParameter(double x, double y)
          Returns the parameter of the point on the object closest to a specified point,
 double closestParameter(fundamentals.EuVector point)
          Returns the parameter of the point on the object closest to a specified point,
 boolean closureContains(fundamentals.EuVector point)
          See if passed point lies on the object.
 double confusionDistance(objects.EuObject other)
          Returns the distance from this object to another under these simplifications: The distance to lines or circles is in {0,POSITIVE_INFINITY} unless this is a point.
 double distance(fundamentals.EuVector point)
          Describe distance method here.
 boolean interiorContains(fundamentals.EuVector point)
          See if passed point lies in the interior of the object.
protected abstract  fundamentals.EuVector invisibleRandomPoint(fundamentals.mouseInfo info, java.util.Random croupier)
          Describe invisibleRandomPoint method here.
protected  boolean matchingPair(fundamentals.EuVector a, fundamentals.EuVector b, fundamentals.EuVector c, fundamentals.EuVector d)
          Describe matchingPair method here.
 fundamentals.EuVector nameLocation(fundamentals.mouseInfo info)
          Describe nameLocation method here.
protected abstract  double nameParameter(fundamentals.mouseInfo info)
          Describe nameParameter method here.
 java.lang.String params()
          Describe params method here.
 void passArguments(fundamentals.EuArguments args)
          Read off parameters describing the object and add to passed EuArguments instance
 fundamentals.EuVector randomPoint(fundamentals.mouseInfo info, java.util.Random croupier)
          Describe randomPoint method here.
 
Methods inherited from class objects.EuObject
castIdentical, cloneObject, computeClip, draw, equals, getClip, isFull, isVisible, mouseVicinity, mouseVicinity, nameDisplacementAngle, overlaps, toNaturalLanguage, toPs, toString, typeName
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

anchor

public fundamentals.EuVector anchor
An anchor point on the object, corresponds to parameter 0

Constructor Detail

EuParametrized

public EuParametrized(fundamentals.EuVector anchor)
               throws UserException
Creates a new EuParametrized instance.

Parameters:
anchor - an EuVector value
Throws:
UserException - if an error occurs

EuParametrized

public EuParametrized(double x,
                      double y)
               throws UserException
Creates a new EuParametrized instance.

Parameters:
x - a double value
y - a double value
Throws:
UserException - if an error occurs

EuParametrized

public EuParametrized()
Contructor for dummy object

Method Detail

atParameter

public abstract fundamentals.EuVector atParameter(double t)
Returns the cartesian coordinates at the parameter in the internal representation of the object.

Parameters:
t - a double value
Returns:
a workVector containing the coordinates @param t the parameter

atParameter

public fundamentals.EuVector atParameter(fundamentals.EuReal t)
Returns the cartesian coordinates at the parameter in the internal representation of the object

Parameters:
t - the parameter
Returns:
a workVector containing the coordinates @param

atParameter

public fundamentals.EuVector atParameter(fundamentals.EuAngle t)
Return in a EuVector the coordinates of a point on the circle at a given angle.

Parameters:
t - the parameter
Returns:
the coordinates

interiorContains

public boolean interiorContains(fundamentals.EuVector point)
See if passed point lies in the interior of the object. Subclasses must take care of end points.

Specified by:
interiorContains in class EuObject
Parameters:
point - an EuVector value
Returns:
true if passed point lies in the interior of the object. @param point the point being compared to the present object.

closureContains

public boolean closureContains(fundamentals.EuVector point)
See if passed point lies on the object.

Specified by:
closureContains in class EuObject
Parameters:
point - an EuVector value
Returns:
true if passed point lies on the object. @param point the point being compared to the present object

distance

public double distance(fundamentals.EuVector point)
Describe distance method here.

Specified by:
distance in class EuObject
Parameters:
point - an EuVector value
Returns:
a double value

closestParameter

public abstract double closestParameter(double x,
                                        double y)
Returns the parameter of the point on the object closest to a specified point,

Parameters:
x - a double value
y - a double value
Returns:
the parameter @param x the first coordinate of the point @param y the second coordinate of the point

closestParameter

public double closestParameter(fundamentals.EuVector point)
Returns the parameter of the point on the object closest to a specified point,

Parameters:
point - the point
Returns:
the parameter

confusionDistance

public double confusionDistance(objects.EuObject other)
Returns the distance from this object to another under these simplifications: The distance to lines or circles is in {0,POSITIVE_INFINITY} unless this is a point. The distance to radii is POSITIVE_INFINITY unless this is a radius The distance to points is POSITIVE_INFINITY if this is a radius

Specified by:
confusionDistance in class EuObject
Parameters:
other - an EuObject value
Returns:
the parameter or zero @param point the point

matchingPair

protected boolean matchingPair(fundamentals.EuVector a,
                               fundamentals.EuVector b,
                               fundamentals.EuVector c,
                               fundamentals.EuVector d)
Describe matchingPair method here.

Parameters:
a - an EuVector value
b - an EuVector value
c - an EuVector value
d - an EuVector value
Returns:
a boolean value

params

public java.lang.String params()
Describe params method here.

Overrides:
params in class EuObject
Returns:
A technical specification of parameters associated to the object

invisibleRandomPoint

protected abstract fundamentals.EuVector invisibleRandomPoint(fundamentals.mouseInfo info,
                                                              java.util.Random croupier)
                                                       throws UserException
Describe invisibleRandomPoint method here.

Parameters:
info - a mouseInfo value
croupier - a Random value
Returns:
an EuVector value
Throws:
UserException - if an error occurs

randomPoint

public fundamentals.EuVector randomPoint(fundamentals.mouseInfo info,
                                         java.util.Random croupier)
                                  throws InternalException,
                                         UserException,
                                         DesignException
Describe randomPoint method here.

Parameters:
info - a mouseInfo value
croupier - a Random value
Returns:
an EuVector value
Throws:
InternalException - if an error occurs
UserException - if an error occurs
DesignException

passArguments

public void passArguments(fundamentals.EuArguments args)
Read off parameters describing the object and add to passed EuArguments instance

Specified by:
passArguments in class EuObject
Parameters:
args - an EuArguments value

nameParameter

protected abstract double nameParameter(fundamentals.mouseInfo info)
Describe nameParameter method here.

Parameters:
info - a mouseInfo value
Returns:
a double value

nameLocation

public fundamentals.EuVector nameLocation(fundamentals.mouseInfo info)
Describe nameLocation method here.

Specified by:
nameLocation in class EuObject
Parameters:
info - a mouseInfo value
Returns:
an EuVector value