public final class CSTCurveTrans extends CSTCurve implements GeomTransform<CSTCurve>
GeomTransform
object that refers to a CSTCurve
object and masquerades
as a CSTCurve object itself.
Modified by: Joseph A. Huwaldt
GTOL
RESOURCES
Modifier and Type | Method and Description |
---|---|
CSTCurveTrans |
copy()
Returns a copy of this CSTCurveTrans instance
allocated by the calling thread
(possibly on the stack). |
BasicCSTCurve |
copyToReal()
Return a copy of the child object transformed by this transformation.
|
boolean |
equals(java.lang.Object obj)
Compares this NurbsCurveTrans against the specified object for strict equality.
|
Point |
getBoundsMax()
Return the coordinate point representing the maximum bounding box corner (e.g.: max
X, max Y, max Z).
|
Point |
getBoundsMin()
Return the coordinate point representing the minimum bounding box corner of this
geometry element (e.g.: min X, min Y, min Z).
|
CSTClassFunction |
getCFunction()
Return the class function associated with this CST curve.
|
CSTCurve |
getChild()
Returns the child object transformed by this transform element.
|
Parameter<Length> |
getChord()
Return the chord length of the curve.
|
Parameter<Length> |
getOffsetTE()
Return the offset of the trailing edge of the curve from the chord line.
|
Point |
getOrigin()
Return the origin of the leading edge of this curve.
|
int |
getPhyDimension()
Returns the number of physical dimensions of the geometry element.
|
Point |
getRealPoint(double s)
Calculate a point on the curve for the given parametric distance along the curve,
p(s) . |
java.util.List<Vector<Length>> |
getSDerivatives(double s,
int grade)
Calculate all the derivatives from
0 to grade with
respect to parametric distance on the curve for the given parametric distance along
the curve, d^{grade}p(s)/d^{grade}s . |
CSTShapeFunction |
getSFunction()
Return the shape function associated with this CST curve.
|
GTransform |
getTotalTransform()
Returns the total transformation represented by an entire chain of GeomTransform
objects below this one.
|
GTransform |
getTransform()
Returns the transformation represented by this transformation element.
|
Unit<Length> |
getUnit()
Returns the unit in which the geometry of this curve is stated.
|
Vector<Dimensionless> |
getXhat()
Return the chord-wise direction of this curve (the curve X-direction).
|
Vector<Dimensionless> |
getYhat()
Return the in-plane direction of this curve perpendicular to the chord-wise
direction (the curve Y-direction).
|
int |
hashCode()
Returns the hash code for this parameter.
|
BasicCSTCurve |
immutable()
Return an immutable version of this CST curve.
|
boolean |
isValid()
Return
true if this curve contains valid and finite numerical
components. |
static CSTCurveTrans |
newInstance(CSTCurve child,
GTransform transform)
|
static void |
recycle(CSTCurveTrans instance)
Recycles a
CSTCurveTrans instance immediately (on the stack when
executing in a StackContext). |
CSTCurveTrans |
reverse()
Return a new curve that is identical to this one, but with the parameterization
reversed.
|
void |
setTransform(GTransform transform)
Sets the transformation represented by this transformation element.
|
GeomList<CSTCurve> |
splitAt(double s)
Split this curve at the specified parametric position returning a list containing
two curves (a lower curve with smaller parametric positions than "s" and an upper
curve with larger parametric positions).
|
CSTCurveTrans |
to(Unit<Length> unit)
Returns the equivalent to this curve but stated in the specified unit.
|
CSTCurveTrans |
toDimension(int newDim)
Return the equivalent of this curve converted to the specified number of physical
dimensions.
|
NurbsCurve |
toNurbs(Parameter<Length> tol)
Return a NURBS curve representation of this curve to within the specified
tolerance.
|
getTransformed, isDegenerate, isPlanar, size
extractGrid, getArcLength, getArcLength, getArcLength, getBinormal, getBinormal, getClosest, getClosest, getClosest, getClosest, getClosest, getClosest, getCurvature, getCurvature, getDerivatives, getEnclosedArea, getFarthest, getFarthest, getFarthest, getLimitPoint, getParDimension, getPoint, getPoint, getPointAtArcLength, getPrincipalNormal, getPrincipalNormal, getRealPoint, getSDerivative, getSDerivatives, getTangencyPoint, getTangent, getTangent, getTorsion, getTorsion, getVariationOfCurvature, getVariationOfCurvature, gridToTolerance, intersect, intersect, intersect, intersect, intersect, isCircular, isLine, splitAt
addChangeListener, clone, compareTo, getAllUserData, getID, getName, getUserData, putAllUserData, putUserData, removeChangeListener, removeUserData, reset, setName, toString, toText
getTransformed
addChangeListener, getAllUserData, getID, getLimitPoint, getName, getParDimension, getUserData, putAllUserData, putUserData, removeChangeListener, removeUserData, setName, size, toText
public static CSTCurveTrans newInstance(CSTCurve child, GTransform transform)
child
- The CSTCurve that is the child of this transform element (may not
be null
).transform
- The transform held by this transform element (may not be
null
).public GTransform getTransform()
getTransform
in interface GeomTransform<CSTCurve>
public GTransform getTotalTransform()
getTotalTransform
in interface GeomTransform<CSTCurve>
public void setTransform(GTransform transform)
setTransform
in interface GeomTransform<CSTCurve>
transform
- The transform to set this transform element to (may not be
null
).public CSTCurve getChild()
getChild
in interface GeomTransform<CSTCurve>
public CSTClassFunction getCFunction()
getCFunction
in class CSTCurve
public CSTShapeFunction getSFunction()
getSFunction
in class CSTCurve
public Parameter<Length> getOffsetTE()
getOffsetTE
in class CSTCurve
public Parameter<Length> getChord()
public Point getOrigin()
public Vector<Dimensionless> getXhat()
public Vector<Dimensionless> getYhat()
public BasicCSTCurve copyToReal()
copyToReal
in interface Curve<CSTCurve>
copyToReal
in interface GeomElement<CSTCurve>
copyToReal
in interface GeomTransform<CSTCurve>
public BasicCSTCurve immutable()
public boolean isValid()
true
if this curve contains valid and finite numerical
components. A value of false
will be returned if any of the coordinate
values are NaN or Inf.isValid
in interface GeomElement<CSTCurve>
public int getPhyDimension()
getPhyDimension
in interface GeomElement<CSTCurve>
public Point getRealPoint(double s)
p(s)
.getRealPoint
in interface Curve<CSTCurve>
s
- parametric distance to calculate a point for (0.0 to 1.0 inclusive).public java.util.List<Vector<Length>> getSDerivatives(double s, int grade)
0
to grade
with
respect to parametric distance on the curve for the given parametric distance along
the curve, d^{grade}p(s)/d^{grade}s
.
Example:
1st derivative (grade = 1), this returns [p(s), dp(s)/ds]
;
2nd derivative (grade = 2), this returns [p(s), dp(s)/ds, d^2p(s)/d^2s]
; etc.
getSDerivatives
in interface Curve<CSTCurve>
s
- Parametric distance to calculate derivatives for (0.0 to 1.0
inclusive).grade
- The maximum grade to calculate the derivatives for (1=1st derivative,
2=2nd derivative, etc)java.lang.IllegalArgumentException
- if the grade is < 0.public Point getBoundsMin()
getBoundsMin
in interface GeomElement<CSTCurve>
java.lang.IndexOutOfBoundsException
- if this list contains no elements.public Point getBoundsMax()
getBoundsMax
in interface GeomElement<CSTCurve>
java.lang.IndexOutOfBoundsException
- if this list contains no elements.public CSTCurveTrans reverse()
public GeomList<CSTCurve> splitAt(double s)
public Unit<Length> getUnit()
getUnit
in interface GeomElement<CSTCurve>
public CSTCurveTrans to(Unit<Length> unit) throws ConversionException
to
in interface Curve<CSTCurve>
to
in interface GeomElement<CSTCurve>
to
in interface ParametricGeometry<CSTCurve>
unit
- the length unit of the curve to be returned. May not be null.ConversionException
- if the the input unit is not a length unit.public CSTCurveTrans toDimension(int newDim)
toDimension
in interface Curve<CSTCurve>
toDimension
in interface GeomElement<CSTCurve>
toDimension
in interface ParametricGeometry<CSTCurve>
newDim
- The dimension of the curve to return. MUST equal 3.java.lang.IllegalArgumentException
- if the new dimension is anything other than 3.public NurbsCurve toNurbs(Parameter<Length> tol)
public CSTCurveTrans copy()
allocated
by the calling thread
(possibly on the stack).copy
in interface Curve<CSTCurve>
copy
in interface GeomElement<CSTCurve>
copy
in interface ParametricGeometry<CSTCurve>
public boolean equals(java.lang.Object obj)
equals
in class AbstractGeomElement<CSTCurve>
obj
- the object to compare with.true
if this transform is identical to that transform;
false
otherwise.public int hashCode()
hashCode
in class AbstractGeomElement<CSTCurve>
public static void recycle(CSTCurveTrans instance)
CSTCurveTrans
instance immediately (on the stack when
executing in a StackContext).instance
- The instance to be recycled.