|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectsugr.Element
sugr.Entity
Entity is the super-class of Point_xD, Line_xD and Plane_3D. So it is a container for methods which are needed in all subclasses
Field Summary |
Fields inherited from class sugr.Element |
cov, MAXITER, v |
Constructor Summary | |
Entity()
|
Method Summary | |
void |
doCondition(double f)
Condition this element with a condition factor f. |
void |
doCondition(double[] f)
Condition that element with a set of conditioning factors. |
static double |
doCondition(Entity[] elist)
Do the conditioning of a set of entities. |
void |
ensureConstraintsWithoutIteration()
Change the entity (covariance not changed) in that way, that all constraints (given by getConstraintValue) are fulfilled. |
static double |
getConditionFactorF(Entity[] elist)
calculates the condition factor which depends on a set of elements. |
static double |
getConditionFactorF(Entity x,
Entity y)
calculates the condition factor which depends on two elements. |
protected abstract Matrix |
getConditionMatrix(double f)
Get a matrix W(f) for conditioning. |
abstract Matrix |
getCovarianceOfJacobianRowOfRelation(java.lang.Class relationType,
java.lang.Class partnerType,
int row)
Return Covariance of a Row of the Jacobian Matrix of that entity in combination with a relation. |
abstract int |
getDegreesOfFreedom()
returns the degrees of freedem. |
abstract double |
getDistance(Entity entity)
Compute the (euclidean) distance to another entity. |
double |
getDistanceToOrigin()
Return the distance to the origin. |
abstract int |
getDofOfRelation(java.lang.Class relationType,
java.lang.Class secondType)
Compute degrees of freedom of a relation. |
abstract Vector |
getEuclideanPart()
returns the euclidean part of an element |
abstract Vector |
getHomogeneousPart()
returns the homogoneous part of an element |
abstract Matrix |
getJacobianOfRelation(java.lang.Class relationType,
java.lang.Class partnerType)
Return Jacobian Matrix of that entity in combination with a relation. |
Matrix |
getJacobianOfRelation(RelationalProperty r)
Return Jacobian Matrix of that entity in combination with a relation. |
double |
getNormOfEuclideanPart()
Return the (euclidean) norm of the euclidean part. |
double |
getNormOfHomogeneousPart()
Return the (euclidean) norm of the homogenous part. |
boolean |
isEqual(Entity e)
Checks, if this element and e are the same |
boolean |
isIncident(Entity e)
checks, if this element and e are incident |
boolean |
isOrthogonal(Entity e)
checks, if this element and e are orthogonal |
boolean |
isParallel(Entity e)
checks, if this element and e are parallel |
abstract void |
normalizeEuclidean()
Normalize this element so, that homogeneous part has length 1 |
void |
normalizeEuclideanComparable()
Euclidean normalization with comparable result: To avoid a sign ambiguity the largest element |xi| of v is positive after this normalization. |
void |
transform(Transformation transformation)
Transforms this Entity with a given Transformation |
Methods inherited from class sugr.Element |
approximate, calcCov, changeNullspace, changeNullspace, checkCovDim, checkElement, clone, ensureConstraints, estimate, estimate, gaussHelmertIterations, gaussHelmertIterationsOld, getConstraintValue, getCov, getDimension, getJacobianOfConstraint, getReducedAB, getV, normalizeSphere, normalizeSphereComparable, print, print, reduceFirstMatrix, reduceMatrix, reduceMatrix, setCov, setV, toString |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
public Entity()
Method Detail |
public abstract Vector getEuclideanPart()
public double getNormOfEuclideanPart()
public abstract Vector getHomogeneousPart()
public double getNormOfHomogeneousPart()
public abstract int getDegreesOfFreedom()
getDegreesOfFreedom
in class Element
public abstract Matrix getJacobianOfRelation(java.lang.Class relationType, java.lang.Class partnerType)
relationType
- the type of the relationpartnerType
- the type of the other partner in the relation
public Matrix getJacobianOfRelation(RelationalProperty r)
getJacobianOfRelation
in class Element
r
- a (Bi)-Relational Property. From this property only the
relation type and the type of the first Entity is used.
public abstract Matrix getCovarianceOfJacobianRowOfRelation(java.lang.Class relationType, java.lang.Class partnerType, int row)
relationType
- the type of the relationpartnerType
- the type of the other partner in the relation
public abstract int getDofOfRelation(java.lang.Class relationType, java.lang.Class secondType)
Compute degrees of freedom of a relation.
relationType
- the type of the relationsecondType
- the type of the other partner in the relation
public abstract void normalizeEuclidean()
public void normalizeEuclideanComparable()
public void transform(Transformation transformation)
transformation
- Any allowed Transformation, like Homography_xD,
Affinity_xD,...public double getDistanceToOrigin()
public abstract double getDistance(Entity entity)
entity
- the entity to which a distance should be computed.
public boolean isEqual(Entity e)
e
- the element to be tested
public boolean isParallel(Entity e)
e
- the element to be tested
public boolean isIncident(Entity e)
e
- the element to be tested
public boolean isOrthogonal(Entity e)
e
- the element to be tested
public static double getConditionFactorF(Entity x, Entity y)
calculates the condition factor which depends on two elements. What is done: Find the element farthest away from the origin. Calculate the condition factor and apply this to all entities. Programmed after Stephan Heuels Dissertation (table 2.5 on page 37)
x
- first element
y
- second element
public static double getConditionFactorF(Entity[] elist)
calculates the condition factor which depends on a set of elements. What is done: Find the element farthest away from the origin. Calculate the condition factor and apply this to all entities. Programmed after Stephan Heuels Dissertation (table 2.5 on page 37) with the following corrections (lae, 13.01.2004): The ratio is computed as mentioned in the text: euclidean/homogeneous. The condition is neccessary if this ration is GREATER than fmin. Then f is fmin/max_oh which corresponds to fmin*max_ho in the text.
elist
- Array of Entities to be conditioned with the same factor
public static double doCondition(Entity[] elist)
elist
- a set of Entities to condition
public void doCondition(double f)
f
- conditioning factorpublic void doCondition(double[] f)
doCondition
in class Element
f
- conditioning factors.protected abstract Matrix getConditionMatrix(double f)
f
- the conditioning factor
public void ensureConstraintsWithoutIteration()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |