The attribute "degree" shall be the degree of the polynomial used for interpolation in this spline.

Diagram

Type

nonNegativeInteger

Properties

content:

simple

Source

<element name="degree" type="nonNegativeInteger"><annotation><documentation>The attribute "degree" shall be the degree of the polynomial used for interpolation in this spline.</documentation></annotation></element>

<element name="knot" type="gml:KnotPropertyType" minOccurs="2" maxOccurs="unbounded"><annotation><documentation>The property "knot" shall be the sequence of distinct knots used to define the spline basis functions.</documentation></annotation></element>

A B-Spline is a piecewise parametric polynomial or rational curve described in terms of control points and basis functions. Knots are breakpoints on the curve that connect its pieces. They are given as a non-decreasing sequence of real numbers. If the weights in the knots are equal then it is a polynomial spline. The degree is the algebraic degree of the basis functions.

The attribute "interpolation" specifies the curve interpolation mechanism used for this segment. This mechanismuses the control points and control parameters to determine the position of this curve segment. For a BSpline the interpolation can be either "polynomialSpline" or "rationalSpline", default is "polynomialSpline".

The attribute "knotType" gives the type of knot distribution used in defining this spline. This is for information onlyand is set according to the different construction-functions.

The attribute "numDerivativesInterior" specifies the type of continuity that is guaranteed interior to the curve. The default value of "0" means simple continuity, which is a mandatory minimum level of continuity. This level is referred to as "C 0 " in mathematical texts. A value of 1 means that the function and its first derivative are continuous at the appropriate end point: "C 1 " continuity. A value of "n" for any integer means the function and its first n derivatives are continuous: "C n " continuity.NOTE: Use of these values is only appropriate when the basic curve definition is an underdetermined system. For example, line string segments cannot support continuity above C 0 , since there is no spare control parameter to adjust the incoming angle at the end points of the segment. Spline functions on the other hand often have extra degrees of freedom on end segments that allow them to adjust the values of the derivatives to support C 1 or higher continuity.

The attribute "numDerivativesAtEnd" specifies the type of continuity between this curve segment and its successor. If this is the last curve segment in the curve, one of these values, as appropriate, is ignored. The default value of "0" means simple continuity, which is a mandatory minimum level of continuity. This level is referred to as "C 0 " in mathematical texts. A value of 1 means that the function and its first derivative are continuous at the appropriate end point: "C 1 " continuity. A value of "n" for any integer means the function and its first n derivatives are continuous: "C n " continuity.NOTE: Use of these values is only appropriate when the basic curve definition is an underdetermined system. For example, line string segments cannot support continuity above C 0 , since there is no spare control parameter to adjust the incoming angle at the end points of the segment. Spline functions on the other hand often have extra degrees of freedom on end segments that allow them to adjust the values of the derivatives to support C 1 or higher continuity.

The attribute "numDerivativesAtStart" specifies the type of continuity between this curve segment and its predecessor. If this is the first curve segment in the curve, one of these values, as appropriate, is ignored. The default value of "0" means simple continuity, which is a mandatory minimum level of continuity. This level is referred to as "C 0 " in mathematical texts. A value of 1 means that the function and its first derivative are continuous at the appropriate end point: "C 1 " continuity. A value of "n" for any integer means the function and its first n derivatives are continuous: "C n " continuity.NOTE: Use of these values is only appropriate when the basic curve definition is an underdetermined system. For example, line string segments cannot support continuity above C 0 , since there is no spare control parameter to adjust the incoming angle at the end points of the segment. Spline functions on the other hand often have extra degrees of freedom on end segments that allow them to adjust the values of the derivatives to support C 1 or higher continuity.

Source

<complexType name="BSplineType"><annotation><documentation>A B-Spline is a piecewise parametric polynomial or rational curve described in terms of control points and basis functions. Knots are breakpoints on the curve that connect its pieces. They are given as a non-decreasing sequence of real numbers. If the weights in the knots are equal then it is a polynomial spline. The degree is the algebraic degree of the basis functions.</documentation></annotation><complexContent><extension base="gml:AbstractCurveSegmentType"><sequence><choice><annotation><documentation>GML supports two different ways to specify the control points of a curve segment. 1. A sequence of "pos" (DirectPositionType) or "pointProperty" (PointPropertyType) elements. "pos" elements are control points that are only part of this curve segment, "pointProperty" elements contain a point that may be referenced from other geometry elements or reference another point defined outside of this curve segment (reuse of existing points). 2. The "posList" element allows for a compact way to specifiy the coordinates of the control points, if all control points are in the same coordinate reference systems and belong to this curve segment only.</documentation></annotation><choice minOccurs="0" maxOccurs="unbounded"><element ref="gml:pos"/><element ref="gml:pointProperty"/><element ref="gml:pointRep"><annotation><documentation>Deprecated with GML version 3.1.0. Use "pointProperty" instead. Included for backwards compatibility with GML 3.0.0.</documentation></annotation></element></choice><element ref="gml:posList"/><element ref="gml:coordinates"><annotation><documentation>Deprecated with GML version 3.1.0. Use "posList" instead.</documentation></annotation></element></choice><element name="degree" type="nonNegativeInteger"><annotation><documentation>The attribute "degree" shall be the degree of the polynomial used for interpolation in this spline.</documentation></annotation></element><element name="knot" type="gml:KnotPropertyType" minOccurs="2" maxOccurs="unbounded"><annotation><documentation>The property "knot" shall be the sequence of distinct knots used to define the spline basis functions.</documentation></annotation></element></sequence><attribute name="interpolation" type="gml:CurveInterpolationType" default="polynomialSpline"><annotation><documentation>The attribute "interpolation" specifies the curve interpolation mechanism used for this segment. This mechanism uses the control points and control parameters to determine the position of this curve segment. For a BSpline the interpolation can be either "polynomialSpline" or "rationalSpline", default is "polynomialSpline".</documentation></annotation></attribute><attribute name="isPolynomial" type="boolean" use="optional"><annotation><documentation>The attribute isPolynomial is set to true if this is a polynomial spline.</documentation></annotation></attribute><attribute name="knotType" type="gml:KnotTypesType" use="optional"><annotation><documentation>The attribute "knotType" gives the type of knot distribution used in defining this spline. This is for information only and is set according to the different construction-functions.</documentation></annotation></attribute></extension></complexContent></complexType>

The attribute "interpolation" specifies the curve interpolation mechanism used for this segment. This mechanismuses the control points and control parameters to determine the position of this curve segment. For a BSpline the interpolation can be either "polynomialSpline" or "rationalSpline", default is "polynomialSpline".

<attribute name="interpolation" type="gml:CurveInterpolationType" default="polynomialSpline"><annotation><documentation>The attribute "interpolation" specifies the curve interpolation mechanism used for this segment. This mechanism uses the control points and control parameters to determine the position of this curve segment. For a BSpline the interpolation can be either "polynomialSpline" or "rationalSpline", default is "polynomialSpline".</documentation></annotation></attribute>

<attribute name="isPolynomial" type="boolean" use="optional"><annotation><documentation>The attribute isPolynomial is set to true if this is a polynomial spline.</documentation></annotation></attribute>

The attribute "knotType" gives the type of knot distribution used in defining this spline. This is for information onlyand is set according to the different construction-functions.

<attribute name="knotType" type="gml:KnotTypesType" use="optional"><annotation><documentation>The attribute "knotType" gives the type of knot distribution used in defining this spline. This is for information only and is set according to the different construction-functions.</documentation></annotation></attribute>