Product help with community knowledge

### Page statistics

287 views1 edit(s)20689 characters(s) Page last modified 18:05, 15 Jan 2013 by contentconnector

# Offset Curve <OffsetCurve>

1. 1. Synopsis
2. 2. Mixins
3. 3. Canonicals
4. 4. Parameters
5. 5. Example 1
6. 6. Example 2

## Synopsis

This design generates a curve offset from another curve. The input curve must be planar. The offset distance may be positive or negative. The "positive side" of the curve is defined as follows: If sidePoint: is provided, then the side the point is on is the positive side. If planeNormal is provided, then the positive side is defined by the vector cross product of the curve tangent and the planeNormal. This is "to the right" if you travel along the curve with "up" in the planeNormal direction.

## Canonicals

Name Type Description
curve part Curve part to offset.
offsetDistance number Normal distance from the input curve to the new offset curve.

## Parameters

Name Type Description
planeNormal vector Normal vector of the plane used to offset the curve. This is only used to determine the side for positive offset distances, and does not need to be strictly perpendicular to the plane of the curve.
surface part Surface used to compute the offset vectors for the curve. [This is not yet supported]
fillType name Algorithm used to fill gaps in the offset curve. Default is Fillet, but choices include Fillet, Tangent, or Natural.
sidePoint point Used to determine the side for positive offset distances. The point on the curve nearest to sidePoint is used to determine the positive side.

## Example 1

 Name: offsetCurve_Ex01 Design: acDrawingDocument
 Child Name: baseCurve Child Design: :SplineCurve Name Type Supplied color string "blue" pointList list {point(2,-2,0), point(4,5,0), point(6,6,0), point(8,6,0)}
 Child Name: offsetCurve Child Design: :OffsetCurve Name Type Supplied curve any baseCurve

## Example 2

 Name: offsetCurve_Ex02 Design: acDrawingDocument Name Type Formula ptList list Dim i As Integer Dim result As List For i = 1 To 9 result = result + _ {cl.pointAtLength(cl.length / 9 * i)} Next i Return result
 Child Name: spine Child Design: :SplineCurve Name Type Supplied color string "blue" pointList list {point(5,-4,0), point(7,4,0), point(4,7,0)}
 Child Name: end Child Design: :Line Name Type Supplied thruPoint1 point spine.endPoint thruPoint2 point leg.endPoint
 Child Name: flange Child Design: :offsetCurve Name Type Supplied curve part spine offsetDistance number 0.1
 Child Name: leg Child Design: :OffsetCurve Name Type Supplied curve part spine offsetDistance number 1.0
 Child Name: start Child Design: :Line Name Type Supplied thruPoint1 point leg.startPoint thruPoint2 point spine.startPoint
 Child Name: cl Child Design: :OffsetCurve Name Type Supplied curve part spine offsetDistance number 0.5 render? boolean false
 Child Name: pt Child List? Child Design: :Point Name Type Supplied quantity integer length(ptList) origin point nth(child.index, ptList) color string "red"