Class Layout3D
Represents a list of points in 3-dimensional space, in order, often forming a closed loop.
Inheritance
Implements
Inherited Members
Namespace: DesignData.SDS2.Primitives
Assembly: DesignData.SDS2.Primitives.dll
Syntax
public sealed class Layout3D : IEnumerable
Constructors
Layout3D()
An empty layout
Declaration
public Layout3D()
Properties
Count
The number of nodes in this layout
Declaration
public int Count { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
Item[Int32]
Get the node at index
Declaration
public Layout3DNode this[int index] { get; }
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | index |
Property Value
Type | Description |
---|---|
Layout3DNode |
LayoutLength
Gets the sum of the length of every side of the layout
Declaration
public double LayoutLength { get; }
Property Value
Type | Description |
---|---|
System.Double |
Methods
Add(Layout3DNode)
Add a node to the end of the layout
Declaration
public void Add(Layout3DNode node)
Parameters
Type | Name | Description |
---|---|---|
Layout3DNode | node |
Clear()
Clear all nodes from the layout
Declaration
public void Clear()
CloseLayout()
Add a node which would make this a closed loop
Declaration
public void CloseLayout()
Equals(Object)
Declaration
public override bool Equals(object other)
Parameters
Type | Name | Description |
---|---|---|
System.Object | other |
Returns
Type | Description |
---|---|
System.Boolean |
Overrides
Finalize()
Declaration
protected void Finalize()
GetEnumerator()
Get the enumerator object
Declaration
public IEnumerator GetEnumerator()
Returns
Type | Description |
---|---|
System.Collections.IEnumerator |
GetHashCode()
Declaration
public override int GetHashCode()
Returns
Type | Description |
---|---|
System.Int32 |
Overrides
GetIsClosed()
True if this is a losed loop
Declaration
public bool GetIsClosed()
Returns
Type | Description |
---|---|
System.Boolean |
Pop()
Remove the node at the end of the layout
Declaration
public void Pop()
RemoveAt(Int32)
Remove a node at the given index
Declaration
public void RemoveAt(int index)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | index |
SetDepthVectors(Vector3D)
Set the depth vectors on each Layout3DNode. If uniform is true, all nodes will be given the specified vector. If uniform is false, the specified vector will be given to the first node, and vectors subsequent nodes will bisect the angle between adjacent layout segments at the rotation of the depth vector on the previous node.
Declaration
public void SetDepthVectors(Vector3D depth)
Parameters
Type | Name | Description |
---|---|---|
Vector3D | depth |
SetDepthVectors(Vector3D, Boolean)
Set the depth vectors on each Layout3DNode. If uniform is true, all nodes will be given the specified vector. If uniform is false, the specified vector will be given to the first node, and vectors subsequent nodes will bisect the angle between adjacent layout segments at the rotation of the depth vector on the previous node.
Declaration
public void SetDepthVectors(Vector3D depth, bool uniform)
Parameters
Type | Name | Description |
---|---|---|
Vector3D | depth | |
System.Boolean | uniform |
Transform(Matrix)
Move and rotate this whole layout using the given matrix
Declaration
public void Transform(Matrix transformation)
Parameters
Type | Name | Description |
---|---|---|
Matrix | transformation |