NURBSCurveKit

class HPS::NURBSCurveKit : public HPS::Kit

The NURBSCurveKit class is a user space object. It is a kit analog to a NURBSCurveKey.

Public Functions

void Consume(NURBSCurveKit &in_kit)

Copies the source NURBSCurveKit into this NURBSCurveKit and resets the source kit.

Parameters

in_kit – The source NURBSCurveKit to consume.

NURBSCurveKit &EditKnotsByDeletion(size_t in_offset, size_t in_count)

Removes knots for this NURBSCurveKit. This will allow modification of the default knots if no explicit knots are set if possible.

Parameters
  • in_offset – The offset into the knots for the NURBSCurveKit at which to start removing knots. This value must be such that in_offset<control_point_count+degree+1 for deletion to succeed.

  • in_count – The number of knots to delete for the NURBSCurveKit. This value must be such that in_offset+in_count<=control_point_count+degree+1 for the deletion to succeed.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &EditKnotsByInsertion(size_t in_offset, FloatArray const &in_knots)

Adds knots for this NURBSCurveKit. This will allow modification of the default knots if no explicit knots are set if possible.

Parameters
  • in_offset – The offset into the knots the NURBSCurveKit at which to insert knots. This value must be such that in_offset<control_point_count+degree+1 for insertion to succeed.

  • in_knots – The knots to insert at the specified offset.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &EditKnotsByInsertion(size_t in_offset, size_t in_count, float const in_knots[])

Adds knots for this NURBSCurveKit. This will allow modification of the default knots if no explicit knots are set if possible.

Parameters
  • in_offset – The offset into the knots the NURBSCurveKit at which to insert knots. This value must be such that in_offset<control_point_count+degree+1 for insertion to succeed.

  • in_count – Size of the following array.

  • in_knots – The knots to insert at the specified offset.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &EditKnotsByReplacement(size_t in_offset, FloatArray const &in_knots)

Replaces knots for this NURBSCurveKit. This will allow modification of the default knots if no explicit knots are set if possible.

Parameters
  • in_offset – The offset into the knots for the NURBSCurveKit at which to replace knots. This value must be such that in_offset<control_point_count+degree+1 for the replacement to succeed.

  • in_knots – The knots to use to replace those at the specified offset. The size of the array must be such that in_offset+in_knots.size()<=control_point_count+degree+1 for the replacement to succeed.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &EditKnotsByReplacement(size_t in_offset, size_t in_count, float const in_knots[])

Replaces knots for this NURBSCurveKit. This will allow modification of the default knots if no explicit knots are set if possible.

Parameters
  • in_offset – The offset into the knots for the NURBSCurveKit at which to replace knots. This value must be such that in_offset<control_point_count+degree+1 for the replacement to succeed.

  • in_count – Size of the following array. This value must be such that in_offset+in_count<=control_point_count+degree+1 for the replacement to succeed.

  • in_knots – The knots to use to replace those at the specified offset.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &EditPointsByDeletion(size_t in_offset, size_t in_count)

Removes points from the control point list for this NURBSCurveKit.

Parameters
  • in_offset – The offset into the control point list for the NURBSCurveKit at which to start removing points. This value must be such that in_offset<control_point_count for deletion to succeed.

  • in_count – The number of points to delete from the control point list for the NURBSCurveKit. This value must be such that in_offset+in_count<=control_point_count for the deletion to succeed.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &EditPointsByInsertion(size_t in_offset, PointArray const &in_points)

Adds points to the control point list for this NURBSCurveKit.

Parameters
  • in_offset – The offset into the control point list for the NURBSCurveKit at which to insert points. This value must be such that in_offset<control_point_count for insertion to succeed.

  • in_points – The points to insert into the control point list at the specified offset.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &EditPointsByInsertion(size_t in_offset, size_t in_count, Point const in_points[])

Adds points to the control point list for this NURBSCurveKit.

Parameters
  • in_offset – The offset into the control point list for the NURBSCurveKit at which to insert points. This value must be such that in_offset<control_point_count for insertion to succeed.

  • in_count – Size of the following array.

  • in_points – The points to insert into the control point list at the specified offset.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &EditPointsByReplacement(size_t in_offset, PointArray const &in_points)

Replaces control points for this NURBSCurveKit.

Parameters
  • in_offset – The offset into the control point list for the NURBSCurveKit at which to replace points. This value must be such that in_offset<control_point_count for insertion to succeed.

  • in_points – The points to use to replace those in the control point list at the specified offset. This size of the array must be such that in_offset+in_points.size()<=control_point_count for the replacement to succeed.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &EditPointsByReplacement(size_t in_offset, size_t in_count, Point const in_points[])

Replaces control points for this NURBSCurveKit.

Parameters
  • in_offset – The offset into the control point list for the NURBSCurveKit at which to replace points. This value must be such that in_offset<control_point_count for insertion to succeed.

  • in_count – Size of the following array. This value must be such that in_offset+in_count<=control_point_count for the replacement to succeed.

  • in_points – The points to use to replace those in the control point list at the specified offset.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &EditWeightsByDeletion(size_t in_offset, size_t in_count)

Removes weights from the control point weight list for this NURBSCurveKit. This will allow modification of the default control point weights if no explicit weights are set if possible.

Parameters
  • in_offset – The offset into the control point weight list for the NURBSCurveKit at which to start removing weights. This value must be such that in_offset<control_point_count for deletion to succeed.

  • in_count – The number of weights to delete from the control point weight list for the NURBSCurveKit. This value must be such that in_offset+in_count<=weight_count for the deletion to succeed.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &EditWeightsByInsertion(size_t in_offset, FloatArray const &in_weights)

Adds weights to the control point weight list for this NURBSCurveKit. This will allow modification of the default control point weights if no explicit weights are set if possible.

Parameters
  • in_offset – The offset into the control point weight list for the NURBSCurveKit at which to insert weights. This value must be such that in_offset<control_point_count for insertion to succeed.

  • in_weights – The weights to insert into the control point weight list at the specified offset.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &EditWeightsByInsertion(size_t in_offset, size_t in_count, float const in_weights[])

Adds weights to the control point weight list for this NURBSCurveKit. This will allow modification of the default control point weights if no explicit weights are set if possible.

Parameters
  • in_offset – The offset into the control point weight list for the NURBSCurveKit at which to insert weights. This value must be such that in_offset<control_point_count for insertion to succeed.

  • in_count – Size of the following array.

  • in_weights – The weights to insert into the control point weight list at the specified offset.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &EditWeightsByReplacement(size_t in_offset, FloatArray const &in_weights)

Replaces control point weights for this NURBSCurveKit. This will allow modification of the default control point weights if no explicit weights are set if possible.

Parameters
  • in_offset – The offset into the control point weight list for the NURBSCurveKit at which to replace weights. This value must be such that in_offset<control_point_count for insertion to succeed.

  • in_weights – The weights to use to replace those in the control point weight list at the specified offset. This size of the array must be such that in_offset+in_weights.size()<=weight_count for the replacement to succeed.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &EditWeightsByReplacement(size_t in_offset, size_t in_count, float const in_weights[])

Replaces control point weights for this NURBSCurveKit. This will allow modification of the default control point weights if no explicit weights are set if possible.

Parameters
  • in_offset – The offset into the control point weight list for the NURBSCurveKit at which to replace weights. This value must be such that in_offset<control_point_count for insertion to succeed.

  • in_count – Size of the following array. This value must be such that in_offset+in_count<=weight_count for the replacement to succeed.

  • in_weights – The weights to use to replace those in the control point weight list at the specified offset.

Returns

A reference to this NURBSCurveKit.

virtual bool Empty() const

Indicates whether this NURBSCurveKit has any values set on it.

Returns

true if no values are set on this NURBSCurveKit, false otherwise.

bool Equals(NURBSCurveKit const &in_kit) const

Check if the source NURBSCurveKit is equivalent to this NURBSCurveKit.

Parameters

in_kit – The source NURBSCurveKit to compare to this NURBSCurveKit.

Returns

true if the objects are equivalent, false otherwise.

size_t GetPointCount() const

Retrieves the number of points in this NURBS curve.

Returns

The number of points in this NURBS curve.

NURBSCurveKit()

The default constructor creates an empty NURBSCurveKit object.

NURBSCurveKit(NURBSCurveKit &&in_that)

The move constructor creates a NURBSCurveKit by transferring the underlying impl of the rvalue reference to this NURBSCurveKit thereby avoiding a copy and allocation.

Parameters

in_that – An rvalue reference to a NURBSCurveKit to take the impl from.

NURBSCurveKit(NURBSCurveKit const &in_kit)

The copy constructor creates a new NURBSCurveKit object that contains the same settings as the source NURBSCurveKit.

Parameters

in_kit – The source NURBSCurveKit to copy.

inline virtual HPS::Type ObjectType() const

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Returns

The declared type of the object in question, which may differ from the true, underlying type.

bool operator!=(NURBSCurveKit const &in_kit) const

Check if the source NURBSCurveKit is not equivalent to this NURBSCurveKit.

Parameters

in_kit – The source NURBSCurveKit to compare to this NURBSCurveKit.

Returns

true if the objects are not equivalent, false otherwise.

NURBSCurveKit &operator=(NURBSCurveKit &&in_that)

The move assignment operator transfers the underlying impl of the rvalue reference to this NURBSCurveKit thereby avoiding a copy.

Parameters

in_that – An rvalue reference to a NURBSCurveKit to take the impl from.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &operator=(NURBSCurveKit const &in_kit)

Copies the source NURBSCurveKit into this NURBSCurveKit.

Parameters

in_kit – The source NURBSCurveKit to copy.

Returns

A reference to this NURBSCurveKit.

bool operator==(NURBSCurveKit const &in_kit) const

Check if the source NURBSCurveKit is equivalent to this NURBSCurveKit.

Parameters

in_kit – The source NURBSCurveKit to compare to this NURBSCurveKit.

Returns

true if the objects are equivalent, false otherwise.

void Set(NURBSCurveKit const &in_kit)

Copies the source NURBSCurveKit into this NURBSCurveKit.

Parameters

in_kit – The source NURBSCurveKit to copy.

NURBSCurveKit &SetDegree(size_t in_degree)

Sets the degree of the NURBSCurveKit.

Parameters

in_degree – The degree of the NURBSCurveKit.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &SetKnots(FloatArray const &in_knots)

Sets the knots for the NURBSCurveKit.

Parameters

in_knots – The knots for the NURBSCurveKit.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &SetKnots(size_t in_count, float const in_knots[])

Sets the knots for the NURBSCurveKit.

Parameters
  • in_count – Size of the following array.

  • in_knots – The knots for the NURBSCurveKit.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &SetParameters(float in_start, float in_end)

Sets the normalized start and end parameters for the NURBSCurveKit.

Parameters
  • in_start – The normalized start parameter for the NURBSCurveKit.

  • in_end – The normalized end parameter for the NURBSCurveKit.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &SetPoints(PointArray const &in_points)

Sets the control points for the NURBSCurveKit.

Parameters

in_points – The control points for the NURBSCurveKit.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &SetPoints(size_t in_count, Point const in_points[])

Sets the control points for the NURBSCurveKit.

Parameters
  • in_count – Size of the following array.

  • in_points – The control points for the NURBSCurveKit.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &SetPriority(int in_priority)

Assigns a specific drawing priority value to the NURBSCurveKit. It affects the order in which the contents of this segment are drawn if and only if the rendering algorithm is set to Priority.

See

SubwindowKit::SetPriority()

See

SubwindowKit::SetRenderingAlgorithm()

Parameters

in_priority – The drawing priority, higher priority items are drawn on top of lower priority items.

Returns

A reference to this object.

NURBSCurveKit &SetUserData(intptr_t in_index, ByteArray const &in_data)

Sets user data on this kit.

Parameters
  • in_index – The index of the user data to set.

  • in_data – The bytes of user data to set.

Returns

A reference to this kit.

NURBSCurveKit &SetUserData(intptr_t in_index, size_t in_bytes, byte const in_data[])

Sets user data on this kit.

Parameters
  • in_index – The index of the user data to set.

  • in_bytes – The number of bytes of user data to set.

  • in_data – The bytes of user data to set.

Returns

A reference to this kit.

NURBSCurveKit &SetUserData(IntPtrTArray const &in_indices, ByteArrayArray const &in_data)

Sets user data on this kit.

Parameters
  • in_indices – An array of user data indices to set.

  • in_data – An array of bytes of user data to set.

Returns

A reference to this kit.

NURBSCurveKit &SetWeights(FloatArray const &in_weights)

Sets the control point weights for the NURBSCurveKit.

Parameters

in_weights – The control point weights for the NURBSCurveKit.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &SetWeights(size_t in_count, float const in_weights[])

Sets the control point weights for the NURBSCurveKit.

Parameters
  • in_count – Size of the following array.

  • in_weights – The control point weights for the NURBSCurveKit.

Returns

A reference to this NURBSCurveKit.

void Show(NURBSCurveKit &out_kit) const

Copies this NURBSCurveKit into the given NURBSCurveKit.

Parameters

out_kit – The NURBSCurveKit to populate with the contents of this NURBSCurveKit.

bool ShowDegree(size_t &out_degree) const

Shows the degree of this NURBSCurveKit.

Parameters

out_degree – The degree of this NURBSCurveKit.

Returns

true if a degree was set, false otherwise.

bool ShowKnots(FloatArray &out_knots) const

Shows the knots for this NURBSCurveKit.

Parameters

out_knots – The knots for this NURBSCurveKit.

Returns

true if knots were set, false otherwise.

bool ShowParameters(float &out_start, float &out_end) const

Shows the normalized start and end parameters for this NURBSCurveKit.

Parameters
  • out_start – The normalized start parameter for this NURBSCurveKit.

  • out_end – The normalized end parameter for this NURBSCurveKit.

Returns

true if start and end parameters were set, false otherwise.

bool ShowPoints(PointArray &out_points) const

Shows the control points for this NURBSCurveKit.

Parameters

out_points – The control points for this NURBSCurveKit.

Returns

true if control points were set, false otherwise.

bool ShowPointsByList(size_t in_count, size_t const in_indices[], PointArray &out_points) const

Show a subset of the points for this NURBSCurveKit by list.

Parameters
  • in_count – The number of points to show.

  • in_indices – The list of point indices to show.

  • out_points – The requested points for this NURBSCurveKit.

Returns

true if all requested points were set, false otherwise.

bool ShowPointsByList(SizeTArray const &in_indices, PointArray &out_points) const

Show a subset of the points for this NURBSCurveKit by list.

Parameters
  • in_indices – The list of point indices to show.

  • out_points – The requested points for this NURBSCurveKit.

Returns

true if all requested points were set, false otherwise.

bool ShowPointsByRange(size_t in_start_index, size_t in_count, PointArray &out_points) const

Show a subset of the points for this NURBSCurveKit by range.

Parameters
  • in_start_index – The first point to show.

  • in_count – The number of points to show.

  • out_points – The requested points for this NURBSCurveKit.

Returns

true if all requested points were set, false otherwise.

bool ShowPriority(int &out_priority) const

Shows the drawing priority.

Parameters

out_priority – The drawing priority, higher priority items are drawn on top of lower priority items.

Returns

true if the setting is valid, false otherwise.

bool ShowUserData(intptr_t in_index, ByteArray &out_data) const

Shows the user data at a given index for this kit.

Parameters
  • in_index – The index of the user data to show.

  • out_data – The user data at the given index.

Returns

true if there is user data at the given index, false otherwise.

bool ShowUserData(IntPtrTArray &out_indices, ByteArrayArray &out_data) const

Shows all user data for this kit.

Parameters
  • out_indices – An array of all user data indices set on this kit.

  • out_data – An array of all user data set on this kit.

Returns

true if there is user data on this kit, false otherwise.

size_t ShowUserDataCount() const

Get the number of user data indices set on this kit.

bool ShowUserDataIndices(IntPtrTArray &out_indices) const

Shows the indices of all user data set on this kit.

Parameters

out_indices – The user data indices set on this kit.

Returns

The number of user data indices set on this kit.

bool ShowWeights(FloatArray &out_weights) const

Shows the control point weights for this NURBSCurveKit.

Parameters

out_weights – The control point weights for this NURBSCurveKit.

Returns

true if control point weights were set, false otherwise.

NURBSCurveKit &UnsetAllUserData()

Removes all user data from this kit.

Returns

A reference to this kit.

NURBSCurveKit &UnsetDegree()

Removes the setting for the degree of the NURBSCurveKit.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &UnsetEverything()

Removes all settings from the NURBSCurveKit.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &UnsetKnots()

Removes the knots for the NURBSCurveKit.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &UnsetParameters()

Removes the normalized start and end parameters for the NURBSCurveKit.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &UnsetPoints()

Removes the control points for the NURBSCurveKit.

Returns

A reference to this NURBSCurveKit.

NURBSCurveKit &UnsetPriority()

Removes a drawing priority setting.

Returns

A reference to this object.

NURBSCurveKit &UnsetUserData(intptr_t in_index)

Removes the user data at the given index from this kit.

Parameters

in_index – The index of the user data to remove.

Returns

A reference to this kit.

NURBSCurveKit &UnsetUserData(IntPtrTArray const &in_indices)

Removes the user data at the given indices from this kit.

Parameters

in_indices – The indices of the user data to remove.

Returns

A reference to this kit.

NURBSCurveKit &UnsetUserData(size_t in_count, intptr_t const in_indices[])

Removes the user data at the given indices from this kit.

Parameters
  • in_count – The size of the following array.

  • in_indices – The indices of the user data to remove.

Returns

A reference to this kit.

NURBSCurveKit &UnsetWeights()

Removes the control point weights for the NURBSCurveKit.

Returns

A reference to this NURBSCurveKit.

virtual ~NURBSCurveKit()

Public Static Attributes

static const HPS::Type staticType = HPS::Type::NURBSCurveKit