# IndirectPolymeshEdge Class

The IndirectEdge class represents a single global edge in a solid using integer indexes to reference to vertices instead of directly using geometric (coordinate) values.
Inheritance Hierarchy
SystemObject
Tekla.Structures.Geometry3dIndirectPolymeshEdge

Namespace:  Tekla.Structures.Geometry3d
Assembly:  Tekla.Structures (in Tekla.Structures.dll) Version: 2024.0.0+a110b435391768740483e3032720a566518c9a63
Syntax
[SerializableAttribute]
public class IndirectPolymeshEdge

The IndirectPolymeshEdge type exposes the following members.

Constructors
NameDescription
IndirectPolymeshEdge
Initializes a new instance of the IndirectPolymeshEdge class
Top
Properties
NameDescription
EdgeType
Type of the edge.
EndPoint
End point of the edge.
ShellIndex
The index of the shell the edge belongs to.
StartPoint
Start point of the edge.
Top
Examples
using Tekla.Structures.Geometry3d;

public void InsertCubeWithEdgeInfoExample()
{
var cubeVertices = new[]
{
new Vector(  0.0,   0.0,   0.0), // 0
new Vector(300.0,   0.0,   0.0), // 1
new Vector(300.0, 300.0,   0.0), // 2
new Vector(  0.0, 300.0,   0.0), // 3
new Vector(  0.0,   0.0, 300.0), // 4
new Vector(300.0,   0.0, 300.0), // 5
new Vector(300.0, 300.0, 300.0), // 6
new Vector(  0.0, 300.0, 300.0), // 7
};
var outerloop = new[] { new[] { 0, 3, 2, 1 },
new[] { 0, 1, 5, 4 },
new[] { 1, 2, 6, 5 },
new[] { 2, 3, 7, 6 },
new[] { 3, 0, 4, 7 },
new[] { 4, 5, 6, 7 }};

var innerLoop = new Dictionary{int, int[][]}
{
};

var edges = new List{IndirectPolymeshEdge}
{
new IndirectPolymeshEdge { StartPoint = 0, EndPoint = 3, EdgeType = PolymeshEdgeTypeEnum.INVISIBLE_EDGE },
new IndirectPolymeshEdge { StartPoint = 4, EndPoint = 5, EdgeType = PolymeshEdgeTypeEnum.INVISIBLE_EDGE }
};

var polymesh = new FacetedBrep(cubeVertices, outerloop, innerLoop, edges);

var shapeItem = new ShapeItem
{
Name = "Cube with two invisible edges",
ShapeFacetedBrep = polymesh,
UpAxis = ShapeUpAxis.Z_Axis
};
var result = shapeItem.Insert();
}