# ConstrainedSurface

A constrained surface.

## Example

app = cf.GetApplication()
project = app:NewProject()

-- Create the tables for the surface values

points = {}
normals = {}
uSurfaceParams = {}
vSurfaceParams = {}

-- Initialise the surface values

for v = 0, 2 do
for u = 1, 5 do
points[u+v*5] = cf.Point(u, math.sin(((u-1)/4) * math.pi) + 0.5 - v, 0)
normals[u+v*5] = cf.Point(0,0,1)
uSurfaceParams[u+v*5] = (u-1)/4
vSurfaceParams[u+v*5] = v
end
end

-- Create the constrained surface



## Inheritance

The ConstrainedSurface object is derived from the Geometry object.

## Property List

BoundingBox
A box indicating the bounding box of this entity. (Read only Box)
Faulty
Indicates whether the geometry has faults. (Read only boolean)
Included
Specifies whether the geometry must be included or excluded. (Read/Write boolean)
Label
LocalWorkplane
The constrained surface operator workplane. (Read only LocalWorkplane)
Locked
Specifies whether the geometry must be locked to prevent modifications. (Read/Write boolean)
MeshElementCount
Get the total number of mesh elements for the geometry part. (Read only number)
Parent
The parent part of this geometry. If this is a top level part nil will be returned. (Read only Geometry)
SimulationMeshInfo
The quality of the mesh can be examined through these properties. (Read only MeshInfo)
SimulationMeshPresent
Specifies whether the geometry has an associated simulation mesh. (Read only boolean)
SymmetryEnabled
Use symmetry to mirror points with respect to the symmetry plane specified by SymmetryPlane. (Read/Write boolean)
SymmetryPlane
SymmetryPlaneConstantSurfaceParameter
SymmetryPlaneUValue
U' value at symmetry plane. Only enabled if SymmetryPlaneConstantSurfaceParameter is set to U. (Read/Write Expression)
SymmetryPlaneVValue
V' value at symmetry plane. Only enabled if SymmetryPlaneConstantSurfaceParameter is set to V. (Read/Write Expression)
Type
The object type string. (Read only string)
Visible
Specifies whether the geometry must be shown or hidden. (Read/Write boolean)

## Collection List

Children
The collection of child operators of the operator. (ChildOperatorCollection of Geometry.)
Edges
The collection of edges of the operator. (EdgeCollection of Edge.)
Faces
The collection of faces of the operator. (FaceCollection of Face.)
Points
The collection of points that define the constrained surface. (ConstrainedSurfacePointCollection of ConstrainedSurfacePoint.)
Regions
The collection of regions of the operator. (RegionCollection of Region.)
Transforms
The collection of transforms on the operator. (TransformGeometryCollection 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 Geometry object.)
CopyAndRotate (origin Coordinate, rotationaxis Coordinate, angle Expression, count number)
Copy and rotate the geometry. (Returns a List of Geometry object.)
CopyAndRotate (properties table, count number)
Apply a copy and rotate using a table defining the properties. (Returns a List of Geometry object.)
CopyAndTranslate (from Coordinate, to Coordinate, count number)
Copy and translate the geometry. (Returns a List of Geometry object.)
CopyAndTranslate (properties table, count number)
Apply a copy and translate using a table defining the properties. (Returns a List of Geometry object.)
Delete ()
Delete the geometry.
DeleteMesh ()
Deletes the geometry's associated simulation mesh.
Duplicate ()
Duplicates the geometry. (Returns a Geometry 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.)
GetNormals ()
Get the normals of the points defining the constrained surface. (Returns a List of Point object.)
GetPositions ()
Get the positions of the points defining the constrained surface. (Returns a List of Point 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.)
GetSurfaceUParameters ()
Get the U' surface parameters for the points. (Returns a List of Expression object.)
GetSurfaceVParameters ()
Get the V' surface parameters for the points. (Returns a List of Expression object.)
ReEvaluate ()
Re-evaluate the model by initiating the mapping algorithm. The algorithm keeps track of the individual items when the geometry is modified. Models created in earlier versions of CADFEKO versions may not contain all the mapping information. As a result some items may be marked suspect.
ReverseFaceNormals ()
Reverse the geometry face normals.
ReverseFaceNormals (faces List of Face)
Reverse the geometry face normals.
SetPoints (positionlist List of Coordinate, normallist List of Coordinate, usurfaceparameterlist List of Expression, vsurfaceparameterlist List of Expression)
Set the positions, normals and surface parameters defining the constrained surface. All of the provided lists must be the same length.
SetPositionsAndNormals (positionlist List of Coordinate, normallist List of Coordinate)
Set the positions and normals of the points defining the constrained surface. The lists must be the same length and equal to the number of existing points.
SetProperties (properties table)
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.
SetSurfaceParameters (usurfaceparameterlist List of Expression, vsurfaceparameterlist List of Expression)
Set the surface parameters for the points of the constrained surface. The lists must be the same length and equal to the number of existing points.
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

BoundingBox
A box indicating the bounding box of this entity.
Type
Box
Access
Faulty
Indicates whether the geometry has faults.
Type
boolean
Access
Included
Specifies whether the geometry must be included or excluded.
Type
boolean
Access
Label
The object label.
Type
string
Access
LocalWorkplane
The constrained surface operator workplane.
Type
LocalWorkplane
Access
Locked
Specifies whether the geometry must be locked to prevent modifications.
Type
boolean
Access
MeshElementCount
Get the total number of mesh elements for the geometry part.
Type
number
Access
Parent
The parent part of this geometry. If this is a top level part nil will be returned.
Type
Geometry
Access
SimulationMeshInfo
The quality of the mesh can be examined through these properties.
Type
MeshInfo
Access
SimulationMeshPresent
Specifies whether the geometry has an associated simulation mesh.
Type
boolean
Access
SymmetryEnabled
Use symmetry to mirror points with respect to the symmetry plane specified by SymmetryPlane.
Type
boolean
Access
SymmetryPlane
Symmetry plane orientation.
Type
ConstrainedSurfSymmetryPlaneEnum
Access
SymmetryPlaneConstantSurfaceParameter
Constant surface parameter at the plane of symmetry.
Type
Access
SymmetryPlaneUValue
U' value at symmetry plane. Only enabled if SymmetryPlaneConstantSurfaceParameter is set to U.
Type
Expression
Access
SymmetryPlaneVValue
V' value at symmetry plane. Only enabled if SymmetryPlaneConstantSurfaceParameter is set to V.
Type
Expression
Access
Type
The object type string.
Type
string
Access
Visible
Specifies whether the geometry must be shown or hidden.
Type
boolean
Access

## Collection Details

Children
The collection of child operators of the operator.
Type
ChildOperatorCollection
Edges
The collection of edges of the operator.
Type
EdgeCollection
Faces
The collection of faces of the operator.
Type
FaceCollection
Points
The collection of points that define the constrained surface.
Type
ConstrainedSurfacePointCollection
Regions
The collection of regions of the operator.
Type
RegionCollection
Transforms
The collection of transforms on the operator.
Type
TransformGeometryCollection
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
Geometry
The mirrored geometry.
CopyAndRotate (origin Coordinate, rotationaxis Coordinate, angle Expression, count number)
Copy and rotate the geometry.
Input Parameters
origin(Coordinate)
The coordinates of the origin of the rotation.
rotationaxis(Coordinate)
The axis of rotation.
angle(Expression)
The angle of rotation (degrees).
count(number)
The number of copies.
Return
List of Geometry
The list of rotated 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 Geometry
The list of rotated geometry.
CopyAndTranslate (from Coordinate, to Coordinate, count number)
Copy and translate the geometry.
Input Parameters
from(Coordinate)
Translate from coordinate.
to(Coordinate)
Translate to coordinate.
count(number)
The number of copies.
Return
List of Geometry
The list of translated 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 Geometry
The list of translated geometry.
Delete ()
Delete the geometry.
DeleteMesh ()
Deletes the geometry's associated simulation mesh.
Duplicate ()
Duplicates the geometry.
Return
Geometry
The duplicated geometry operator.
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.
GetNormals ()
Get the normals of the points defining the constrained surface.
Return
List of Point
The normals.
GetPositions ()
Get the positions of the points defining the constrained surface.
Return
List of Point
The positions.
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 properties table.
GetSurfaceUParameters ()
Get the U' surface parameters for the points.
Return
List of Expression
The U' surface parameters.
GetSurfaceVParameters ()
Get the V' surface parameters for the points.
Return
List of Expression
The V' surface parameters.
ReEvaluate ()
Re-evaluate the model by initiating the mapping algorithm. The algorithm keeps track of the individual items when the geometry is modified. Models created in earlier versions of CADFEKO versions may not contain all the mapping information. As a result some items may be marked suspect.
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.
SetPoints (positionlist List of Coordinate, normallist List of Coordinate, usurfaceparameterlist List of Expression, vsurfaceparameterlist List of Expression)
Set the positions, normals and surface parameters defining the constrained surface. All of the provided lists must be the same length.
Input Parameters
positionlist(List of Coordinate)
The list of point positions.
normallist(List of Coordinate)
The list of normals for each point position.
usurfaceparameterlist(List of Expression)
The list of U' surface parameter expressions for each point.
vsurfaceparameterlist(List of Expression)
The list of V' surface parameter expressions for each point.
SetPositionsAndNormals (positionlist List of Coordinate, normallist List of Coordinate)
Set the positions and normals of the points defining the constrained surface. The lists must be the same length and equal to the number of existing points.
Input Parameters
positionlist(List of Coordinate)
The list of point positions.
normallist(List of Coordinate)
The list of normals for each point position.
SetProperties (properties table)
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(table)
A table of properties defining the new state of the object.
SetSurfaceParameters (usurfaceparameterlist List of Expression, vsurfaceparameterlist List of Expression)
Set the surface parameters for the points of the constrained surface. The lists must be the same length and equal to the number of existing points.
Input Parameters
usurfaceparameterlist(List of Expression)
The list of U' surface parameter expressions for each point.
vsurfaceparameterlist(List of Expression)
The list of V' surface parameter expressions for each point.
Unlinks the geometry's associated simulation mesh.
Input Parameters