|
GeoAPI 1.0 Build 2004-05-18 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
Common interface for curve and
curve segment. Curve
and CurveSegment both represent sections of curvilinear
geometry, and therefore share a number of operation signatures.
GM_GenericCurve
| Method Summary | |
|---|---|
LineString |
asLineString(double maxSpacing,
double maxOffset)
Constructs a line string (sequence of line segments) where the control points (ends of the segments) lie on this curve. |
DirectPosition |
getConstructiveParam(double cp)
Returns the direct position for a constructive parameter. |
double |
getEndConstructiveParam()
Indicates the parameter used in the constructive paramerization for the end point. |
double |
getEndParam()
Indicates the parameter for the end point. |
DirectPosition |
getEndPoint()
Returns the direct position of the last point on the GenericCurve. |
DirectPosition |
getParam(double s)
Returns the direct position for a parameter. |
ParamForPoint |
getParamForPoint(DirectPosition p)
Returns the parameter for this GenericCurve at the passed direct position. |
double |
getStartConstructiveParam()
Indicates the parameter used in the constructive paramerization for the start point. |
double |
getStartParam()
Indicates the parameter for the start point. |
DirectPosition |
getStartPoint()
Returns the direct position of the first point on the GenericCurve. |
double[] |
getTangent(double s)
Returns the tangent vector along this GenericCurve at the passed parameter
value. |
double |
length(double cparam1,
double cparam2)
Returns the length between two constructive parameters. |
double |
length(Position point1,
Position point2)
Returns the length between two points. |
| Method Detail |
|---|
DirectPosition getStartPoint()
GenericCurve.
This differs from the boundary operator in Primitive,
since it returns only the values of this point, not representative objects.
GenericCurve.getStartParam(),
getEndPoint()
startPoint
DirectPosition getEndPoint()
GenericCurve.
This differs from the boundary operator in Primitive,
since it returns only the values of this point, not representative objects.
GenericCurve.getEndParam(),
getStartPoint()
startPoint
double[] getTangent(double s)
GenericCurve at the passed parameter
value. This vector approximates the derivative of the parameterization of the curve. The
tangent shall be a unit vector (have length 1.0), which is consistent with the
parameterization by arc length.
s - The parameter value along this curve.
getStartParam(),
getEndParam()
tangent
double getStartParam()
getStartPoint(),
getStartConstructiveParam(),
getEndParam(),
getParam(double)
startParam
double getEndParam()
getEndPoint(),
getEndConstructiveParam(),
getStartParam(),
getParam(double)
endParam
double getStartConstructiveParam()
startConstructiveParam is less than the
endConstructiveParam, but the parameterization must be strictly monotonic
(strictly increasing, or strictly decreasing).
NOTE: Constructive parameters are often chosen for convenience of calculation, and seldom have any simple relation to arc distances, which are defined as the default parameterization. Normally, geometric constructions will use constructive parameters, as the programmer deems reasonable, and calculate arc length parameters when queried.
getStartParam(),
getEndConstructiveParam(),
getConstructiveParam(double)
startConstrParam
double getEndConstructiveParam()
startConstructiveParam is less than the
endConstructiveParam, but the parameterization must be strictly monotonic
(strictly increasing, or strictly decreasing).
NOTE: Constructive parameters are often chosen for convenience of calculation, and seldom have any simple relation to arc distances, which are defined as the default parameterization. Normally, geometric constructions will use constructive parameters, as the programmer deems reasonable, and calculate arc length parameters when queried.
getEndParam(),
getStartConstructiveParam(),
getConstructiveParam(double)
endConstrParam
DirectPosition getConstructiveParam(double cp)
cp - The constructive parameter.
getStartConstructiveParam(),
getEndConstructiveParam(),
getParam(double)
constrParam
DirectPosition getParam(double s)
GenericCurve at the distance
passed. The parameterization shall be by arc length, i.e. distance along the
GenericCurve measured from the start point and added to the start parameter.
s - The distance from the start point and added to the start parameter.
getStartParam(),
getEndParam(),
getConstructiveParam(double)
param
ParamForPoint getParamForPoint(DirectPosition p)
GenericCurve at the passed direct position.
If the direct position is not on the curve, the nearest point on the curve shall be used.
p - The direct position on the curve.
getStartPoint(),
getEndPoint(),
getParam(double)
paramForPoint
double length(Position point1,
Position point2)
point1 - The first point, or null for the
start point.point2 - The second point, or null for the
end point.
length
double length(double cparam1,
double cparam2)
length shall work directly from the constructive
parameters, allowing the direct conversion between the variables used in parameterization and
constructive parameters.
Distances between direct positions determined by the default parameterization are simply
the difference of the parameter. The length function also allows for the conversion of the
constructive parameter to the arc length parameter using the following idiom:
param = length(startConstructiveParam, constructiveParam)
+ startParam
cparam1 - The first constructive parameter.cparam2 - The second constructive parameter.
length
LineString asLineString(double maxSpacing,
double maxOffset)
maxSpacing is given (not zero), then
the distance between control points along the generated curve shall be not more than
maxSpacing. If maxOffset is given (not zero), the distance
between generated curve at any point and the original curve shall not be more than the
maxOffset. If both parameters are set, then both criteria shall be met.
If the original control points of the curve lie on the curve, then they shall be included
in the returned line string's control points. If both parameters are
set to zero, then the line string returned shall be constructed from the control points of the
original curve.
NOTE: This function is useful in creating linear approximations of the curve for simple actions such as display. It is often referred to as a "stroked curve". For this purpose, themaxOffsetversion is useful in maintaining a minimal representation of the curve appropriate for the display device being targeted. This function is also useful in preparing to transform a curve from one coordinate reference system to another by transforming its control points. In this case, themaxSpacingversion is more appropriate. Allowing both parameters to default to zero does not seem to have any useful geographic nor geometric interpretation unless further information is known about how the curves were constructed.
maxSpacing - The maximal distance between control points along the generated curve,
or 0 for no constraint.maxOffset - The maximal distance between generated curve at any point and the original
curve, or 0 for no constraint.
asLineString
|
GeoAPI 1.0 Build 2004-05-18 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
|
Symbols, terms and definitions | Copyright OpenGIS® Consortium |