# Helix

A helix.

## Example

application = cf.Application.GetInstance()
project = application:NewProject()

-- Create a helix with the helix's base centre at the specified 'Point'

helixCentre = cf.Point(0, 0, 0)
helix = project.Contents.Geometry:AddHelix(helixCentre, 0.1, 0.1, 1.0, 5.0, false)

## Inheritance

The Helix object is derived from the Geometry object.

## Usage locations

The Helix object can be accessed from the following locations:

## Property List

The radius of the helix base (parallel to the UV plane). If DefinitionMethod is not VariableRadiusAndTurns, the base radius applies along the entire helix length. (Read/Write Dimension)
BoundingBox
A box indicating the bounding box of this entity. (Read only Box). (Read only Box)
Centre
The centre point of the helix base. (Read/Write LocalCoordinate)
DefinitionMethod
Helix definition method as specified by the HelixDefinitionMethodEnum, e.g. BaseCentre or ApertureCentre. (Read/Write HelixDefinitionMethodEnum)
The radius of the helix top (parallel to the UV plane). Only valid if DefinitionMethod is VariableRadiusAndTurns. (Read/Write Dimension)
Faulty
Indicates whether the geometry has faults. (Read only boolean)
Height
The height of the helix, in the N axis direction. Only valid if DefinitionMethod is VariableRadiusAndTurns or ConstantRadiusAndHeight. (Read/Write NormalDimension)
Label
LeftHandRotationEnabled
The rotation direction of the helix. Left handed if true, else right handed. (Read/Write boolean)
LocalMeshSettingsEnabled
Control if the locally defined mesh settings should be used for the entity. (Read/Write boolean)
LocalWorkplane
MeshSettings
The locally defined mesh setting to use. (Read/Write MeshSettings)
Parent
The parent part of this geometry. If this is a top level part nil will be returned. (Read only Geometry)
PitchAngle
The angle (degrees) formed between the tangent of the curve and the UV plane -- constant along the length of the helix. Only valid if DefinitionMethod is ConstantRadiusAndTurns or ConstantRadiusAndHeight. (Read/Write ParametricExpression)
Turns
The number of turns of the helix. Only valid if DefinitionMethod is VariableRadiusAndTurns or ConstantRadiusAndTurns. (Read/Write ParametricExpression)
Type
The object type string. (Read only string)
Visible
Specifies whether the geometry must be shown or hidden. (Read/Write boolean)

## Collection List

Edges
The collection of edges of the operator. (EdgeCollection of Edge.)
Faces
The collection of faces of the operator. (FaceCollection of Face.)
Regions
The collection of regions of the operator. (RegionCollection of Region.)
Transforms
The collection of transforms on the operator. (TransformCollection of Transform.)
Wires
The collection of wires of the operator. (WireCollection of Edge.)

## Method List

ConvertToPrimitive ()
Convert the geometry into its primitive base form, returning a new part without the concrete type properties. The reference to the original part will become invalid. (Returns a Geometry object.)
CopyAndMirror (properties table)
Apply a copy and mirror using a table defining the properties. (Returns a Object object.)
CopyAndRotate (properties table, count number)
Apply a copy and rotate using a table defining the properties. (Returns a List of Object object.)
CopyAndRotate (origin Point, rotationaxis Vector, angle number, count number)
Copy and rotate the geometry. (Returns a List of Object object.)
CopyAndTranslate (properties table, count number)
Apply a copy and translate using a table defining the properties. (Returns a List of Object object.)
CopyAndTranslate (from Point, to Point, count number)
Copy and translate the geometry. (Returns a List of Object object.)
Delete ()
Deletes the entity.
Duplicate ()
Duplicates the entity. (Returns a Object object.)
Explode ()
Explode the geometry into separate surface and edge parts. The new parts represent a snapshot of the geometry at the time it was exploded. (Returns a List of Geometry object.)
GetProperties ()
Returns a table of properties representing the state of the object. The properties table can be used with the SetProperties method to change multiple properties of the object in one step. (Returns a table object.)
ReverseFaceNormals ()
Reverse the geometry face normals.
ReverseFaceNormals (faces List of Face)
Reverse the geometry face normals.
SetProperties (properties Object)
Modifies the state of the object using the provided table of properties. This method is used to modify multiple properties of the object in a single step.
Unlinks the geometry's associated simulation mesh. (Returns a Mesh object.)

## Static Function List

GetDefaultProperties ()
Creates a table containing the default settings to create an object. (Returns a table object.)

## Property Details

The radius of the helix base (parallel to the UV plane). If DefinitionMethod is not VariableRadiusAndTurns, the base radius applies along the entire helix length.
Type
Dimension
Access
BoundingBox
A box indicating the bounding box of this entity. (Read only Box).
Type
Box
Access
Centre
The centre point of the helix base.
Type
LocalCoordinate
Access
DefinitionMethod
Helix definition method as specified by the HelixDefinitionMethodEnum, e.g. BaseCentre or ApertureCentre.
Type
HelixDefinitionMethodEnum
Access
The radius of the helix top (parallel to the UV plane). Only valid if DefinitionMethod is VariableRadiusAndTurns.
Type
Dimension
Access
Faulty
Indicates whether the geometry has faults.
Type
boolean
Access
Height
The height of the helix, in the N axis direction. Only valid if DefinitionMethod is VariableRadiusAndTurns or ConstantRadiusAndHeight.
Type
NormalDimension
Access
Label
The object label.
Type
string
Access
LeftHandRotationEnabled
The rotation direction of the helix. Left handed if true, else right handed.
Type
boolean
Access
LocalMeshSettingsEnabled
Control if the locally defined mesh settings should be used for the entity.
Type
boolean
Access
LocalWorkplane
The source workplane.
Type
LocalWorkplane
Access
MeshSettings
The locally defined mesh setting to use.
Type
MeshSettings
Access
Parent
The parent part of this geometry. If this is a top level part nil will be returned.
Type
Geometry
Access
PitchAngle
The angle (degrees) formed between the tangent of the curve and the UV plane -- constant along the length of the helix. Only valid if DefinitionMethod is ConstantRadiusAndTurns or ConstantRadiusAndHeight.
Type
ParametricExpression
Access
Turns
The number of turns of the helix. Only valid if DefinitionMethod is VariableRadiusAndTurns or ConstantRadiusAndTurns.
Type
ParametricExpression
Access
Type
The object type string.
Type
string
Access
Visible
Specifies whether the geometry must be shown or hidden.
Type
boolean
Access

## Collection Details

Edges
The collection of edges of the operator.
Type
EdgeCollection
Faces
The collection of faces of the operator.
Type
FaceCollection
Regions
The collection of regions of the operator.
Type
RegionCollection
Transforms
The collection of transforms on the operator.
Type
TransformCollection
Wires
The collection of wires of the operator.
Type
WireCollection

## Method Details

ConvertToPrimitive ()
Convert the geometry into its primitive base form, returning a new part without the concrete type properties. The reference to the original part will become invalid.
Return
Geometry
The new primitive geometry base.
CopyAndMirror (properties table)
Apply a copy and mirror using a table defining the properties.
Input Parameters
properties(table)
A table of properties defining the mirror transform.
Return
Object
The mirrored geometry.
CopyAndRotate (properties table, count number)
Apply a copy and rotate using a table defining the properties.
Input Parameters
properties(table)
A table of properties defining the rotate transform.
count(number)
The number of transform copies.
Return
List of Object
The list of rotated geometry.
CopyAndRotate (origin Point, rotationaxis Vector, angle number, count number)
Copy and rotate the geometry.
Input Parameters
origin(Point)
The coordinates of the origin of the rotation.
rotationaxis(Vector)
The axis of rotation.
angle(number)
The angle of rotation (degrees).
count(number)
The number of copies.
Return
List of Object
The list of rotated geometry.
CopyAndTranslate (properties table, count number)
Apply a copy and translate using a table defining the properties.
Input Parameters
properties(table)
A table of properties defining the translate transform.
count(number)
The number of transform copies.
Return
List of Object
The list of translated geometry.
CopyAndTranslate (from Point, to Point, count number)
Copy and translate the geometry.
Input Parameters
from(Point)
Translate from coordinate.
to(Point)
Translate to coordinate.
count(number)
The number of copies.
Return
List of Object
The list of translated geometry.
Delete ()
Deletes the entity.
Duplicate ()
Duplicates the entity.
Return
Object
The new (duplicated) entity.
Explode ()
Explode the geometry into separate surface and edge parts. The new parts represent a snapshot of the geometry at the time it was exploded.
Return
List of Geometry
The list of new surface and edge parts.
GetProperties ()
Returns a table of properties representing the state of the object. The properties table can be used with the SetProperties method to change multiple properties of the object in one step.
Return
table
A table defining the properties.
ReverseFaceNormals ()
Reverse the geometry face normals.
ReverseFaceNormals (faces List of Face)
Reverse the geometry face normals.
Input Parameters
faces(List of Face)
The list of faces to reverse normal.
SetProperties (properties Object)
Modifies the state of the object using the provided table of properties. This method is used to modify multiple properties of the object in a single step.
Input Parameters
properties(Object)
A table of properties defining the new state of the object.
Unlinks the geometry's associated simulation mesh.
Input Parameters