Navigation
API > API/Runtime > API/Runtime/GeometryCore > API/Runtime/GeometryCore/Curve
Inheritance Hierarchy
- FDynamicGraph
- FDynamicGraph2
- FDynamicGraph3
- FDynamicGraphN
References
| Module | GeometryCore |
| Header | /Engine/Source/Runtime/GeometryCore/Public/Curve/DynamicGraph.h |
| Include | #include "Curve/DynamicGraph.h" |
Syntax
class FDynamicGraph
Variables
| Type | Name | Description | |
|---|---|---|---|
| TDynamicVector< FEdge > | edges | ||
| FRefCountVector | edges_refcount | ||
| int | max_group_id | ||
| int | shape_timestamp | ||
| int | timestamp | ||
| FSmallListSet | vertex_edges | ||
| FRefCountVector | vertices_refcount |
Constructors
| Type | Name | Description | |
|---|---|---|---|
Destructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| int | add_edge
(
int A, |
||
| int | |||
| int | append_new_split_vertex
(
int A, |
||
| int | |||
| int | AppendEdge
(
int v0, |
||
| int | AppendEdge
(
const FIndex2i& ev, |
||
| int | AppendEdge
(
const FEdge& E |
||
| bool | CheckValidity
(
EValidityCheckFailMode FailMode |
This function checks that the graph is well-formed, ie all internal data structures are consistent | |
| EMeshResult | CollapseEdge
(
int VKeep, |
||
| void | debug_check_is_edge
(
int E |
||
| void | debug_check_is_vertex
(
int V |
||
| bool | edge_has_v
(
int EID, |
||
| int | edge_other_v
(
int EID, |
||
| int | EdgeCount () |
||
| edge_iterator | EdgeIndices () |
||
| value_iteration< FEdge > | Edges () |
Enumerate edges. | |
| int | FindEdge
(
int VA, |
||
| FEdge | GetEdge
(
int EID |
||
| int | GetEdgeGroup
(
int EID |
||
| FIndex2i | GetEdgeV
(
int EID |
||
| int | |||
| int | GetVtxEdgeCount
(
int VID |
||
| bool | insert_vertex_internal
(
int32 Vid |
||
| FEdge | InvalidEdge3 () |
||
| FIndex2i | InvalidEdgeV () |
||
| bool | IsBoundaryVertex
(
int VID |
||
| bool | IsCompact () |
||
| bool | IsCompactV () |
||
| bool | IsEdge
(
int EID |
||
| bool | IsJunctionVertex
(
int VID |
||
| bool | IsRegularVertex
(
int VID |
||
| bool | IsVertex
(
int VID |
||
| int | MaxEdgeID () |
||
| int | MaxGroupID () |
||
| int | MaxVertexID () |
These values are (max_used+1), ie so an iteration should be < MaxVertexID, not <= | |
| EMeshResult | RemoveEdge
(
int EID, |
||
| EMeshResult | RemoveVertex
(
int VID, |
||
| int | replace_edge_vertex
(
int EID, |
||
| void | SetEdgeGroup
(
int EID, |
||
| int | |||
| EMeshResult | SplitEdge
(
int EAB, |
||
| EMeshResult | SplitEdge
(
int VA, |
||
| EMeshResult | SplitEdgeWithExistingVertex
(
int EAB, |
||
| void | subclass_validity_checks
(
TFunction< void(bool)> CheckOrFailF |
||
| int | Timestamp () |
||
| void | updateTimeStamp
(
bool bShapeChange |
||
| int | VertexCount () |
||
| vertex_iterator | |||
| FSmallListSet::ValueEnumerable | VtxEdgesItr
(
int VID |
Enumerate edge ids connected to vertex (i.e. edge one-ring) | |
| FSmallListSet::MappedValueEnumerable | VtxVerticesItr
(
int VID |
Enumerate "other" vertices of edges connected to vertex (i.e. vertex one-ring) |
Classes
| Type | Name | Description | |
|---|---|---|---|
| FEdge | |||
| FEdgeCollapseInfo | |||
| FEdgeSplitInfo |
Typedefs
| Name | Description |
|---|---|
| edge_iterator | |
| value_iteration | |
| vertex_iterator | Iterators The functions vertices() / triangles() / edges() are provided so you can do: for ( int EID : edges() ) { ... } and other related begin() / end() idioms |
Constants
| Name | Description |
|---|---|
| DuplicateEdgeID | |
| InvalidID |