
 All Superinterfaces:
GenericSurface
,GriddedSurface
,ParametricCurveSurface
,SurfacePatch
@UML(identifier="GM_BSplineSurface", specification=ISO_19107) public interface BSplineSurface extends GriddedSurface
A rational or polynomial parametric surface that is represented by control points, basis functions and possibly weights. If the weights are all equal then the spline is piecewise polynomial. If they are not equal, then the spline is piecewise rational. If the booleanisPolynomial
is set totrue
then the weights shall all be set to 1. Since:
 GeoAPI 2.1


Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description int[]
getDegrees()
The algebraic degree of the basis functions for the first and second parameter.List<Knot>[]
getKnots()
Returns two sequences of distinct knots used to define the Bspline basis functions for the two parameters.KnotType
getKnotSpec()
Gives the type of knot distribution used in defining this spline.BSplineSurfaceForm
getSurfaceForm()
Identifies particular types of surface which this spline is being used to approximate.boolean
isPolynomial()
Returnstrue
if this is a polynomial spline.
Methods inherited from interface GenericSurface
getArea, getPerimeter, getUpNormal

Methods inherited from interface GriddedSurface
getColumns, getControlPoints, getRows

Methods inherited from interface ParametricCurveSurface
getHorizontalCurveType, getVerticalCurveType, horizontalCurve, surface, verticalCurve

Methods inherited from interface SurfacePatch
getBoundary, getInterpolation, getNumDerivativesOnBoundary, getSurface




Method Detail

getDegrees
@UML(identifier="degree", obligation=MANDATORY, specification=ISO_19107) int[] getDegrees()
The algebraic degree of the basis functions for the first and second parameter. If only one value is given, then the two degrees are equal. Returns:
 the degrees as an array of length 1 or 2.

getSurfaceForm
@UML(identifier="surfaceForm", obligation=OPTIONAL, specification=ISO_19107) BSplineSurfaceForm getSurfaceForm()
Identifies particular types of surface which this spline is being used to approximate. It is for information only, used to capture the original intention. If no such approximation is intended, then this method returnsnull
. Returns:
 the type of surface, or
null
if this information is not available.

getKnots
@UML(identifier="knot", obligation=MANDATORY, specification=ISO_19107) List<Knot>[] getKnots()
Returns two sequences of distinct knots used to define the Bspline basis functions for the two parameters. Recall that the knot data type holds information on knot multiplicity. Returns:
 the sequence of knots as an array of length 2.

getKnotSpec
@UML(identifier="knotSpec", obligation=OPTIONAL, specification=ISO_19107) KnotType getKnotSpec()
Gives the type of knot distribution used in defining this spline. This is for information only and is set according to the different constructionfunctions. Returns:
 the type of knot distribution, or
null
if none.

isPolynomial
@UML(identifier="isPolynomial", obligation=MANDATORY, specification=ISO_19107) boolean isPolynomial()
Returnstrue
if this is a polynomial spline.

