CurvesStructure (struct)

CurvesStructure CurvesStructure CurvesStructure

Members

Curves_data[] curvesData  
UInt32ArrayAllocator packedCurvesExtraData  
UInt32 freeCurveIndexCount  
UInt32 pointCount  
UInt32 unusedPointCount  
Boolean useDoubles  
Boolean smoothLinearCurveTangents  
Vec3[] positions  
Vec3_d[] positions_d  
Float32[] weights  

Methods

  CurvesStructure ( in CurvesStructure other )
  CurvesStructure ()
  NURBS_fixEndKnotsValues ! ( io Curves_data curveData )
  NURBS_forceAsNonPeriodic ! ( io Curves_data curveData )
Vec3 NURBS_getDerivativeAtParam ? ( in Curves_data curveData, in Float32 param )
  NURBS_getDerivativesAtParam ? ( in Curves_data curveData, in Float32 param, io Vec3 dU, io Vec3 dUU )
  NURBS_getDerivativesAtParam ? ( in Curves_data curveData, in Float32 param, io Vec3 dU, io Vec3 dUU, in Boolean computeDUU )
  NURBS_getEvalKnots ? ( in Curves_data curveData, in UInt32 spanIndex, io Float32 knots<> )
Float32 NURBS_getParamFromSpanParam ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 param )
  NURBS_getPoints ? ( in Curves_data curveData, in UInt32 spanIndex, io UInt32 count, io UInt32 pointIndices<> )
  NURBS_getPointsAndWeights ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 pointWeights<> )
  NURBS_getPointsAndWeights ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 pointWeights<>, io Float32 derPointWeights<> )
  NURBS_getPointsAndWeights_nonRational ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 pointWeights<> )
  NURBS_getSpanParam ? ( in Curves_data curveData, in Float32 param, io UInt32 spanIndex, io Float32 spanParam )
Vec2 NURBS_getSpanRange ? ( in Curves_data curveData, in UInt32 spanIndex )
  NURBS_getWeights ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, in UInt32 count, in UInt32 pointIndices<>, io Float32 pointWeights<> )
  NURBS_getWeights ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, in UInt32 count, in UInt32 pointIndices<>, io Float32 pointWeights<>, io Float32 derPointWeights<> )
  NURBS_getWeights_nonRational ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 param, io UInt32 count, io Float32 pointWeights<>, in Boolean evalDerWeights, io Float32 derWeights<>, in Boolean evalDer2Weights, io Float32 der2Weights<> )
UInt32 NURBS_openOrCloseCurve_getReservedPointCount ! ( io Curves_data curveData, in Boolean open )
  NURBS_openOrCloseCurve_reservedPoints ! ( io Curves_data curveData, in Boolean open, io LocalL8UInt32Array copyAttrFrom, io LocalL8UInt32Array copyAttrTo )
  NURBS_resizedPoints ! ( io Curves_data curveData, in UInt32 prevPointCount )
  NURBS_updateDomainAndSpanCount ! ( io Curves_data curveData )
UInt32 addCurveIndex ! ( in Boolean recycleUnusedIndices )
  applyRationalQuotient ? ( in Curves_data curveData, io Float32 pointWeights<>, in UInt32 pointIndices<>, io Float32 derPointWeights<> )
  bezier_getDerWeights_nonRational ? ( in UInt8 order, in Float32 param, io UInt32 count, io Float32 derPointWeights<> )
Vec3 bezier_getDerivativeAtParam ? ( in Curves_data curveData, in Float32 param )
  bezier_getDerivativesAtParam ? ( in Curves_data curveData, in Float32 param, io Vec3 dU, io Vec3 dUU )
  bezier_getDerivativesAtParam ? ( in Curves_data curveData, in Float32 param, io Vec3 dU, io Vec3 dUU, in Boolean computeDUU )
  bezier_getPoints ? ( in Curves_data curveData, in UInt32 spanIndex, io UInt32 count, io UInt32 pointIndices<> )
  bezier_getPointsAndWeights ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 pointWeights<> )
  bezier_getPointsAndWeights ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 pointWeights<>, io Float32 derPointWeights<> )
  bezier_getPointsAndWeights_nonRational ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 pointWeights<> )
  bezier_getWeights ? ( in Curves_data curveData, in Float32 spanParam, in UInt32 count, in UInt32 pointIndices<>, io Float32 pointWeights<> )
  bezier_getWeights ? ( in Curves_data curveData, in Float32 spanParam, in UInt32 count, in UInt32 pointIndices<>, io Float32 pointWeights<>, io Float32 derPointWeights<> )
  bezier_getWeights_nonRational ? ( in UInt8 order, in Float32 param, io UInt32 count, io Float32 pointWeights<> )
UInt32 bezier_openOrCloseCurve_getReservedPointCount ! ( io Curves_data curveData, in Boolean open )
  bezier_openOrCloseCurve_reservedPoints ! ( io Curves_data curveData, in Boolean open, io LocalL8UInt32Array copyAttrFrom, io LocalL8UInt32Array copyAttrTo )
  bezier_updateDomainAndSpanCountFromPoints ! ( io Curves_data curveData )
  clearCurve ! ( in UInt32 curveIndex )
CurvesStructure clone ? ()
  copy ! ( in CurvesStructure src )
  copyCurve ! ( in CurvesStructure sourceCurves, in UInt32 sourceCurveIndex, in UInt32 targetCurveIndex )
UInt32 curveCount ? ()
  getCurvature ? ( in Curves_data curveData, in Float32 param, io Vec3 T, io Vec3 K )
Vec3 getCurvatureAtNormalizedParam ? ( in Curves_data curveData, in Float32 normalizedParam )
Vec3 getCurvatureAtParam ? ( in Curves_data curveData, in Float32 param )
UInt8 getCurveType ? ( in Curves_data curveData )
Vec3 getDerivativeAtNormalizedParam ? ( in Curves_data curveData, in Float32 normalizedParam )
Vec3 getDerivativeAtParam ? ( in Curves_data curveData, in Float32 param )
  getDerivativesAtNormalizedParam ? ( in Curves_data curveData, in Float32 normalizedParam, io Vec3 dU, io Vec3 dUU )
  getDerivativesAtParam ? ( in Curves_data curveData, in Float32 param, io Vec3 dU, io Vec3 dUU )
Vec2 getDomain ? ( in Curves_data curveData )
UInt32 getExtraData ? ( in Curves_data curveData, in UInt32 dataIndex )
Float32 getExtraDataFloat ? ( in Curves_data curveData, in UInt32 dataIndex )
UInt32 getExtraDataOffset ? ( in Curves_data curveData )
UInt32 getExtraDataSize ? ( in Curves_data curveData )
UInt32 getFirstPointIndex ? ( in Curves_data curveData )
Vec4 getHomogeneousPointPosition ? ( in Curves_data curveData, in Size curvePointIndex )
Vec4_d getHomogeneousPointPosition_d ? ( in Curves_data curveData, in Size curvePointIndex )
UInt32 getNURBSCVCountWithRepeats ? ( in Curves_data curveData )
Float32 getNURBSKnot ? ( in Curves_data curveData, in UInt32 knotIndex )
UInt32 getNURBSKnotCount ? ( in Curves_data curveData )
Float32 getNURBSUniformKnotValue ? ( in Curves_data curveData, in UInt32 knotIndex )
Vec3 getNormalAtNormalizedParam ? ( in Curves_data curveData, in Float32 normalizedParam )
Vec3 getNormalAtParam ? ( in Curves_data curveData, in Float32 param )
UInt8 getOrder ? ( in Curves_data curveData )
UInt32 getPointCount ? ( in Curves_data curveData )
UInt32 getPointCount ? ( in Curves_data curveData, in Boolean includeRepeatedPoints )
UInt32 getPointIndex_check ? ( in Curves_data curveData, in UInt32 curvePointIndex )
  getPointIndicesAndWeightsAtNormalizedParam ? ( in Curves_data curveData, in Float32 normalizedParam, io LocalL8UInt32Array pointIndices, io LocalL8ScalarArray pointWeights )
  getPointIndicesAndWeightsAtNormalizedParam ? ( in Curves_data curveData, in Float32 normalizedParam, io LocalL8UInt32Array pointIndices, io LocalL8ScalarArray pointWeights, io LocalL8ScalarArray derivativePointWeights )
  getPointIndicesAndWeightsAtParam ? ( in Curves_data curveData, in Float32 param, io LocalL8UInt32Array pointIndices, io LocalL8ScalarArray pointWeights )
  getPointIndicesAndWeightsAtParam ? ( in Curves_data curveData, in Float32 param, io LocalL8UInt32Array pointIndices, io LocalL8ScalarArray pointWeights, io LocalL8ScalarArray derivativePointWeights )
Vec3 getPointPosition ? ( in Curves_data curveData, in Size curvePointIndex )
Vec3_d getPointPosition_d ? ( in Curves_data curveData, in Size curvePointIndex )
Vec3 getPointPosition_nocheck ? ( in Curves_data curveData, in Size curvePointIndex )
  getPointRange ? ( in Curves_data curveData, io UInt32 firstPoint, io UInt32 pointsEnd )
  getPoints ? ( in Curves_data curveData, in UInt32 spanIndex, io UInt32 count, io UInt32 pointIndices<> )
  getPointsAndWeights ? ( in Curves_data curveData, in Float32 param, io UInt32 count, io UInt32 pointIndices<>, io Float32 weights<> )
  getPointsAndWeights ? ( in Curves_data curveData, in Float32 param, io UInt32 count, io UInt32 pointIndices<>, io Float32 weights<>, io Float32 derivativePointWeights<> )
  getPointsAndWeights ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 weights<> )
  getPointsAndWeights ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 weights<>, io Float32 derivativePointWeights<> )
Vec3 getPositionAtNormalizedParam ? ( in Curves_data curveData, in Float32 normalizedParam )
Vec3_d getPositionAtNormalizedParam_d ? ( in Curves_data curveData, in Float32 normalizedParam )
Vec3 getPositionAtParam ? ( in Curves_data curveData, in Float32 param )
Vec3_d getPositionAtParam_d ? ( in Curves_data curveData, in Float32 param )
  getReservedPointRange ? ( in Curves_data curveData, io UInt32 firstPoint, io UInt32 pointsEnd )
  getSpanParam ? ( in Curves_data curveData, in Float32 param, io UInt32 spanIndex, io Float32 spanParam )
Vec2 getSpanRange ? ( in Curves_data curveData, in UInt32 spanIndex )
  getTangentAndCurvatureAtNormalizedParam ? ( in Curves_data curveData, in Float32 normalizedParam, io Vec3 tangent, io Vec3 curvature )
  getTangentAndCurvatureAtParam ? ( in Curves_data curveData, in Float32 param, io Vec3 tangent, io Vec3 curvature )
Vec3 getTangentAtNormalizedParam ? ( in Curves_data curveData, in Float32 normalizedParam )
Vec3 getTangentAtParam ? ( in Curves_data curveData, in Float32 param )
  getWeights ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, in UInt32 count, in UInt32 pointIndices<>, io Float32 weights<> )
  getWeights ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, in UInt32 count, in UInt32 pointIndices<>, io Float32 weights<>, io Float32 derWeights<> )
  increaseNURBSStoredKnots ! ( io Curves_data curveData, in UInt32 knotsCount )
UInt32 initCurve ! ( in UInt32 curveIndex, in UInt8 curveType, in UInt8 order, in Boolean isClosed, in UInt32 pointCount )
UInt32 initNURBSCurve ! ( in UInt32 curveIndex, in UInt8 order, in UInt8 curveForm, in UInt32 pointCount )
Boolean isClosed ? ( in Curves_data curveData )
Boolean isEmptyNURBSSpan ? ( in Curves_data curveData, in UInt32 spanIndex )
Boolean isRemoved ? ( in Curves_data curveData )
Vec3 linear_getDerivativeAtParam ? ( in Curves_data curveData, in Float32 param )
  linear_getDerivativesAtParam ? ( in Curves_data curveData, in Float32 param, io Vec3 dU, io Vec3 dUU )
UInt32[2] linear_getPoints ? ( in Curves_data curveData, in UInt32 spanIndex )
  linear_getPoints ? ( in Curves_data curveData, in UInt32 spanIndex, io UInt32 count, io UInt32 pointIndices<> )
  linear_getPointsAndWeights ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 pointWeights<> )
  linear_getPointsAndWeights ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 pointWeights<>, io Float32 derivativePointWeights<> )
  linear_getWeights ? ( in Curves_data curveData, in Float32 spanParam, io Float32 pointWeights<> )
  linear_getWeights ? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io Float32 pointWeights<>, io Float32 derivativePointWeights<> )
  linear_openOrCloseCurve_reservedPoints ! ( io Curves_data curveData, in Boolean open )
  linear_updateDomainAndSpanCountFromPoints ! ( io Curves_data curveData )
UInt32 openOrCloseCurve_getReservedPointCount ! ( io Curves_data curveData, in Boolean open )
  openOrCloseCurve_reservedPoints ! ( io Curves_data curveData, in Boolean open, io LocalL8UInt32Array copyAttrFrom, io LocalL8UInt32Array copyAttrTo )
Float32 rational_divideWeights ? ( in Curves_data curveData, in UInt32 count, in UInt32 pointIndices<>, io Float32 pointWeights<>, in Boolean multiplyByRationalWeight )
  recompactCurveIndices ! ()
  removeCurve ! ( in UInt32 curveIndex )
  reportPointIndexRangeError ? ( in Curves_data curveData, in UInt32 curvePointIndex )
  reservePoints ! ( io Curves_data curveData, in UInt32 reservedPointCount, io UInt32 prevFirstPointIfMoved )
  resizeExtraData ! ( io Curves_data curveData, in Size size )
  resizePoints ! ( io Curves_data curveData, in UInt32 newPointCount, io UInt32 prevFirstPointIfMoved, io UInt32 prevPointCountIfMoved )
  resizePoints ! ( io Curves_data curveData, in UInt32 pointCount, io UInt32 prevFirstPointIfMoved )
  setDomain ! ( io Curves_data curveData, in Vec2 domainStartAndEnd )
  setExtraData ! ( io Curves_data curveData, in UInt32 dataIndex, in Float32 value )
  setExtraData ! ( io Curves_data curveData, in UInt32 dataIndex, in UInt32 value )
Boolean setNURBSKnot ! ( io Curves_data curveData, in UInt32 knotIndex, in Float32 knotValue )
  setPointPosition ! ( in Curves_data curveData, in UInt32 curvePointIndex, in Vec3 position )
  setPointPosition_d ! ( in Curves_data curveData, in UInt32 curvePointIndex, in Vec3_d position )
  setRationalWeight ! ( io Curves_data curveData, in UInt32 curvePointIndex, in Float32 weight )
  unitUniform_getSpanParam ? ( in Curves_data curveData, in Float32 param, io UInt32 spanIndex, io Float32 spanParam )
  updateCurveTypeAndOrderSharedDataCache ? ( in Curves_data curveData, in UInt32 samplesPerSpan, io Float32 dataCacheToAppendTo[] )

Point methods

Float32 getRationalWeight ? ( in Curves_data curveData, in UInt32 curvePointIndex )

Methods in detail

CurvesStructure ( in CurvesStructure other )

copy constructor


CurvesStructure ()

default constructor


CurvesStructure.NURBS_fixEndKnotsValues! ( io Curves_data curveData )


CurvesStructure.NURBS_forceAsNonPeriodic! ( io Curves_data curveData )


Vec3 CurvesStructure.NURBS_getDerivativeAtParam? ( in Curves_data curveData, in Float32 param )


CurvesStructure.NURBS_getDerivativesAtParam? ( in Curves_data curveData, in Float32 param, io Vec3 dU, io Vec3 dUU )


CurvesStructure.NURBS_getDerivativesAtParam? ( in Curves_data curveData, in Float32 param, io Vec3 dU, io Vec3 dUU, in Boolean computeDUU )


CurvesStructure.NURBS_getEvalKnots? ( in Curves_data curveData, in UInt32 spanIndex, io Float32 knots<> )


Float32 CurvesStructure.NURBS_getParamFromSpanParam? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 param )


CurvesStructure.NURBS_getPoints? ( in Curves_data curveData, in UInt32 spanIndex, io UInt32 count, io UInt32 pointIndices<> )


CurvesStructure.NURBS_getPointsAndWeights? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 pointWeights<> )


CurvesStructure.NURBS_getPointsAndWeights? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 pointWeights<>, io Float32 derPointWeights<> )


CurvesStructure.NURBS_getPointsAndWeights_nonRational? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 pointWeights<> )


CurvesStructure.NURBS_getSpanParam? ( in Curves_data curveData, in Float32 param, io UInt32 spanIndex, io Float32 spanParam )


Vec2 CurvesStructure.NURBS_getSpanRange? ( in Curves_data curveData, in UInt32 spanIndex )


CurvesStructure.NURBS_getWeights? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, in UInt32 count, in UInt32 pointIndices<>, io Float32 pointWeights<> )


CurvesStructure.NURBS_getWeights? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, in UInt32 count, in UInt32 pointIndices<>, io Float32 pointWeights<>, io Float32 derPointWeights<> )


CurvesStructure.NURBS_getWeights_nonRational? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 param, io UInt32 count, io Float32 pointWeights<>, in Boolean evalDerWeights, io Float32 derWeights<>, in Boolean evalDer2Weights, io Float32 der2Weights<> )


UInt32 CurvesStructure.NURBS_openOrCloseCurve_getReservedPointCount! ( io Curves_data curveData, in Boolean open )


CurvesStructure.NURBS_openOrCloseCurve_reservedPoints! ( io Curves_data curveData, in Boolean open, io LocalL8UInt32Array copyAttrFrom, io LocalL8UInt32Array copyAttrTo )


CurvesStructure.NURBS_resizedPoints! ( io Curves_data curveData, in UInt32 prevPointCount )


CurvesStructure.NURBS_updateDomainAndSpanCount! ( io Curves_data curveData )


UInt32 CurvesStructure.addCurveIndex! ( in Boolean recycleUnusedIndices )

Returns the curve index for the added curve Caller has the responsibility to increase the attributes size based on this.pointCount


CurvesStructure.applyRationalQuotient? ( in Curves_data curveData, io Float32 pointWeights<>, in UInt32 pointIndices<>, io Float32 derPointWeights<> )


CurvesStructure.bezier_getDerWeights_nonRational? ( in UInt8 order, in Float32 param, io UInt32 count, io Float32 derPointWeights<> )


Vec3 CurvesStructure.bezier_getDerivativeAtParam? ( in Curves_data curveData, in Float32 param )


CurvesStructure.bezier_getDerivativesAtParam? ( in Curves_data curveData, in Float32 param, io Vec3 dU, io Vec3 dUU )


CurvesStructure.bezier_getDerivativesAtParam? ( in Curves_data curveData, in Float32 param, io Vec3 dU, io Vec3 dUU, in Boolean computeDUU )


CurvesStructure.bezier_getPoints? ( in Curves_data curveData, in UInt32 spanIndex, io UInt32 count, io UInt32 pointIndices<> )


CurvesStructure.bezier_getPointsAndWeights? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 pointWeights<> )


CurvesStructure.bezier_getPointsAndWeights? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 pointWeights<>, io Float32 derPointWeights<> )


CurvesStructure.bezier_getPointsAndWeights_nonRational? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 pointWeights<> )


CurvesStructure.bezier_getWeights? ( in Curves_data curveData, in Float32 spanParam, in UInt32 count, in UInt32 pointIndices<>, io Float32 pointWeights<> )


CurvesStructure.bezier_getWeights? ( in Curves_data curveData, in Float32 spanParam, in UInt32 count, in UInt32 pointIndices<>, io Float32 pointWeights<>, io Float32 derPointWeights<> )


CurvesStructure.bezier_getWeights_nonRational? ( in UInt8 order, in Float32 param, io UInt32 count, io Float32 pointWeights<> )


UInt32 CurvesStructure.bezier_openOrCloseCurve_getReservedPointCount! ( io Curves_data curveData, in Boolean open )


CurvesStructure.bezier_openOrCloseCurve_reservedPoints! ( io Curves_data curveData, in Boolean open, io LocalL8UInt32Array copyAttrFrom, io LocalL8UInt32Array copyAttrTo )


CurvesStructure.bezier_updateDomainAndSpanCountFromPoints! ( io Curves_data curveData )

Bezier CURVES


CurvesStructure.clearCurve! ( in UInt32 curveIndex )


CurvesStructure CurvesStructure.clone? ()

clone method


CurvesStructure.copy! ( in CurvesStructure src )

STRUCTURE CHANGES


CurvesStructure.copyCurve! ( in CurvesStructure sourceCurves, in UInt32 sourceCurveIndex, in UInt32 targetCurveIndex )


UInt32 CurvesStructure.curveCount? ()

Curve count. Note: in some cases this might include some removed (unactive) curves that are within the range.


CurvesStructure.getCurvature? ( in Curves_data curveData, in Float32 param, io Vec3 T, io Vec3 K )

getCurvature: based on OpenNURBS’s ON_Curve::EvCurvature <http://www.opennurbs.org>. T = unit tangent K = curvature (kappa) Null vectors (:ref:`Vec3 <vec3>`()) are returned in case of error.


Vec3 CurvesStructure.getCurvatureAtNormalizedParam? ( in Curves_data curveData, in Float32 normalizedParam )


Vec3 CurvesStructure.getCurvatureAtParam? ( in Curves_data curveData, in Float32 param )


UInt8 CurvesStructure.getCurveType? ( in Curves_data curveData )


Vec3 CurvesStructure.getDerivativeAtNormalizedParam? ( in Curves_data curveData, in Float32 normalizedParam )


Vec3 CurvesStructure.getDerivativeAtParam? ( in Curves_data curveData, in Float32 param )


CurvesStructure.getDerivativesAtNormalizedParam? ( in Curves_data curveData, in Float32 normalizedParam, io Vec3 dU, io Vec3 dUU )

The normalizedParam shoud be within the range [0..1], which will be remapped linearly from domainStart to domainEnd.


CurvesStructure.getDerivativesAtParam? ( in Curves_data curveData, in Float32 param, io Vec3 dU, io Vec3 dUU )


Vec2 CurvesStructure.getDomain? ( in Curves_data curveData )


UInt32 CurvesStructure.getExtraData? ( in Curves_data curveData, in UInt32 dataIndex )


Float32 CurvesStructure.getExtraDataFloat? ( in Curves_data curveData, in UInt32 dataIndex )


UInt32 CurvesStructure.getExtraDataOffset? ( in Curves_data curveData )


UInt32 CurvesStructure.getExtraDataSize? ( in Curves_data curveData )


UInt32 CurvesStructure.getFirstPointIndex? ( in Curves_data curveData )

SIMPLE ACCESSORS


Vec4 CurvesStructure.getHomogeneousPointPosition? ( in Curves_data curveData, in Size curvePointIndex )


Vec4_d CurvesStructure.getHomogeneousPointPosition_d? ( in Curves_data curveData, in Size curvePointIndex )


UInt32 CurvesStructure.getNURBSCVCountWithRepeats? ( in Curves_data curveData )

Returns the CV count including repeated ones (which we don’t store), as in the “classical” implementation


Float32 CurvesStructure.getNURBSKnot? ( in Curves_data curveData, in UInt32 knotIndex )

Returns the implicit or stored knot value


UInt32 CurvesStructure.getNURBSKnotCount? ( in Curves_data curveData )


Float32 CurvesStructure.getNURBSUniformKnotValue? ( in Curves_data curveData, in UInt32 knotIndex )

Returns the implicit uniform knot value


Vec3 CurvesStructure.getNormalAtNormalizedParam? ( in Curves_data curveData, in Float32 normalizedParam )


Vec3 CurvesStructure.getNormalAtParam? ( in Curves_data curveData, in Float32 param )


UInt8 CurvesStructure.getOrder? ( in Curves_data curveData )


UInt32 CurvesStructure.getPointCount? ( in Curves_data curveData )


UInt32 CurvesStructure.getPointCount? ( in Curves_data curveData, in Boolean includeRepeatedPoints )


UInt32 CurvesStructure.getPointIndex_check? ( in Curves_data curveData, in UInt32 curvePointIndex )


CurvesStructure.getPointIndicesAndWeightsAtNormalizedParam? ( in Curves_data curveData, in Float32 normalizedParam, io LocalL8UInt32Array pointIndices, io LocalL8ScalarArray pointWeights )


CurvesStructure.getPointIndicesAndWeightsAtNormalizedParam? ( in Curves_data curveData, in Float32 normalizedParam, io LocalL8UInt32Array pointIndices, io LocalL8ScalarArray pointWeights, io LocalL8ScalarArray derivativePointWeights )


CurvesStructure.getPointIndicesAndWeightsAtParam? ( in Curves_data curveData, in Float32 param, io LocalL8UInt32Array pointIndices, io LocalL8ScalarArray pointWeights )


CurvesStructure.getPointIndicesAndWeightsAtParam? ( in Curves_data curveData, in Float32 param, io LocalL8UInt32Array pointIndices, io LocalL8ScalarArray pointWeights, io LocalL8ScalarArray derivativePointWeights )


Vec3 CurvesStructure.getPointPosition? ( in Curves_data curveData, in Size curvePointIndex )


Vec3_d CurvesStructure.getPointPosition_d? ( in Curves_data curveData, in Size curvePointIndex )


Vec3 CurvesStructure.getPointPosition_nocheck? ( in Curves_data curveData, in Size curvePointIndex )


CurvesStructure.getPointRange? ( in Curves_data curveData, io UInt32 firstPoint, io UInt32 pointsEnd )


CurvesStructure.getPoints? ( in Curves_data curveData, in UInt32 spanIndex, io UInt32 count, io UInt32 pointIndices<> )


CurvesStructure.getPointsAndWeights? ( in Curves_data curveData, in Float32 param, io UInt32 count, io UInt32 pointIndices<>, io Float32 weights<> )


CurvesStructure.getPointsAndWeights? ( in Curves_data curveData, in Float32 param, io UInt32 count, io UInt32 pointIndices<>, io Float32 weights<>, io Float32 derivativePointWeights<> )


CurvesStructure.getPointsAndWeights? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 weights<> )


CurvesStructure.getPointsAndWeights? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 weights<>, io Float32 derivativePointWeights<> )


Vec3 CurvesStructure.getPositionAtNormalizedParam? ( in Curves_data curveData, in Float32 normalizedParam )


Vec3_d CurvesStructure.getPositionAtNormalizedParam_d? ( in Curves_data curveData, in Float32 normalizedParam )


Vec3 CurvesStructure.getPositionAtParam? ( in Curves_data curveData, in Float32 param )


Vec3_d CurvesStructure.getPositionAtParam_d? ( in Curves_data curveData, in Float32 param )


CurvesStructure.getReservedPointRange? ( in Curves_data curveData, io UInt32 firstPoint, io UInt32 pointsEnd )


CurvesStructure.getSpanParam? ( in Curves_data curveData, in Float32 param, io UInt32 spanIndex, io Float32 spanParam )


Vec2 CurvesStructure.getSpanRange? ( in Curves_data curveData, in UInt32 spanIndex )

EVALUATION


CurvesStructure.getTangentAndCurvatureAtNormalizedParam? ( in Curves_data curveData, in Float32 normalizedParam, io Vec3 tangent, io Vec3 curvature )


CurvesStructure.getTangentAndCurvatureAtParam? ( in Curves_data curveData, in Float32 param, io Vec3 tangent, io Vec3 curvature )


Vec3 CurvesStructure.getTangentAtNormalizedParam? ( in Curves_data curveData, in Float32 normalizedParam )


Vec3 CurvesStructure.getTangentAtParam? ( in Curves_data curveData, in Float32 param )


CurvesStructure.getWeights? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, in UInt32 count, in UInt32 pointIndices<>, io Float32 weights<> )


CurvesStructure.getWeights? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, in UInt32 count, in UInt32 pointIndices<>, io Float32 weights<>, io Float32 derWeights<> )


CurvesStructure.increaseNURBSStoredKnots! ( io Curves_data curveData, in UInt32 knotsCount )

Adds more knots, with spans of 1 unit, and sets end knots depending on periodic (mirrors intervals) or not (multiple knots)


UInt32 CurvesStructure.initCurve! ( in UInt32 curveIndex, in UInt8 curveType, in UInt8 order, in Boolean isClosed, in UInt32 pointCount )

Returns the curve index for the added curve Caller has the responsibility to increase the attributes size based on this.pointCount


UInt32 CurvesStructure.initNURBSCurve! ( in UInt32 curveIndex, in UInt8 order, in UInt8 curveForm, in UInt32 pointCount )

NURBS CURVES


Boolean CurvesStructure.isClosed? ( in Curves_data curveData )


Boolean CurvesStructure.isEmptyNURBSSpan? ( in Curves_data curveData, in UInt32 spanIndex )


Boolean CurvesStructure.isRemoved? ( in Curves_data curveData )


Vec3 CurvesStructure.linear_getDerivativeAtParam? ( in Curves_data curveData, in Float32 param )


CurvesStructure.linear_getDerivativesAtParam? ( in Curves_data curveData, in Float32 param, io Vec3 dU, io Vec3 dUU )


UInt32[2] CurvesStructure.linear_getPoints? ( in Curves_data curveData, in UInt32 spanIndex )


CurvesStructure.linear_getPoints? ( in Curves_data curveData, in UInt32 spanIndex, io UInt32 count, io UInt32 pointIndices<> )


CurvesStructure.linear_getPointsAndWeights? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 pointWeights<> )


CurvesStructure.linear_getPointsAndWeights? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io UInt32 count, io UInt32 pointIndices<>, io Float32 pointWeights<>, io Float32 derivativePointWeights<> )


CurvesStructure.linear_getWeights? ( in Curves_data curveData, in Float32 spanParam, io Float32 pointWeights<> )


CurvesStructure.linear_getWeights? ( in Curves_data curveData, in UInt32 spanIndex, in Float32 spanParam, io Float32 pointWeights<>, io Float32 derivativePointWeights<> )


CurvesStructure.linear_openOrCloseCurve_reservedPoints! ( io Curves_data curveData, in Boolean open )


CurvesStructure.linear_updateDomainAndSpanCountFromPoints! ( io Curves_data curveData )


UInt32 CurvesStructure.openOrCloseCurve_getReservedPointCount! ( io Curves_data curveData, in Boolean open )


CurvesStructure.openOrCloseCurve_reservedPoints! ( io Curves_data curveData, in Boolean open, io LocalL8UInt32Array copyAttrFrom, io LocalL8UInt32Array copyAttrTo )


Float32 CurvesStructure.rational_divideWeights? ( in Curves_data curveData, in UInt32 count, in UInt32 pointIndices<>, io Float32 pointWeights<>, in Boolean multiplyByRationalWeight )


CurvesStructure.recompactCurveIndices! ()


CurvesStructure.removeCurve! ( in UInt32 curveIndex )


CurvesStructure.reportPointIndexRangeError? ( in Curves_data curveData, in UInt32 curvePointIndex )


CurvesStructure.reservePoints! ( io Curves_data curveData, in UInt32 reservedPointCount, io UInt32 prevFirstPointIfMoved )

Caller has the responsibility to increase the attributes size based on this.pointCount If prevFirstPointIfMoved != InvalidIndex, related point data (eg: attributes) needs to be copied accordingly.


CurvesStructure.resizeExtraData! ( io Curves_data curveData, in Size size )


CurvesStructure.resizePoints! ( io Curves_data curveData, in UInt32 newPointCount, io UInt32 prevFirstPointIfMoved, io UInt32 prevPointCountIfMoved )


CurvesStructure.resizePoints! ( io Curves_data curveData, in UInt32 pointCount, io UInt32 prevFirstPointIfMoved )

Returns the curve index for the added curve Caller has the responsibility to increase the attributes size based on this.pointCount If prevFirstPointIfMoved != InvalidIndex, related point data (eg: attributes) needs to be copied accordingly.


CurvesStructure.setDomain! ( io Curves_data curveData, in Vec2 domainStartAndEnd )


CurvesStructure.setExtraData! ( io Curves_data curveData, in UInt32 dataIndex, in Float32 value )


CurvesStructure.setExtraData! ( io Curves_data curveData, in UInt32 dataIndex, in UInt32 value )


Boolean CurvesStructure.setNURBSKnot! ( io Curves_data curveData, in UInt32 knotIndex, in Float32 knotValue )

Returns true if it changed


CurvesStructure.setPointPosition! ( in Curves_data curveData, in UInt32 curvePointIndex, in Vec3 position )


CurvesStructure.setPointPosition_d! ( in Curves_data curveData, in UInt32 curvePointIndex, in Vec3_d position )


CurvesStructure.setRationalWeight! ( io Curves_data curveData, in UInt32 curvePointIndex, in Float32 weight )


CurvesStructure.unitUniform_getSpanParam? ( in Curves_data curveData, in Float32 param, io UInt32 spanIndex, io Float32 spanParam )

LINEAR CURVES


CurvesStructure.updateCurveTypeAndOrderSharedDataCache? ( in Curves_data curveData, in UInt32 samplesPerSpan, io Float32 dataCacheToAppendTo[] )


Point methods

Float32 CurvesStructure.getRationalWeight? ( in Curves_data curveData, in UInt32 curvePointIndex )