Database curve type
pw::Object pw::Entity pw::DatabaseEntity
pw:: | Database curve type |
Static Actions | |
create | This action creates a new curve object. |
join | This action joins as many of the given curves together as possible. |
getBestSegment | This action, given two point-lists, returns a segment type, a start point, an end point, and a ProjectToCommon state that represent the best segment for a database curve between the given points. |
getOffsetPoint | This action gets the best offset point for the given curve. |
getOffsetNormal | This action finds the best offset normal vector from this curve to a point. |
Instance Actions | |
getSegmentCount | This action gets the number of segments in this curve. |
getSegment | This action gets the segment at the given index. |
getSegments | This action gets all the segments. |
setSegment | This action sets the segment at the given index. |
addSegment | This action adds the segment to the end of the segments in the curve. |
insertSegment | This action inserts the segment at the given index. |
removeSegment | This action removes a segment from the curve. |
removeAllSegments | This action removes all of the segments from the curve. |
replaceAllSegments | This action replaces all of the segments in the curve. |
getPosition | This action gets a position on a curve in the defining space of the curve. |
getXYZ | This action gets a position on the curve in model space. |
getParameter | This action gets a normalized parameter value on a curve. |
getRadiusOfCurvature | This action returns the radius of curvature at the specified position on this curve. |
getTangent | This action gets the tangency vector on the curve at a location. |
getGeometricProperties | This action calculates the geometric properties at the specified position on the curve. |
getLength | This action gets the curve length from the beginning to a given location. |
getParameters | This action gets the parameters at which the curve intersect the value. |
getTotalLength | This action gets the total length of the curve. |
offset | This action sets this curve as an offset from the given curve. |
getOffsetPoint | This action gets the best offset point for the given curve. |
getOffsetNormal | This action finds the best offset normal vector from this curve to a point. |
extract | This action sets this curve as a constant paramater curve of the given surface. |
spline | This action sets this curve to a smooth interpolation of the control points of the given curve. |
fitLSQ | This action sets this curve to a least squares fit approximation of the control points of the given curve. |
smoothC1 | This action sets this curve to a C1 continuous approximation of the shape of the given curve. |
split | This action splits the curve at a given parameter value. |
project | This action projects this curve onto one or more database entities. |
getDefaultProjectDirection | This action gets the default projection direction for this curve. |
setOrientation | This action sets the curve orientation. |
alignOrientation | This action aligns the U orientation of the given curves with this curve. |
getAssembleTolerance | This action returns the maximum tolerance used to close the model along the curve. |
isClosed | This action checks if the curve is closed. |
isPole | This action check if the curve is a pole. |
getDiscontinuities | This action returns a list of parameters at discontinuities with a bend angle greater than the given angle. |
closestControlPoint | This action gets the control point on this curve closest to the given point or ray. |
getControlPointCount | This action gets the number of control points on this curve. |
getControlPoints | This action gets the control point array of this curve. |
removeInteriorControlPoints | This action removes the interior control points of each segment of this curve. |
pw::Curve create
This action creates a new curve object.
This action has no parameters.
This action returns a new pw::Curve object.
pw::Curve join ?-reject rejectVar? ?-tolerance tol? curves
This action joins as many of the given curves together as possible.
-reject rejectVar | This optional parameter is the string name of a variable to receive a list of pw::Curve objects that were not used in joining. |
-tolerance tol | This optional parameter is the join tolerance, with the default value being the current fit tolerance. |
curves | This parameter is a list of pw::Curve objects to join. |
This action returns a list of the pw::Curve objects that were joined.
This command supports progress updates.
pw::Curve getBestSegment ?-start startVar? ?-end endVar? ?-projectToCommon projectToCommonVar? start_points end_points
This action, given two point-lists, returns a segment type, a start point, an end point, and a ProjectToCommon state that represent the best segment for a database curve between the given points.
-start startVar | This optional parameter is the string name of a variable to receive the best start integer index or point. |
-end endVar | This optional parameter is the string name of a variable to receive the best end integer index or point. |
-projectToCommon projectToCommonVar | This optional parameter is the string name of a variable to receive the ProjectToCommon <bool> state for the best segment. |
start_points | This parameter is a list of points for the start of the segment. |
end_points | This parameter is a list of points for the end of the segment. |
This action returns a segment type string.
This example shows how to find the best segment between two end points.
Code
puts [pw::Curve getBestSegment -start st -end en \ [list {0 10 0} {10 10 0}] puts $st; puts $en
Output
pw::SegmentSpline 0 0
pw::Curve getOffsetPoint ?-flip? curve target_point ?dir?
This action gets the best offset point for the given curve.
-flip | This optional falg is the notification that the offset point will be flipped to the opposite side of the curve. |
curve | This parameter is a pw::Curve object or a boundary to offset from |
target_point | This parameter finds the offset point closest to point target_point. |
dir | This parameter is a direction vector that is used to find the closest offset point to a ray. |
This action returns the offset point.
pw::Curve getOffsetNormal ?-flip? curve point ?dir?
This action finds the best offset normal vector from this curve to a point.
-flip | This optional flag is the notification that the offset normal will be flipped to the opposite side of the curve. |
curve | This parameter is a pw::Curve object or a boundary to offset from |
target_point | This parameter finds the offset vector closest to point target_point. |
dir | This parameter is a direction vector and is used to find the best offset normal vector to a ray. |
This action returns the best normal vector.
$curve getSegmentCount
This action gets the number of segments in this curve.
This action has no parameters.
This action returns the integer number of segments.
$curve getSegment ?-copy? index
This action gets the segment at the given index.
-copy | This optional flag is a notification that a copy of the segment is returned. |
index | This parameter is the integer index of the segment to get with the range [1, number of segments]. |
This action returns a pw::Segment object.
$curve getSegments ?-copy?
This action gets all the segments.
-copy | This optional flag is a notification that a copy of the segments are returned. |
This action returns a pw::Segment object list.
$curve setSegment index segment
This action sets the segment at the given index.
index | This parameter is the integer index of the segment to set with the range [1, number of segments]. |
segment | This parameter is the pw::Segment object to set. |
This action returns nothing.
$curve addSegment segment
This action adds the segment to the end of the segments in the curve.
segment | This parameter is the pw::Segment object to add. |
This action returns nothing.
An error will be raised if the segment already belongs to another curve.
$curve insertSegment index segment
This action inserts the segment at the given index.
index | This parameter is the integer index to insert the given segment at with the range [1, number of segments + 1]. |
segment | This parameter is the pw::Segment object to insert. |
This action returns nothing.
An error will be raised if the segment already belongs to another curve.
$curve removeSegment < index | segment >
This action removes a segment from the curve.
index | This parameter is the integer index of the segment to remove with the range [1, number of segments]. |
segment | This parameter is a pw::Segment object to remove. |
This action returns nothing.
$curve replaceAllSegments segments
This action replaces all of the segments in the curve.
segments | This parameter is a list of pw::Segment objects that will be the new segments of this curve. |
This action returns nothing.
$curve getPosition ?< -parameter | -control | -arc | -X | -Y | -Z | -closest >? value
This action gets a position on a curve in the defining space of the curve.
-parameter | This optional flag is notification to get the position at a parameter. The value is a float with the range [0.0, 1.0], or a uv vector with u having the range [0.0, 1.0] and v ignored. |
-control | This optional flag denotes that value represents a control point index. value is an integer index with the range [1, number of control points]. See getControlPointCount. |
-arc | This optional flag designates value as the normalized arc length from the start of the curve. value is a float with the range [0.0, 1.0]. |
-X | This optional flag causes the routine to calculate the position at the singular point on the curve at X = value. An error is returned if there is not a unique point. |
-Y | This optional flag causes the routine to calculate the position at the singular point on the curve at Y = value. An error is returned if there is not a unique point. |
-Z | This optional flag causes the routine to calculate the position at the singular point on the curve at Z = value. An error is returned if there is not a unique point. |
-closest | This optional flag results in the routine calculating the position of the point on the curve closest to the specified value. value is an xyz point, or grid coord. |
value | This parameter is the value at which to get the position. Its interpretation is determined by the above flags. The default mode is the -parameter flag. |
This action returns a point giving the position on the curve (may be in the form “u v dbentity”).
$curve getXYZ ?< -parameter | -control | -arc | -X | -Y | -Z | -closest >? value
This action gets a position on the curve in model space.
-parameter | This optional flag is notification to get the XYZ value at a parameter. The value is a float with the range [0.0, 1.0], or a uv vector with u having the range [0.0, 1.0] and v ignored. |
-control | This optional flag denotes that value represents a control point index. value is an integer index with the range [1, number of control points]. See getControlPointCount. |
-arc | This optional flag designates value as the normalized arc length from the start of the curve. value is a float with the range [0.0, 1.0]. |
-X | This optional flag causes the routine to calculate the XYZ value at the singular point on the curve at X = value. An error is returned if there is not a unique point. |
-Y | This optional flag causes the routine to calculate the XYZ value at the singular point on the curve at Y = value. An error is returned if there is not a unique point. |
-Z | This optional flag causes the routine to calculate the XYZ value at the singular point on the curve at Z = value. An error is returned if there is not a unique point. |
-closest | This optional flag results in the routine calculating the XYZ value of the point on the curve closest to the specified value. value is an xyz point, or grid coord. |
value | This parameter is the value at which to get the XYZ value. Its interpretation is determined by the above flags. The default mode is the -parameter flag. |
This action returns an XYZ vector.
$curve getParameter ?< -parameter | -control | -arc | -X | -Y | -Z | -closest >? value
This action gets a normalized parameter value on a curve.
-parameter | This optional flag is notification to get the position at a parameter. The value is a float with the range [0.0, 1.0], or a uv vector with u having the range [0.0, 1.0] and v ignored. |
-control | This optional flag denotes that value represents a control point index. value is an integer index with the range [1, number of control points]. See getControlPointCount. |
-arc | This optional flag designates value as the normalized arc length from the start of the curve. value is a float with the range [0.0, 1.0]. |
-X | This optional flag causes the routine to calculate the parameter at the singular point on the curve at X = value. An error is returned if there is not a unique point. |
-Y | This optional flag causes the routine to calculate the parameter at the singular point on the curve at Y = value. An error is returned if there is not a unique point. |
-Z | This optional flag causes the routine to calculate the parameter at the singular point on the curve at Z = value. An error is returned if there is not a unique point. |
-closest | This optional flag results in the routine calculating the parameter of the point on the curve closest to the specified value. value is an xyz point, or grid coord. |
value | This parameter is the value at which to get the parameter. Its interpretation is determined by the above flags. The default mode is the -parameter flag. |
This action returns the float parameter of the curve.
The -parameter value option only returns the given value clamped to [0.0, 1.0]. It is included for consistency with other commands.
$curve getRadiusOfCurvature ?-surface? ?< -control | -parameter | -arc | -X | -Y | -Z | -closest >? value
This action returns the radius of curvature at the specified position on this curve.
-surface | This optional flag is the notification to return the surface curvature, rather than the curve curvature, if the specified position lies on a curve that is constrained to a surface. |
-parameter | This optional flag is notification to get the radius at a parameter. The value is a float with the range [0.0, 1.0], or a uv vector with u having the range [0.0, 1.0] and v ignored. |
-control | This optional flag denotes that value represents a control point index. value is an integer index with the range [1, number of control points]. See getControlPointCount. |
-arc | This optional flag designates value as the normalized arc length from the start of the curve. value is a float with the range [0.0, 1.0]. |
-X | This optional flag causes the routine to calculate the position at the singular point on the curve at X = value. An error is returned if there is not a unique point. |
-Y | This optional flag causes the routine to calculate the position at the singular point on the curve at Y = value. An error is returned if there is not a unique point. |
-Z | This optional flag causes the routine to calculate the position at the singular point on the curve at Z = value. An error is returned if there is not a unique point. |
-closest | This optional flag results in the routine calculating the position of the point on the curve closest to the specified value. value is an xyz point, or grid coord. |
value | This parameter is the value at which to get the position. Its interpretation is determined by the above flags. The default mode is the -parameter flag. |
This action returns a float radius of curvature.
If there is no curvature, a radius of zero will be returned.
$curve getTangent ?< -parameter | -control | -arc | -X | -Y | -Z | -closest >? value
This action gets the tangency vector on the curve at a location.
-parameter | This optional flag is notification to get the tangent vector at a parameter. The value is a float with the range [0.0, 1.0], or a uv vector with u having the range [0.0, 1.0] and v ignored. |
-control | This optional flag denotes that value represents a control point index. value is an integer index with the range [1, number of control points]. See getControlPointCount. |
-arc | This optional flag designates value as the normalized arc length from the start of the curve. value is a float with the range [0.0, 1.0]. |
-X | This optional flag causes the routine to calculate the tangent vector at the singular point on the curve at X = value. An error is returned if there is not a unique point. |
-Y | This optional flag causes the routine to calculate the tangent vector at the singular point on the curve at Y = value. An error is returned if there is not a unique point. |
-Z | This optional flag causes the routine to calculate the tangent vector at the singular point on the curve at Z = value. An error is returned if there is not a unique point. |
-closest | This optional flag results in the routine calculating the tangent vector of the point on the curve closest to the specified value. value is an xyz point, or grid coord. |
value | This parameter is the value at which to get the tangent vector. Its interpretation is determined by the above flags. The default mode is the -parameter flag. |
This action returns a normalized XYZ vector representing the tangency vector. The vector will be aligned with the parametric direction of the curve.
$curve getGeometricProperties ?-curve curveVar? ?-surface surfaceVar? ?-directional directionalVar? ?-orthogonal orthogonalVar? ?< -grid | -control | -parameter | -arc | -X | -Y | -Z | -closest >? value
This action calculates the geometric properties at the specified position on the curve.
-curve curveVar | This optional parameter is the string name of a variable to receive an array of curve-based geometric properties. The array indices and the values are listed below. |
-surface surfaceVar | This optional parameter is the string name of a variable to receive an array of surface-based geometric properties, if the specified position is constrained to a surface. The array indices and the values are listed below. |
-directional directionalVar | This optional parameter is the string name of a variable to receive an array of surface-based geometric properties in the direction of the curve, if the specified position is constrained to a surface. The array indices and the values are listed below. |
-orthogonal orthogonalVar | This optional parameter is the string name of a variable to receive an array of surface-based geometric properties in the direction orthogonal to the curve, if the specified position is constrained to a surface. The array indices and the values are listed below. |
-grid | This optional flag is the notification to get the geometric properties at a grid point. value is an integer index [1, number of grid points]. This is the default option. |
-control | This optional flag is the notification to get the geometric properties at a control point. The value is an integer index with the range [1, number of control points]. |
-parameter | This optional flag is the notification to get the geometric properties at a parameter. The value is a float with the range [0.0, 1.0] or a uv vector with v ignored. |
-arc | This optional flag is the notification to get the geometric properties at an arc length. The value is a normalized float arc length from the start of the curve with the range [0.0, 1.0]. |
-X | This optional flag is the notification to get the geometric properties at a constant x; value is a float constant x coordinate value. |
-Y | This optional flag is the notification to get the geometric properties at a constant y; value is a float constant y coordinate value. |
-Z | This optional flag is the notification to get the geometric properties at a constant z; value is a float constant z coordinate value. |
-closest | This optional flag is the notification to get geometric properties at the closest position; the value is an xyz point, or grid coord. |
value | This parameter is the position value. |
This action returns nothing.
This array is divided into the following elements.
Point | This element is the point location of the curve that these geometric properties are for. |
UV | This is the vector non-normalized UV parameter of the curve. |
LimitsU | This is the vector non-normalized parameter limits in U of the curve. |
LimitsV | This is the vector non-normalized parameter limits in V of the curve. |
RadiusOfCurvature | This element is the float radius of curvature of the curve. |
Normal | This element is the vector normal of the curve. |
Tangent | This element is the vector tangent of the curve. |
This array is divided into the following elements. If the curve is not constrained to a surface, the elements will be set to 0. If the curve is constrained to multiple surfaces, the surface with the smallest minimum radius of curvature will be used for all properties.
Point | This element is the point on the surface that the curve is constrained to and these surface geometric properties are for. |
UV | This is the vector non-normalized UV parameter of the surface that the curve is constrained to. |
LimitsU | This is the vector non-normalized parameter limits in U of the surface that the curve is constrained to. |
LimitsV | This is the vector non-normalized parameter limits in V of the surface that the curve is constrained to. |
RadiusOfCurvature | This element is the float minimum radius of curvature. |
GaussianCurvature | This element is the float gaussian curvature in radians per unit length. |
AverageCurvature | This element is the float average curvature in radians per unit length. |
MinimumCurvature | This element is the float minimum curvature in radians per unit length. |
MaximumCurvature | This element is the float maximum curvature in radians per unit length. |
Normal | This element is the vector normal of the surface. |
Principal | This element is the vector principal tangent of the surface, which points in the direction of minimum curvature. |
dPdU | This element is the vector first partial derivative in U. |
dPdV | This element is the vector first partial derivative in V. |
d2PdU2 | This element is the vector second partial derivative in U. |
d2PdUdV | This element is the vector second partial derivative in UV. |
d2PdV2 | This element is the vector second partial derivative in V. |
This array is divided into the following elements. If the curve is not constrained to a surface, the elements will be set to 0. If the curve is constrained to multiple surfaces, the surface with the smallest minimum radius of curvature will be used for all properties.
RadiusOfCurvature | This element is the float radius of curvature in the direction of (or orthogonal to) the curve. |
Direction | This element is the vector derivative of (or orthogonal to) the curve. |
DirectionUV | This element is the vector derivative of (or orthogonal to) the curve in the UV parameter space of the surface. |
dPdD | This element is the vector first derivative of the surface in the direction given by the DirectionUV element. |
d2PdD2 | This element is the vector second derivative of the surface in the direction given by the DirectionUV element. |
$curve getLength ?< -parameter | -control | -arc | -X | -Y | -Z | -closest >? value
This action gets the curve length from the beginning to a given location.
-parameter | This optional flag indicates that the specified value should be interpreted as a normalized parametric value. value is expected to be a float with the range [0.0, 1.0], or a uv vector with u having the range [0.0, 1.0] and v ignored. This is the default mode. |
-control | This optional flag denotes that value represents a control point index. value is an integer index with the range [1, number of control points]. See getControlPointCount. |
-arc | This optional flag designates value as the normalized arc length from the start of the curve. value is a float with the range [0.0, 1.0]. A value of 1 will return the total length of the curve. |
-X | This optional flag causes the routine to calculate the length of the curve from the beginning to the singular point on the curve at X = value. An error is returned if there is not a unique point. |
-Y | This optional flag causes the routine to calculate the length of the curve from the beginning to the singular point on the curve at Y = value. An error is returned if there is not a unique point. |
-Z | This optional flag causes the routine to calculate the length of the curve from the beginning to the singular point on the curve at Z = value. An error is returned if there is not a unique point. |
-closest | This optional flag results in the routine calculating the length from the beginning to the point on the curve closest to the specified value. value is an xyz point, or grid coord. |
value | This parameter is the value at which to get the length. Its interpretation is determined by the above flags. The default mode is the -parameter flag. |
This action returns the float curve length.
The -arc value option converts value from a normalized to a non-normalized length. It is included for consistency with other commands.
See also the getTotalLength command.
$curve getParameters ?< -X | -Y | -Z >? value
This action gets the parameters at which the curve intersect the value.
-X | This optional flag is the notification to get the position at a constant x. value is a float constant x coordinate value. |
-Y | This optional flag is the notification to get the position at a constant y; value is a float constant y coordinate value. |
-Z | This optional flag is the notification to get the position at a constant z; value is a float constant z coordinate value. |
value | This parameter is the value to get the position. |
This action returns an array of parameters.
$curve getTotalLength ?-constrained constrainedVar?
This action gets the total length of the curve.
-constrained constrainedVar | This optional parameter is the string name of a variable to receive the length of the this entity, that is constrained to database entities. |
This action returns the float length which has the range [0.0, infinity).
$curve offset ?-normal vec? ?-tolerance tol? ?-flip? ?-computedDistance computedDistanceVar? < distance | point > curve
This action sets this curve as an offset from the given curve.
-normal vec | This optional parameter is the normal vector of the plane in which the curve will be offset with default (0, 0, 1). |
-tolerance tol | This optional parameter is the float tolerance used to create the offset curve with defaults to the fit tolerance. |
-flip | This optional flag is the notification to reverse the offest curve. |
-computedDistance computedDistanceVar | This optional parameter is the string name of a variable to receive the computed offset distance. |
distance | This parameter is the float distance to offset the curve. |
point | This parameter is the point to offset to. |
curve | This parameter is a pw::Curve object to offset from. |
This action returns the float offset distance.
The returned distance is calculated if using an offset point. Otherwise the return is the provided input distance.
If the offset curve cannot be created then the curve will be empty.
$curve getOffsetPoint ?-flip? target_point ?dir?
This action gets the best offset point for the given curve.
-flip | This optional falg is the notification that the offset point will be flipped to the opposite side of the curve. |
target_point | This parameter finds the offset point closest to point target_point. |
dir | This parameter is a direction vector that is used to find the closest offset point to a ray. |
This action returns the offset point.
$curve getOffsetNormal ?-flip? point ?dir?
This action finds the best offset normal vector from this curve to a point.
-flip | This optional flag is the notification that the offset normal will be flipped to the opposite side of the curve. |
target_point | This parameter finds the offset vector closest to point target_point. |
dir | This parameter is a direction vector and is used to find the best offset normal vector to a ray. |
This action returns the best normal vector.
$curve extract ?< -U | -V >? parameter surface
This action sets this curve as a constant paramater curve of the given surface.
-U | This optional flag is the notification to extract at a constant u parameter. This is the default. |
-V | This optional flag is the notification to extract at a constant v parameter. |
parameter | This parameter is the float parameter to extract with the range [0.0, 1.0]. |
surface | This parameter is the pw:: Surface to extract the curve from. |
This action returns nothing.
$curve spline ?curve?
This action sets this curve to a smooth interpolation of the control points of the given curve.
curve | This optional parameter is a pw::Curve object or boundary whose control points will be interpolated. If not given the spline action will interpolate this curve’s own control points. |
This action returns nothing.
If the given curve is database constrained to a single parameter space, this action will set this curve to a smooth interpolation in that parameter space, otherwise the curve will be unconstrained.
$curve fitLSQ ?-tolerance tol? ?curve?
This action sets this curve to a least squares fit approximation of the control points of the given curve.
-tolerance tol | This optional parameter is the float approximation tolerance with the range [0, infinity). The default is the current tolerance returned from <getFitTolerance>. |
curve | This optional parameter is a pw::Curve object or boundary whose control points will be fitted to. If not given the fitLSQ action will be fitted to this curve’s own control points. |
This action returns nothing.
If the given curve is database constrained to a single parameter space, this action will set this curve to a fitted curve in that parameter space, otherwise the curve will be unconstrained.
$curve smoothC1 ?-tolerance tol? ?curve?
This action sets this curve to a C1 continuous approximation of the shape of the given curve.
-tolerance tol | This optional parameter is the float approximation tolerance with the range [0, infinity). The default is the current tolerance returned from <getFitTolerance>. |
curve | This optional parameter is a pw::Curve object or boundary whose shape will be approximated. If not given the smoothC1 action will approximate this curve’s own shape. |
This action returns nothing.
If the given curve is database constrained to a single parameter space, this action will set this curve to a smooth interpolation in that parameter space, otherwise the curve will be unconstrained.
$curve split parameters
This action splits the curve at a given parameter value.
parameters | This parameter is a list of float parameters to split at with the range [0, 1]. |
This action returns a list of the new pw::Curve objects.
Any duplicate parameters will be ignored, as well as parameters at the limits of the curve.
$curve project ?-type proj_type? ?-direction direction? ?-center center? ?-axis point normal? ?-fit tolerance? ?-interior? ?dbentities?
This action projects this curve onto one or more database entities.
-type proj_type | This optional parameter is the string projection type to perform with options < ClosestPoint | Linear | SphericalIn | SphericalOut | CylindricalIn | CylindricalOut >. |
-direction direction | This optional parameter is the projection vector for linear projection. The default is determined by the entity and can be queried using getDefaultProjectDirection. |
-center center | This optional parameter is the center point vector for spherical projection. The default is (0, 0, 0). |
-axis point normal | This optional parameter is the axis defined by a point vector and normal vector used by cylindrical projection; The default point is (0, 0, 0) and the default normal is (1, 0, 0). |
-fit tolerance | This is an optional parameter that is used to fit any curve-like entities. The default for this is 0 which means there is no fitting applied onto the projected curve. The valid range for this parameter is [0,infinity) |
-interior | If this optional flag is present, only the interior of the entities are projected. |
dbentities | This parameter is the optional list of database curve and surface-like entities to project onto. If none are given, project to any currently enabled, visible database surface-like entities. |
This action returns nothing.
$curve getDefaultProjectDirection
This action gets the default projection direction for this curve.
This action has no parameters.
This action returns a vector.
$curve setOrientation umin_end
This action sets the curve orientation.
umin_end | This parameter is the integer id of the Umin end with options < UMinimum | 1 | UMaximum | 2 >. |
This action returns nothing.
UMinimum and 1 are the same. UMaximum and 2 are the same.
$curve alignOrientation ?-tolerance tol? curves
This action aligns the U orientation of the given curves with this curve.
-tolerance tol | This optional parameter is the float tolerance used to consider curves adjacent. The default is fit tolerance. |
curves | This parameter is a list of pw::Curve objects to align with. |
This action returns nothing.
Any curves in the given list that are not connected (within tol) to this curve will be ignored.
$curve getAssembleTolerance
This action returns the maximum tolerance used to close the model along the curve.
This action has no parameters.
This action returns the maximimum tolerance required to close the model along the curve. If the curve is not used to close a model, the return value is zero.
$curve isClosed
This action checks if the curve is closed.
This action has no parameters.
This action returns boolean, true if the curve is closed.
$curve isPole
This action check if the curve is a pole.
This action has no parameters.
This action returns a boolean, true if the curve is a pole.
$curve getDiscontinuities ?angle?
This action returns a list of parameters at discontinuities with a bend angle greater than the given angle.
angle | All discontinuies with a bend angle greater than this given angle will be returned; the default is 0.0 which will return all discontinuities. |
This action returns a list of parameters at discontinuities.
$curve closestControlPoint ?-from fromVar? ?-distance distVar? ?-index indexVar? point ?dir?
This action gets the control point on this curve closest to the given point or ray.
-from fromVar | This optional parameter is the string name of a variable to receive the xyz of the given point or the point along the ray that is closest to this curve. |
-distance distVar | This optional parameter is the string name of a variable to receive the float distance between the given point or ray and the point returned. |
-index indexVar | This optional parameter is the string name of a variable to receive the control point index of the closest control point. |
point | This parameter is the point to project onto this database curve. |
dir | This optional parameter is a direction vector for finding the closest point from a ray. |
This action returns a point in the parameter space of this database curve or the origin (0,0,0) if there is no closest point.
$curve getControlPointCount
This action gets the number of control points on this curve.
This action has no parameters.
This action returns the integer number of control points for this curve.
$curve removeInteriorControlPoints
This action removes the interior control points of each segment of this curve.
This action has no parameters.
This action returns a boolean which is true if there were any control points removed and false otherwise.
This action creates a new curve object.
pw::Curve create
This action joins as many of the given curves together as possible.
pw::Curve join ?-reject rejectVar? ?-tolerance tol? curves
This action, given two point-lists, returns a segment type, a start point, an end point, and a ProjectToCommon state that represent the best segment for a database curve between the given points.
pw::Curve getBestSegment ?-start startVar? ?-end endVar? ?-projectToCommon projectToCommonVar? start_points end_points
This action gets the best offset point for the given curve.
pw::Curve getOffsetPoint ?-flip? curve target_point ?dir?
This action finds the best offset normal vector from this curve to a point.
pw::Curve getOffsetNormal ?-flip? curve point ?dir?
This action gets the number of segments in this curve.
$curve getSegmentCount
This action gets the segment at the given index.
$curve getSegment ?-copy? index
This action gets all the segments.
$curve getSegments ?-copy?
This action sets the segment at the given index.
$curve setSegment index segment
This action adds the segment to the end of the segments in the curve.
$curve addSegment segment
This action inserts the segment at the given index.
$curve insertSegment index segment
This action removes a segment from the curve.
$curve removeSegment < index | segment >
This action removes all of the segments from the curve.
$curve removeAllSegments
This action replaces all of the segments in the curve.
$curve replaceAllSegments segments
This action gets a position on a curve in the defining space of the curve.
$curve getPosition ?< -parameter | -control | -arc | -X | -Y | -Z | -closest >? value
This action gets a position on the curve in model space.
$curve getXYZ ?< -parameter | -control | -arc | -X | -Y | -Z | -closest >? value
This action gets a normalized parameter value on a curve.
$curve getParameter ?< -parameter | -control | -arc | -X | -Y | -Z | -closest >? value
This action returns the radius of curvature at the specified position on this curve.
$curve getRadiusOfCurvature ?-surface? ?< -control | -parameter | -arc | -X | -Y | -Z | -closest >? value
This action gets the tangency vector on the curve at a location.
$curve getTangent ?< -parameter | -control | -arc | -X | -Y | -Z | -closest >? value
This action calculates the geometric properties at the specified position on the curve.
$curve getGeometricProperties ?-curve curveVar? ?-surface surfaceVar? ?-directional directionalVar? ?-orthogonal orthogonalVar? ?< -grid | -control | -parameter | -arc | -X | -Y | -Z | -closest >? value
This action gets the curve length from the beginning to a given location.
$curve getLength ?< -parameter | -control | -arc | -X | -Y | -Z | -closest >? value
This action gets the parameters at which the curve intersect the value.
$curve getParameters ?< -X | -Y | -Z >? value
This action gets the total length of the curve.
$curve getTotalLength ?-constrained constrainedVar?
This action sets this curve as an offset from the given curve.
$curve offset ?-normal vec? ?-tolerance tol? ?-flip? ?-computedDistance computedDistanceVar? < distance | point > curve
This action sets this curve as a constant paramater curve of the given surface.
$curve extract ?< -U | -V >? parameter surface
This action sets this curve to a smooth interpolation of the control points of the given curve.
$curve spline ?curve?
This action sets this curve to a least squares fit approximation of the control points of the given curve.
$curve fitLSQ ?-tolerance tol? ?curve?
This action sets this curve to a C1 continuous approximation of the shape of the given curve.
$curve smoothC1 ?-tolerance tol? ?curve?
This action splits the curve at a given parameter value.
$curve split parameters
This action projects this curve onto one or more database entities.
$curve project ?-type proj_type? ?-direction direction? ?-center center? ?-axis point normal? ?-fit tolerance? ?-interior? ?dbentities?
This action gets the default projection direction for this curve.
$curve getDefaultProjectDirection
This action sets the curve orientation.
$curve setOrientation umin_end
This action aligns the U orientation of the given curves with this curve.
$curve alignOrientation ?-tolerance tol? curves
This action returns the maximum tolerance used to close the model along the curve.
$curve getAssembleTolerance
This action checks if the curve is closed.
$curve isClosed
This action check if the curve is a pole.
$curve isPole
This action returns a list of parameters at discontinuities with a bend angle greater than the given angle.
$curve getDiscontinuities ?angle?
This action gets the control point on this curve closest to the given point or ray.
$curve closestControlPoint ?-from fromVar? ?-distance distVar? ?-index indexVar? point ?dir?
This action gets the number of control points on this curve.
$curve getControlPointCount
This action gets the control point array of this curve.
$curve getControlPoints
This action removes the interior control points of each segment of this curve.
$curve removeInteriorControlPoints