public final class BasicCSTCurve extends CSTCurve implements javolution.lang.ValueType
Modified by: Joseph A. Huwaldt
GTOL
RESOURCES
Modifier and Type | Method and Description |
---|---|
BasicCSTCurve |
changeBFCoefficients(int order,
double... Acoefs)
Return a copy of this CSTCurve with the shape function Bernstein Polynomial
coefficients changed to the specified coefficients.
|
BasicCSTCurve |
changeCFunction(CSTClassFunction Cf)
Return a copy of this CSTCurve with the class function changed to the specified
class function.
|
BasicCSTCurve |
changeChord(Parameter<Length> chord)
Return a copy of this CSTCurve with the chord length changed to the specified
value.
|
BasicCSTCurve |
changeOffsetTE(double offsetTE_c)
Return a copy of this CSTCurve with the trailing edge offset from the chord-line to
chord ratio changed to the specified value.
|
BasicCSTCurve |
changeOffsetTE(Parameter<Length> offsetTE)
Return a copy of this CSTCurve with the trailing edge offset from the chord-line
changed to the specified value.
|
BasicCSTCurve |
changeOrigin(Point origin)
Return a copy of this CSTCurve with the curve origin or leading-edge point changed
to the specified value.
|
BasicCSTCurve |
changeSFunction(CSTShapeFunction Sf)
Return a copy of this CSTCurve with the shape function changed to the specified
shape function.
|
BasicCSTCurve |
copy()
Returns a copy of this
BasicCSTCurve instance
allocated by the calling thread
(possibly on the stack). |
BasicCSTCurve |
copyToReal()
Return a copy of this object with any transformations or subranges removed
(applied).
|
boolean |
equals(java.lang.Object obj)
Compares this BasicCSTCurve against the specified object for strict equality (same
values and same units).
|
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.
|
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.
|
int |
getOrder()
Return the order of this CST curve.
|
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.
|
Unit<Length> |
getUnit()
Returns the unit in which 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 BasicCSTCurve |
newInstance(CSTClassFunction Cf,
CSTShapeFunction Sf,
double dZTE_c)
Return a new 2D, planar
BasicCSTCurve instance using the supplied input
parameters with the origin at (0,0), a chord length of 1.0 m and with the chord
aligned with the X-axis. |
static BasicCSTCurve |
newInstance(CSTClassFunction Cf,
CSTShapeFunction Sf,
Parameter<Length> offsetTE,
Point origin,
Parameter<Length> chord,
GeomVector<Dimensionless> xhat,
GeomVector<Dimensionless> yhat)
Return a new planar
BasicCSTCurve instance using the supplied input
parameters. |
static void |
recycle(BasicCSTCurve instance)
Recycles a
BasicCSTCurve instance immediately (on the stack when
executing in a StackContext). |
CSTCurve |
reverse()
Return a new curve that is identical to this one, but with the parameterization
reversed.
|
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).
|
BasicCSTCurve |
to(Unit<Length> unit)
Returns the equivalent to this curve but stated in the specified unit.
|
BasicCSTCurve |
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
addChangeListener, getAllUserData, getID, getName, getUserData, putAllUserData, putUserData, removeChangeListener, removeUserData, setName, toText
public static BasicCSTCurve newInstance(CSTClassFunction Cf, CSTShapeFunction Sf, Parameter<Length> offsetTE, Point origin, Parameter<Length> chord, GeomVector<Dimensionless> xhat, GeomVector<Dimensionless> yhat)
BasicCSTCurve
instance using the supplied input
parameters.Cf
- The class function for this BasicCSTCurve. May not be null.Sf
- The shape function for this BasicCSTCurve. May not be null.offsetTE
- The trailing edge offset from the chord-line for this
BasicCSTCurve. May not be null.origin
- The origin of the leading edge of this curve (gives the curve
location). May not be null.chord
- The chord length for this curve (gives the curve scale). May not be
null.xhat
- The chord-wise direction of this curve (the curve X-axis
direction). May not be null.yhat
- The direction perpendicular to xhat for this curve (the curve
Y-axis direction). May not be null.public static BasicCSTCurve newInstance(CSTClassFunction Cf, CSTShapeFunction Sf, double dZTE_c)
BasicCSTCurve
instance using the supplied input
parameters with the origin at (0,0), a chord length of 1.0 m and with the chord
aligned with the X-axis.Cf
- The class function for this BasicCSTCurve. May not be null.Sf
- The shape function for this BasicCSTCurve. May not be null.dZTE_c
- The trailing edge offset from the chord-line to chord length ratio
for this BasicCSTCurve.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 changeCFunction(CSTClassFunction Cf)
Cf
- The new class function for this BasicCSTCurve. May not be null.public BasicCSTCurve changeSFunction(CSTShapeFunction Sf)
Sf
- The new shape function for this BasicCSTCurve. May not be null.public BasicCSTCurve changeBFCoefficients(int order, double... Acoefs)
order
- The order of the shape function to use.Acoefs
- The new coefficients of the Bernstein Polynomial used to construct
the shape function. If more than "order" coefficients are provided
then the additional coefficients are ignored. May not be null.public BasicCSTCurve changeOffsetTE(Parameter<Length> offsetTE)
offsetTE
- The new trailing edge offset from the chord-line for this
BasicCSTCurve. May not be null.public BasicCSTCurve changeOffsetTE(double offsetTE_c)
offsetTE_c
- The new trailing edge offset from the chord-line to chord ratio
for this BasicCSTCurve.public BasicCSTCurve changeOrigin(Point origin)
origin
- The new origin of the leading edge of this curve (gives the curve
location). May not be null.public BasicCSTCurve changeChord(Parameter<Length> chord)
chord
- The chord length for this curve (gives the curve scale). May not be null.public int getPhyDimension()
getPhyDimension
in interface GeomElement<CSTCurve>
public int getOrder()
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 geometry.public Point getBoundsMax()
getBoundsMax
in interface GeomElement<CSTCurve>
java.lang.IndexOutOfBoundsException
- if this list contains no elements.public CSTCurve reverse()
public GeomList<CSTCurve> splitAt(double s)
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 Unit<Length> getUnit()
getUnit
in interface GeomElement<CSTCurve>
public BasicCSTCurve 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 BasicCSTCurve 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.public NurbsCurve toNurbs(Parameter<Length> tol)
public BasicCSTCurve copy()
BasicCSTCurve
instance
allocated
by the calling thread
(possibly on the stack).copy
in interface Curve<CSTCurve>
copy
in interface GeomElement<CSTCurve>
copy
in interface ParametricGeometry<CSTCurve>
copy
in interface javolution.lang.ValueType
public BasicCSTCurve copyToReal()
copyToReal
in interface Curve<CSTCurve>
copyToReal
in interface GeomElement<CSTCurve>
public BasicCSTCurve immutable()
public boolean equals(java.lang.Object obj)
equals
in class AbstractGeomElement<CSTCurve>
obj
- the object to compare with.true
if this point is identical to that point;
false
otherwise.public int hashCode()
hashCode
in class AbstractGeomElement<CSTCurve>
public static void recycle(BasicCSTCurve instance)
BasicCSTCurve
instance immediately (on the stack when
executing in a StackContext).instance
- The instance to be recycled.