description: Returns true if the Parametric Object Node is contained in this Group Object Node


description: Creates a DMX Xml Node as per MVR standard in parent, or logs warnings if no compliant Node can be created.

module: DMXRuntime

code: virtual void CreateXmlNodeInParent ( [FXmlNode](API\Runtime\XmlParser\FXmlNode) & ParentNode ) const


description: Returns a pointer ot the Parametric Object Node that corresponds to the UUID, or nullptr if there is no corresponding Parametric Object Node

code: [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UDMXMVRParametricObjectNodeBase](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRParametricObjectNodeBase) > * FindParametricObjectNodeByUUID ( const [FGuid](API\Runtime\Core\Misc\FGuid) & InUUID )


description: Returns a list of graphic objects that are part of the group.

code: [UDMXMVRChildListNode](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRChildListNode) * GetChildListNode() const


description: Returns the Fixture Nodes contained in this Layer. Note, does not clear the array.

code: void GetFixtureNodes ( [TArray](API\Runtime\Core\Containers\TArray)< [UDMXMVRFixtureNode](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRFixtureNode) * > & OutFixtureNodes ) const


description: Initializes the Child List Node and its Children from a Group Object Xml Node. Does not merge, clears previous entries.

code: void InitializeFromGroupObjectXmlNode ( const [FXmlNode](API\Runtime\XmlParser\FXmlNode) & GroupObjectXmlNode )


description: Constructor

code: UDMXMVRGroupObjectNode()


description: Removes the Parametric Object Node from Child List. Returns true if the Node was removed.

code: bool RemoveParametricObjectNode ( [UDMXMVRParametricObjectNodeBase](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRParametricObjectNodeBase) * ParametricObjectNode )


className: UDMXMVRGroupObjectNode

description: This node defines logical group of objects. The child objects are located inside a local coordinate system.

Name

type: FDMXOptionalStr...

description: The name of the GroupObject


description: Returns true if the Parametric Object Node is contained in this layer

code: bool Contains ( [UDMXMVRParametricObjectNodeBase](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRParametricObjectNodeBase) * ParametricObjectNode )


code: void CreateXmlNodeInParent ( [FXmlNode](API\Runtime\XmlParser\FXmlNode) & ParentNode ) const


code: [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UDMXMVRParametricObjectNodeBase](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRParametricObjectNodeBase) > * FindParametricObjectNodeByUUID ( const [FGuid](API\Runtime\Core\Misc\FGuid) & InUUID ) const


description: Returns a list of graphic objects that are part of the layer.


description: Initializes the Layer Node and its Children from a Layer Xml Node. Does not merge, clears previous entries.

code: void InitializeFromLayerXmlNode ( const [FXmlNode](API\Runtime\XmlParser\FXmlNode) & LayerXmlNode )


description: Constructor

code: UDMXMVRLayerNode()


className: UDMXMVRLayerNode

description: A Layer node in the Layers Node of a Scene.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UDMXMVRLayerNode : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

Matrix

type: FDMXOptionalTra...

description: The transformation matrix that defines the location and orientation of this the layer inside its global coordinate space.

description: The name of the object

UUID

type: FGuid

description: The unique identifier of the object.


description: Creates a new Layer. Returns the newly created Layer


code: [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UDMXMVRParametricObjectNodeBase](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRParametricObjectNodeBase) > * FindParametricObjectNodeByUUID ( const [FGuid](API\Runtime\Core\Misc\FGuid) & UUID ) const


description: Returns the Layers of this Node

code: const [TArray](API\Runtime\Core\Containers\TArray)< [UDMXMVRLayerNode](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRLayerNode) * > & GetLayerNodes() const


description: Initializes the Layers Node and its Children from a Layers Xml Node. Does not merge, clears previous entries.

code: void InitializeFromLayersXmlNode ( const [FXmlNode](API\Runtime\XmlParser\FXmlNode) & LayersXmlNode )


description: Removes a Layer. Ensures the Layer is contained in the Layers of this Node

code: void RemoveLayer ( [UDMXMVRLayerNode](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRLayerNode) * LayerNodeToRemove )


code: virtual void CreateXmlNodeInParent ( [FXmlNode](API\Runtime\XmlParser\FXmlNode) & ParentNode ) const


className: UDMXMVRLayersNode

description: This node defines a list of layers inside the scene. The layer is a container of graphical objects defining a local coordinate system.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UDMXMVRLayersNode : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


description: Returns the Group this Node resides in, or null if not in a Group

code: const [UDMXMVRGroupObjectNode](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRGroupObjectNode) * GetGroup() const


description: Returns the Layer this Node resides in


description: Returns the Layer this Node resides in

code: const [UDMXMVRLayerNode](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRLayerNode) * GetLayer() const


description: Gets the Transform in the absolute coordinate system

code: FTransform GetTransformAbsolute() const


description: Sets the Transform in the absolute coordinate system

code: void SetTransformAbsolute ( FTransform NewTransform )


description: Constructor

code: UDMXMVRParametricObjectNodeBase()


className: UDMXMVRParametricObjectNodeBase

description: UE specific: The base class for all Children in a Child List Node, whereas the standard refers to them as 'Parametric Objects'.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract) class UDMXMVRParametricObjectNodeBase : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

Matrix

description: The location of the object inside the parent coordinate system.

description: The unique identifier of the object.


description: Creates a DMX Xml Node as per MVR standard, returns nullptr if the Xml File cannot be created.

code: [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FXmlFile](API\Runtime\XmlParser\FXmlFile) > CreateXmlFile()


description: Returns the Fixture Nodes contained in this Layer. Note, does not clear the array.

code: void GetFixtureNodes ( [TArray](API\Runtime\Core\Containers\TArray)< [UDMXMVRFixtureNode](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRFixtureNode) * > & OutFixtureNodes ) const


description: Returns the node that contains information about the mvr scene

code: [UDMXMVRSceneNode](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRSceneNode) * GetSceneNode() const


description: Returns the first Child List Node in the Scene


description: Initializes the Object and its children from a General Scene Description Xml File. Does not merge, clears previous entries. Returns false if not a valid MVR General Scene Description Xml

code: bool InitializeFromGeneralSceneDescriptionXml ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FXmlFile](API\Runtime\XmlParser\FXmlFile) > & GeneralSceneDescriptionXml )


description: Constructor

code: UDMXMVRRootNode()


description: Removes the Parametric Object Node from the General Scene Description. Returns true if the Node was removed.

code: bool RemoveParametricObjectNode ( [UDMXMVRParametricObjectNodeBase](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRParametricObjectNodeBase) * ParametricObjectNode )


className: UDMXMVRRootNode

description: UE specific: Note, while properties follow the standard closely, only children relevant to the Engine are implemented.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UDMXMVRRootNode : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


description: Creates a DMX Xml Node as per MVR standard in parent, or logs warnings if no compliant Node can be created.

code: void CreateXmlNodeInParent ( [FXmlNode](API\Runtime\XmlParser\FXmlNode) & ParentNode ) const


description: Returns the node that defines a list of layers inside the scene. The layer is a container of graphical objects defining a local coordinate system.

code: [UDMXMVRLayersNode](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRLayersNode) * GetLayersNode() const


description: Initializes the Scene Node andd its Children from a Scene Xml Node. Does not merge, clears previous entries.

code: void InitializeFromSceneXmlNode ( const [FXmlNode](API\Runtime\XmlParser\FXmlNode) & SceneXmlNode )


description: Constructor

code: UDMXMVRSceneNode()


className: UDMXMVRSceneNode

description: UE Specific: Note, while properties follow the standard closely, only properties relevant to the Engine are implemented.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UDMXMVRSceneNode : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


className: UDMXMVRUnrealEngineDataNode

description: This node contains a collection of data specified by the provider application. UE sepecific: Used to add UE specific meta data

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UDMXMVRUnrealEngineDataNode : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


description: Constructor

code: UDMXMVRUserDataNode()


className: UDMXMVRUserDataNode

description: This node contains a collection of user data nodes defined and used by provider applications if required.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UDMXMVRUserDataNode : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


description: Returns the imported file path and name

code: const [FString](API\Runtime\Core\Containers\FString) & GetFilePathAndName() const


description: Returns the raw source file as byte array, as it was imported

code: const TArray64< uint8 > & GetRawSourceData() const


className: ProviderNameUnrealEngine

description: The Provider Name when the Data node is provided by Unreal Engine

code: static constexpr TCHAR ProviderNameUnrealEngine = TEXT("UnrealEngine");


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


description: Sets the source file and initializes members from it

code: void SetSourceFile ( const [FString](API\Runtime\Core\Containers\FString) & InFilePathAndName )


className: UDMXMVRAssetImportData

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UDMXMVRAssetImportData : public [UAssetImportData](API\Runtime\Engine\EditorFramework\UAssetImportData)


className: FixturePatchMetaDataKey

description: The key for the Fixture Patch meta data

code: static const [FName](API\Runtime\Core\UObject\FName) FixturePatchMetaDataKey = TEXT("FixturePatch");


description: Returns MVR Asset User Data for the Actor, or nullptr if there is no asset user data

code: static [UDMXMVRAssetUserData](API\Plugins\DMXRuntime\MVR\UDMXMVRAssetUserData) * GetMVRAssetUserData ( const [AActor](API\Runtime\Engine\GameFramework\AActor) & Actor )


description: Returns the Value in Meta data given a Key, or an empty String if the Key doesn't exist

code: static [FString](API\Runtime\Core\Containers\FString) GetMVRAssetUserDataValueForKey ( const [AActor](API\Runtime\Engine\GameFramework\AActor) & Actor, const [FName](API\Runtime\Core\UObject\FName) Key )


className: MVRFixtureUUIDMetaDataKey

description: The key for the MVR UUID meta data

code: static const [FName](API\Runtime\Core\UObject\FName) MVRFixtureUUIDMetaDataKey = TEXT("MVRFixtureUUID");


description: Sets the Value for Key in Meta Data. Creates the Key if it doesn't exist.

code: static bool SetMVRAssetUserDataValueForKey ( [AActor](API\Runtime\Engine\GameFramework\AActor) & InOutActor, [FName](API\Runtime\Core\UObject\FName) InKey, const [FString](API\Runtime\Core\Containers\FString) & InValue )


className: UDMXMVRAssetUserData

description: Asset user data for Actors in an MVR Scene

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UDMXMVRAssetUserData : public [UAssetUserData](API\Runtime\Engine\Engine\UAssetUserData)

MetaData

type: TMap<FName,FS...

description: MVR Meta Data for the Actor


description: Returns true if an Xml File can be created. Gives a reason if no MVR can be exported

code: bool CanCreateXmlFile ( [FText](API\Runtime\Core\Internationalization\FText) & OutReason ) const


description: Creates an MVR General Scene Description from a DMX Library

code: static [UDMXMVRGeneralSceneDescription](API\Plugins\DMXRuntime\MVR\UDMXMVRGeneralSceneDescription) * CreateFromDMXLibrary ( const [UDMXLibrary](API\Plugins\DMXRuntime\Library\UDMXLibrary) & DMXLibrary, [UObject](API\Runtime\CoreUObject\UObject\UObject) * Outer, [FName](API\Runtime\Core\UObject\FName) Name, EObjectFlags Flags )


description: Creates an General Scene Description Xml File from this.

code: [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FXmlFile](API\Runtime\XmlParser\FXmlFile) > CreateXmlFile() const


description: Creates an MVR General Scene Description from an Xml File

code: static [UDMXMVRGeneralSceneDescription](API\Plugins\DMXRuntime\MVR\UDMXMVRGeneralSceneDescription) * CreateFromXmlFile ( [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FXmlFile](API\Runtime\XmlParser\FXmlFile) > GeneralSceneDescriptionXml, [UObject](API\Runtime\CoreUObject\UObject\UObject) * Outer, [FName](API\Runtime\Core\UObject\FName) Name, EObjectFlags Flags )


description: Returns the Fixture Node corresponding to the UUID, or nullptr if it cannot be found

code: [UDMXMVRFixtureNode](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRFixtureNode) * FindFixtureNode ( const [FGuid](API\Runtime\Core\Misc\FGuid) & FixtureUUID ) const


description: Gets the MVR Fixture Nodes in this General Scene Description

code: void GetFixtureNodes ( [TArray](API\Runtime\Core\Containers\TArray)< [UDMXMVRFixtureNode](API\Plugins\DMXRuntime\MVR\Types\UDMXMVRFixtureNode) * > & OutFixtureNodes ) const


description: Returns MVR Asset Import Data for this asset

code: [UDMXMVRAssetImportData](API\Plugins\DMXRuntime\MVR\UDMXMVRAssetImportData) * GetMVRAssetImportData() const


description: Writes the Library to the General Scene Description, effectively removing inexisting and adding new MVR Fixtures, according to what MVR Fixture UUIDs the Fixture Patches of the Library contain.

code: void WriteDMXLibraryToGeneralSceneDescription ( const [UDMXLibrary](API\Plugins\DMXRuntime\Library\UDMXLibrary) & DMXLibrary )


description: Constructor

code: UDMXMVRGeneralSceneDescription()


className: UDMXMVRGeneralSceneDescription

description: MVR General Scene Description Object

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UDMXMVRGeneralSceneDescription : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


code: int32 GetStartingChannel() const


code: bool NeedsInitialization() const


description: Returns the function channel, or nullptr if it got moved or deleted

code: const [FDMXFixtureFunctionChannel](API\Plugins\DMXRuntime\Sequencer\FDMXFixtureFunctionChannel) * TryGetFunctionChannel ( const [TArray](API\Runtime\Core\Containers\TArray)< [FDMXFixturePatchChannel](API\Plugins\DMXRuntime\Sequencer\FDMXFixturePatchChannel) > & FixturePatchChannels ) const


code: FDMXCachedFunctionChannelInfo()


code: FDMXCachedFunctionChannelInfo ( const [TArray](API\Runtime\Core\Containers\TArray)< [FDMXFixturePatchChannel](API\Plugins\DMXRuntime\Sequencer\FDMXFixturePatchChannel) > & FixturePatchChannels, int32 InPatchChannelIndex, int32 InFunctionChannelIndex )


className: FDMXCachedFunctionChannelInfo

description: Profiled, issues were apparent in 4.26 with a great number of sequencer channels (attributes).

code: struct FDMXCachedFunctionChannelInfo


description: True if the function is a cell function

code: bool IsCellFunction() const


className: FDMXFixtureFunctionChannel

AttributeName

type: FName

description: Attribute Name of the function

bEnabled

type: bool

description: Whether or not to display this Function in the Patch's group If false, the Function's default value is sent to DMX protocols.

CellCoordinate

type: FIntPoint

description: For Cell Functions the coordinate of the cell For common functions -1.

Channel

type: FMovieSceneFloa...

description: Function animation curve.

DefaultValue

description: Default value to use when this Function is disabled in the track.


code: void SetFixturePatch ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * InPatch )


description: Makes sure the number of Float Channels matches the number of functions in the selected Patch mode

code: void UpdateNumberOfChannels ( bool bResetDefaultValues )


className: FDMXFixturePatchChannel

ActiveMode

description: Allows Sequencer to animate the fixture using a mode and not have it break simply by the user changing the active mode in the DMX Library.

DMXLibrary

type: TObjectPtr<UDM...

description: The outer library of the channel

FunctionChannels

type: TArray<FDMXFix...

description: Fixture function float channels

Reference

type: FDMXEntityFixtu...

description: Points to the Fixture Patch


code: FMovieSceneDMXLibraryTemplate()


code: FMovieSceneDMXLibraryTemplate ( const [UMovieSceneDMXLibrarySection](API\Plugins\DMXRuntime\Sequencer\UMovieSceneDMXLibrarySection) & InSection )


className: FMovieSceneDMXLibraryTemplate

description: Template that performs evaluation of Fixture Patch sections

code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)() struct FMovieSceneDMXLibraryTemplate : public [FMovieSceneEvalTemplate](API\Runtime\MovieScene\Evaluation\FMovieSceneEvalTemplate)


description: Adds a single patch to the section

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Movie Scene") void AddFixturePatch ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * InPatch )


description: Adds all patches to the secion

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Sequencer|Section") void AddFixturePatches ( const [TArray](API\Runtime\Core\Containers\TArray)< [FDMXEntityFixturePatchRef](API\Plugins\DMXRuntime\Library\FDMXEntityFixturePatchRef) > & InFixturePatchRefs )


description: Check if this Section animates a Fixture Patch's Functions

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintPure, Category="Sequencer|Section") bool ContainsFixturePatch ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * InPatch ) const


description: Evaluates DMX at given fame time and sends it

code: void EvaluateAndSendDMX ( const [FFrameTime](API\Runtime\Core\Misc\FFrameTime) & InFrameTime ) const


description: Returns whether a Fixture Patch's Function curve channel is currently enabled

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintPure, Category="Sequencer|Section") bool GetFixturePatchChannelEnabled ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * InPatch, int32 InChannelIndex ) const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FDMXFixturePatchChannel](API\Plugins\DMXRuntime\Sequencer\FDMXFixturePatchChannel) > & GetFixturePatchChannels() const


description: Get a list of the Fixture Patches being animated by this Section

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintPure, Category="Sequencer|Section") [TArray](API\Runtime\Core\Containers\TArray)< [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * > GetFixturePatches() const


description: Checked in evaluation to prevent sending DMX data while recording it with the Take Recorder.

code: bool GetIsRecording() const


description: Get the list of animated Fixture Patches and their curve channels

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintPure, Category="Sequencer|Section") int32 GetNumPatches() const


description: Returns the channel for specified patch or nullptr if the patch is not in use

code: [FDMXFixturePatchChannel](API\Plugins\DMXRuntime\Sequencer\FDMXFixturePatchChannel) * GetPatchChannel ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * Patch )


description: Called when a property on this object has been modified externally

code: virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


description: Called after importing property values for this object (paste, duplicate or .t3d import) Allow the object to perform any cleanup for properties which shouldn't be duplicated or are unsupported by the script serialization

code: virtual void PostEditImport()


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


description: Precaches data for playback

code: void RebuildPlaybackCache() const


description: Refreshes the channels. Useful e.g. when underlying DMX Library changes

code: void RefreshChannels()


description: Remove all Functions of a Fixture Patch

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Sequencer|Section") void RemoveFixturePatch ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * InPatch )


description: Remove all Functions of a Fixture Patch, searching it by name

code: void RemoveFixturePatch ( const [FName](API\Runtime\Core\UObject\FName) & InPatchName )


description: Sends DMX for channels that need initialization (one time evaluation) only


description: Used only by the Take Recorder to prevent Track evaluation from sending DMX data while recording it.

code: void SetIsRecording ( bool bNewState )


description: Toggle the visibility and evaluation of a Fixture Patch's Function. When invisible, the Function won't send its data to DMX Protocol.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Sequencer|Section") void ToggleFixturePatchChannel ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * InPatch, int32 InChannelIndex )


description: Toggle the visibility and evaluation of a Fixture Patch's Function searching both the Patch and Function by name. When invisible, the Function won't send its data to DMX Protocol.

code: void ToggleFixturePatchChannel ( const [FName](API\Runtime\Core\UObject\FName) & InPatchName, const [FName](API\Runtime\Core\UObject\FName) & InChannelName )


description: Handles reading, writing, and reference collecting usingFArchive. This implementation handles allFPropertyserialization, but can be overridden for native variables.

code: virtual void Serialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar )


description: Update the displayed Patches and Function channels in the section

code: void UpdateChannelProxy ( bool bResetDefaultChannelValues )


className: UMovieSceneDMXLibrarySection

description: A DMX Fixture Patch section

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UMovieSceneDMXLibrarySection : public [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection)

bIsRecording

description: When recording DMX data into this track, this is set to true to prevent track evaluation from sending data to DMX simultaneously.

bUseNormalizedValues

description: If true, all values are interpreted as normalized values (0.0 to 1.0) and are mapped to the actual value range of a patch automatically.

FixturePatchChannels

description: The Fixture Patches being controlled by this section and their respective chosen mode


code: UMovieSceneDMXLibrarySection()


description: Add a section to this track.

code: virtual void AddSection ( [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) & Section )


description:
Generates a new section suitable for use with this track.
a new section suitable for use with this track.

code: virtual [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) * CreateNewSection()


description: Sets the active mode for a Fixture Patch

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Sequencer|Section") void SetFixturePatchActiveMode ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * InPatch, int32 InActiveMode )


description:
Create a movie scene eval template for the specified section
A template, or null

code: virtual [FMovieSceneEvalTemplatePtr](API\Runtime\MovieScene\Evaluation\FMovieSceneEvalTemplatePtr) CreateTemplateForSection ( const [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) & InSection ) const


description:
Called when all the sections of the track need to be retrieved.
List of all the sections in the track.

code: virtual const [TArray](API\Runtime\Core\Containers\TArray)< [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) * > & GetAllSections() const


code: [UDMXLibrary](API\Plugins\DMXRuntime\Library\UDMXLibrary) * GetDMXLibrary() const


description:
Checks to see if the section is in this track.
True if the section is in this track.

code: virtual bool HasSection ( const [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) & Section ) const


description: Whether or not this track has any data in it.

code: virtual bool IsEmpty() const


description: Removes a section from this track.

code: virtual void RemoveSection ( [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) & Section )


description: Removes animation data.

code: virtual void RemoveAllAnimationData()


description: Removes a section from this track at a particular index

code: virtual void RemoveSectionAt ( int32 SectionIndex )


code: void SetDMXLibrary ( [UDMXLibrary](API\Plugins\DMXRuntime\Library\UDMXLibrary) * InLibrary )


description: Whether or not this track supports multiple row indices.

code: virtual bool SupportsMultipleRows() const


description:
Does this track support this section class type?
Whether this track supports this section class type

code: virtual bool SupportsType ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) > SectionClass ) const


className: UMovieSceneDMXLibraryTrack

description: Handles manipulation of DMX Libraries in a movie scene.


className: WithCopy

code: enum &123; WithCopy = true &125;


className: WithIdenticalViaEquality

code: enum &123; WithIdenticalViaEquality = true &125;


className: WithSerializer

code: enum &123; WithSerializer = true &125;


className: TStructOpsTypeTraits< FDMXByteArray64 >

code: template<> struct TStructOpsTypeTraits< FDMXByteArray64 > : public [TStructOpsTypeTraitsBase2< FDMXByteArray64 >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FDMXOptionalBool > : public [TStructOpsTypeTraitsBase2< FDMXOptionalBool >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FDMXOptionalColorCIE1931 > : public [TStructOpsTypeTraitsBase2< FDMXOptionalColorCIE1931 >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FDMXOptionalFloat > : public [TStructOpsTypeTraitsBase2< FDMXOptionalFloat >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FDMXOptionalGuid > : public [TStructOpsTypeTraitsBase2< FDMXOptionalGuid >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FDMXOptionalInt32 > : public [TStructOpsTypeTraitsBase2< FDMXOptionalInt32 >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FDMXOptionalString > : public [TStructOpsTypeTraitsBase2< FDMXOptionalString >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FDMXOptionalTransform > : public [TStructOpsTypeTraitsBase2< FDMXOptionalTransform >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


code: template<> struct TStructOpsTypeTraits< FDMXOptionalVector2D > : public [TStructOpsTypeTraitsBase2< FDMXOptionalVector2D >](API\Runtime\CoreUObject\UObject\TStructOpsTypeTraitsBase2)


description: Return normalized value given an array of bytes. Up to the first 4 bytes in the array will be used for the conversion.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintPure, Category="DMX", Meta=(Keywords="float")) float BytesToNormalizedValue ( const [TArray](API\Runtime\Core\Containers\TArray)< uint8 > & Bytes, bool bUseLSB ) const


description: DEPRECATED 4.27

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(DeprecatedFunction, DeprecationMessage="Deprecated 4.27. Controllers are removed in favor of Ports.")) [TArray](API\Runtime\Core\Containers\TArray)< [UDMXEntityController](API\Plugins\DMXRuntime\Library\UDMXEntityController) * > GetAllControllersInLibrary ( const [UDMXLibrary](API\Plugins\DMXRuntime\Library\UDMXLibrary) * DMXLibrary )


description: Return reference to array of DMX Library objects.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX") const [TArray](API\Runtime\Core\Containers\TArray)< [UDMXLibrary](API\Plugins\DMXRuntime\Library\UDMXLibrary) * > & GetAllDMXLibraries()


description: Return reference to array of Fixture Patch objects in library.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX") [TArray](API\Runtime\Core\Containers\TArray)< [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * > GetAllFixturesInLibrary ( const [UDMXLibrary](API\Plugins\DMXRuntime\Library\UDMXLibrary) * DMXLibrary )


description: Return reference to array of Fixture Patch objects in a given universe.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX") void GetAllFixturesInUniverse ( const [UDMXLibrary](API\Plugins\DMXRuntime\Library\UDMXLibrary) * DMXLibrary, int32 UniverseId, [TArray](API\Runtime\Core\Containers\TArray)< [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * > & OutResult )


description: Return reference to array of Fixture Patch objects of a given category.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX") void GetAllFixturesOfCategory ( const [UDMXLibrary](API\Plugins\DMXRuntime\Library\UDMXLibrary) * DMXLibrary, [FDMXFixtureCategory](API\Plugins\DMXProtocol\FDMXFixtureCategory) Category, [TArray](API\Runtime\Core\Containers\TArray)< [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * > & OutResult )


description: Return reference to array of Fixture Patch objects of a given type.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(AutoCreateRefTerm="FixtureType")) void GetAllFixturesOfType ( const [FDMXEntityFixtureTypeRef](API\Plugins\DMXRuntime\Library\FDMXEntityFixtureTypeRef) & FixtureType, [TArray](API\Runtime\Core\Containers\TArray)< [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * > & OutResult )


description: Return integer given an array of bytes. Up to the first 4 bytes in the array will be used for the conversion.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintPure, Category="DMX") int32 BytesToInt ( const [TArray](API\Runtime\Core\Containers\TArray)< uint8 > & Bytes, bool bUseLSB ) const


description: Return reference to array of Fixture Types objects in library.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX") [TArray](API\Runtime\Core\Containers\TArray)< [UDMXEntityFixtureType](API\Plugins\DMXRuntime\Library\UDMXEntityFixtureType) * > GetAllFixtureTypesInLibrary ( const [UDMXLibrary](API\Plugins\DMXRuntime\Library\UDMXLibrary) * DMXLibrary )


description: Return reference to array of Fixture Patch objects with a given tag.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX") [TArray](API\Runtime\Core\Containers\TArray)< [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * > GetAllFixturesWithTag ( const [UDMXLibrary](API\Plugins\DMXRuntime\Library\UDMXLibrary) * DMXLibrary, [FName](API\Runtime\Core\UObject\FName) CustomTag )


description: Get array of all cells and associated data.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(DeprecatedFunction, DeprecationMessage="Deprecated 4.26. DMXEntityFixurePatch::GetAllMatrixCells instead")) bool GetAllMatrixCells ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * FixturePatch, [TArray](API\Runtime\Core\Containers\TArray)< [FDMXCell](API\Plugins\DMXRuntime\Library\FDMXCell) > & Cells )


description: DEPRECATED 4.27

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(DeprecatedFunction, DeprecationMessage="Deprecated 4.27. Controllers are removed in favor of Ports.")) void GetAllUniversesInController ( const [UDMXLibrary](API\Plugins\DMXRuntime\Library\UDMXLibrary) * DMXLibrary, [FString](API\Runtime\Core\Containers\FString) ControllerName, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & OutResult )


description: Gets theFNamefor aFDMXAttributeName, since structs can't have UFUCNTIONS to create a getterFNamethe name of the AttributeName

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX") [FName](API\Runtime\Core\UObject\FName) GetAttributeLabel ( [FDMXAttributeName](API\Plugins\DMXProtocol\FDMXAttributeName) AttributeName )


description: Get all attributes for the fixture patch.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(DeprecatedFunction, DeprecationMessage="Deprecated 4.26. DMXEntityFixurePatch::GetCellAttributes instead")) bool GetCellAttributes ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * FixturePatch, [TArray](API\Runtime\Core\Containers\TArray)< [FDMXAttributeName](API\Plugins\DMXProtocol\FDMXAttributeName) > & CellAttributes )


description: DEPRECATED 4.27

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(AutoCreateRefTerm="Name"), Meta=(DeprecatedFunction, DeprecationMessage="Deprecated 4.27. Controllers are removed in favor of Ports.")) [UDMXEntityController](API\Plugins\DMXRuntime\Library\UDMXEntityController) * GetControllerByName ( const [UDMXLibrary](API\Plugins\DMXRuntime\Library\UDMXLibrary) * DMXLibrary, const [FString](API\Runtime\Core\Containers\FString) & Name )


description: Gets accumulated latest DMX Values from the Input Port (all that's been received since Begin Play)

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX") static void GetDMXDataFromInputPort ( [FDMXInputPortReference](API\Plugins\DMXProtocol\IO\FDMXInputPortReference) InputPortReference, [TArray](API\Runtime\Core\Containers\TArray)< uint8 > & DMXData, int32 LocalUniverse )


description: Gets accumulated latest DMX Values from the Output Port (all that's been sent since Begin Play)

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX") static void GetDMXDataFromOutputPort ( [FDMXOutputPortReference](API\Plugins\DMXProtocol\IO\FDMXOutputPortReference) OutputPortReference, [TArray](API\Runtime\Core\Containers\TArray)< uint8 > & DMXData, int32 LocalUniverse )


description: Get a DMX Subsystem, pure version

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintPure, Category="DMX Subsystem", Meta=(BlueprintInternalUseOnly="true")) static [UDMXSubsystem](API\Plugins\DMXRuntime\UDMXSubsystem) * GetDMXSubsystem_Pure()


description: Return map with all DMX functions and their associated values given DMX buffer and desired universe.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(DisplayName="Get Fixture Attributes")) void GetFixtureAttributes ( const [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * InFixturePatch, const [TArray](API\Runtime\Core\Containers\TArray)< uint8 > & DMXBuffer, [TMap](API\Runtime\Core\Containers\TMap)< [FDMXAttributeName](API\Plugins\DMXProtocol\FDMXAttributeName), int32 > & OutResult )


description:
Creates a literalUDMXEntityFixturePatchreference
The literalUDMXEntityFixturePatch

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintPure, Meta=(BlueprintInternalUseOnly="TRUE"), Category="DMX") [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * GetFixturePatch ( [FDMXEntityFixturePatchRef](API\Plugins\DMXRuntime\Library\FDMXEntityFixturePatchRef) InFixturePatch )


description: Return reference to Fixture Patch object with a given name.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(AutoCreateRefTerm="Name")) [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * GetFixtureByName ( const [UDMXLibrary](API\Plugins\DMXRuntime\Library\UDMXLibrary) * DMXLibrary, const [FString](API\Runtime\Core\Containers\FString) & Name )


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintPure, Meta=(BlueprintInternalUseOnly="TRUE"), Category="DMX") [UDMXEntityFixtureType](API\Plugins\DMXRuntime\Library\UDMXEntityFixtureType) * GetFixtureType ( [FDMXEntityFixtureTypeRef](API\Plugins\DMXRuntime\Library\FDMXEntityFixtureTypeRef) InFixtureType )


description: Return reference to Fixture Type object with a given name.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(AutoCreateRefTerm="Name")) [UDMXEntityFixtureType](API\Plugins\DMXRuntime\Library\UDMXEntityFixtureType) * GetFixtureTypeByName ( const [UDMXLibrary](API\Plugins\DMXRuntime\Library\UDMXLibrary) * DMXLibrary, const [FString](API\Runtime\Core\Containers\FString) & Name )


description:
Gets a function map based on you active mode from FixturePatch
True if outputting was successfully

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Meta=(BlueprintInternalUseOnly="TRUE", AutoCreateRefTerm="SelectedProtocol"), Category="DMX") bool GetFunctionsMap ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * InFixturePatch, [TMap](API\Runtime\Core\Containers\TMap)< [FDMXAttributeName](API\Plugins\DMXProtocol\FDMXAttributeName), int32 > & OutAttributesMap )


description:
Gets a function map based on you active mode from FixturePatch, but instead of passing a Protocol as parameters, it looks for the first Protocol found in the Patch's universe and use that one
True if outputting was successfully

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Meta=(BlueprintInternalUseOnly="TRUE", AutoCreateRefTerm="SelectedProtocol"), Category="DMX") bool GetFunctionsMapForPatch ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * InFixturePatch, [TMap](API\Runtime\Core\Containers\TMap)< [FDMXAttributeName](API\Plugins\DMXProtocol\FDMXAttributeName), int32 > & OutAttributesMap )


description: Get a DMX Subsystem, callable version

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX Subsystem", Meta=(BlueprintInternalUseOnly="true")) static [UDMXSubsystem](API\Plugins\DMXRuntime\UDMXSubsystem) * GetDMXSubsystem_Callable()


description:
Gets function channel value by input function name
Function channel value

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Meta=(BlueprintInternalUseOnly="TRUE", AutoCreateRefTerm="InName, InAttributesMap"), Category="DMX") int32 GetFunctionsValue ( const [FName](API\Runtime\Core\UObject\FName) FunctionAttributeName, const [TMap](API\Runtime\Core\Containers\TMap)< [FDMXAttributeName](API\Plugins\DMXProtocol\FDMXAttributeName), int32 > & InAttributesMap )


description: Get data for single cell.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(DeprecatedFunction, DeprecationMessage="Deprecated 4.26. DMXEntityFixurePatch::GetMatrixCell instead")) bool GetMatrixCell ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * FixturePatch, FIntPoint Coordinate, [FDMXCell](API\Plugins\DMXRuntime\Library\FDMXCell) & Cell )


description: Gets the absolute starting channel of each cell attribute at given coordinate

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(DeprecatedFunction, DeprecationMessage="Deprecated 4.26. DMXEntityFixurePatch::GetMatrixCellChannelsAbsolute instead")) bool GetMatrixCellChannelsAbsolute ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * FixturePatch, FIntPoint Coordinate, [TMap](API\Runtime\Core\Containers\TMap)< [FDMXAttributeName](API\Plugins\DMXProtocol\FDMXAttributeName), int32 > & AttributeChannelMap )


description: Gets the starting channel of each cell attribute at given coordinate, relative to the Starting Channel of the patch.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(DeprecatedFunction, DeprecationMessage="Deprecated 4.26. DMXEntityFixurePatch::GetMatrixCellChannelsRelative instead")) bool GetMatrixCellChannelsRelative ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * FixturePatch, FIntPoint Coordinate, [TMap](API\Runtime\Core\Containers\TMap)< [FDMXAttributeName](API\Plugins\DMXProtocol\FDMXAttributeName), int32 > & AttributeChannelMap )


description: Get DMX Cell value using matrix coordinates.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(DeprecatedFunction, DeprecationMessage="Deprecated 4.26. DMXEntityFixurePatch::GetMatrixCellValues instead")) bool GetMatrixCellValue ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * FixturePatch, FIntPoint Coordinate, [TMap](API\Runtime\Core\Containers\TMap)< [FDMXAttributeName](API\Plugins\DMXProtocol\FDMXAttributeName), int32 > & AttributeValueMap )


description: Get Matrix Fixture properties

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintPure, Category="DMX", Meta=(DeprecatedFunction, DeprecationMessage="Deprecated 4.26. DMXEntityFixurePatch::GetMatrixProperties instead")) bool GetMatrixProperties ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * FixturePatch, [FDMXFixtureMatrix](API\Plugins\DMXRuntime\Library\FDMXFixtureMatrix) & MatrixProperties )


description:
Return the normalized value of an Int value from a Fixture Patch function.
The normalized value of the passed in Int using the Function's signal format. -1.0 if the Function is not found in the Fixture Patch.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintPure, Category="DMX", Meta=(Keywords="float", DisplayName="GetNormalizedAttributeValue")) float GetNormalizedAttributeValue ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * InFixturePatch, [FDMXAttributeName](API\Plugins\DMXProtocol\FDMXAttributeName) InFunctionAttribute, int32 InValue ) const


description: DEPRECATED 4.27

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(DeprecatedFunction, DeprecationMessage="Deprecated 4.27. Use GetDMXDataFromInputPort or GetDMXDataFromOutputPort instead.")) void GetRawBuffer ( [FDMXProtocolName](API\Plugins\DMXProtocol\FDMXProtocolName) SelectedProtocol, int32 RemoteUniverse, [TArray](API\Runtime\Core\Containers\TArray)< uint8 > & DMXBuffer )


description: Implement this for initialization of instances of the system

code: virtual void Initialize ( [FSubsystemCollectionBase](API\Runtime\Engine\Subsystems\FSubsystemCollectionBase) & Collection )


description: Return the normalized value of an Int value from the specified Signal Format.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintPure, Category="DMX", Meta=(Keywords="float")) float IntToNormalizedValue ( int32 InValue, [EDMXFixtureSignalFormat](API\Plugins\DMXProtocol\EDMXFixtureSignalFormat) InSignalFormat ) const


description: Return the Bytes format of Value in the desired Signal Format.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintPure, Category="DMX") static void IntValueToBytes ( int32 InValue, [EDMXFixtureSignalFormat](API\Plugins\DMXProtocol\EDMXFixtureSignalFormat) InSignalFormat, [TArray](API\Runtime\Core\Containers\TArray)< uint8 > & Bytes, bool bUseLSB )


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintPure, Category="DMX", Meta=(Keywords="float")) void NormalizedValueToBytes ( float InValue, [EDMXFixtureSignalFormat](API\Plugins\DMXProtocol\EDMXFixtureSignalFormat) InSignalFormat, [TArray](API\Runtime\Core\Containers\TArray)< uint8 > & Bytes, bool bUseLSB ) const


description:
Checks if a FixturePatchs is of a given FixtureType
bool result of checking if the patch is of a given type

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Meta=(BlueprintInternalUseOnly="TRUE"), Category="DMX") bool PatchIsOfSelectedType ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * InFixturePatch, [FString](API\Runtime\Core\Containers\FString) RefTypeValue )


description: Sort an array according to the selected distribution pattern.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX") void PixelMappingDistributionSort ( [EDMXPixelMappingDistribution](API\Plugins\DMXRuntime\Library\EDMXPixelMappingDistribution) InDistribution, int32 InNumXPanels, int32 InNumYPanels, const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & InUnorderedList, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & OutSortedList )


description: Send DMX using function names and integer values.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(DeprecatedFunction, DeprecationMessage="Deprecated 4.27. Use DMXEntityFixurePatch::SendDMX instead")) void SendDMX ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * FixturePatch, [TMap](API\Runtime\Core\Containers\TMap)< [FDMXAttributeName](API\Plugins\DMXProtocol\FDMXAttributeName), int32 > AttributeMap, [EDMXSendResult](API\Plugins\DMXProtocol\EDMXSendResult) & OutResult )


description: DEPRECATED 4.27

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(DeprecatedFunction, DeprecationMessage="Deprecated 4.27. Use SendDMXToOutputPort instead.")) void SendDMXRaw ( [FDMXProtocolName](API\Plugins\DMXProtocol\FDMXProtocolName) SelectedProtocol, int32 RemoteUniverse, [TMap](API\Runtime\Core\Containers\TMap)< int32, uint8 > AddressValueMap, [EDMXSendResult](API\Plugins\DMXProtocol\EDMXSendResult) & OutResult )


description: Sends DMX Values over the Output Port

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX") static void SendDMXToOutputPort ( [FDMXOutputPortReference](API\Plugins\DMXProtocol\IO\FDMXOutputPortReference) OutputPortReference, [TMap](API\Runtime\Core\Containers\TMap)< int32, uint8 > ChannelToValueMap, int32 LocalUniverse )


description: Set DMX Cell value using matrix coordinates.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="DMX", Meta=(DeprecatedFunction, DeprecationMessage="Deprecated 4.26. DMXEntityFixurePatch::SendMatrixCellValue instead")) bool SetMatrixCellValue ( [UDMXEntityFixturePatch](API\Plugins\DMXRuntime\Library\UDMXEntityFixturePatch) * FixturePatch, FIntPoint Coordinate, [FDMXAttributeName](API\Plugins\DMXProtocol\FDMXAttributeName) Attribute, int32 Value )


className: UDMXSubsystem

description: UDMXSubsystemCollections of DMX context blueprint subsystem functions and internal functions for DMX K2Nodes

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UDMXSubsystem : public [UEngineSubsystem](API\Runtime\Engine\Subsystems\UEngineSubsystem)

OnAllDMXLibraryAssetsLoaded

type: FSimpleMulticas...

description: Delegate broadcast when all dmx library assets were loaded

OnDMXLibraryAssetAdded

type: FDMXOnDMXLibrar...

description: Delegate broadcast when a dmx library asset was added

OnDMXLibraryAssetRemoved

description: Delegate broadcast when a dmx library asset was removed


description: Creates an instance of this component

module: DTLSHandlerComponent

code: virtual [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [HandlerComponent](API\Runtime\PacketHandler\HandlerComponent) > CreateComponentInstance ( [FString](API\Runtime\Core\Containers\FString) & Options )


description: Called before the module is unloaded, right before the module object is destroyed. During normal shutdown, this is called in reverse order that modules finishStartupModule(). This means that, as long as a module references dependent modules in it'sStartupModule(), it can safely reference those dependencies inShutdownModule()as well.

code: virtual void ShutdownModule()


description: FPacketHandlerComponentModuleInterface

code: virtual void StartupModule()


className: FDTLSHandlerComponentModule

description: The public interface to this module.

code: class FDTLSHandlerComponentModule : public [FPacketHandlerComponentModuleInterface](API\Runtime\PacketHandler\FPacketHandlerComponentModuleInt-)


module: DummyMeshReconstructor

code: virtual void ConnectMRMesh ( [UMRMeshComponent](API\Runtime\MRMesh\UMRMeshComponent) * Mesh )


code: virtual void DisconnectMRMesh()


code: virtual bool IsReconstructionStarted() const


code: virtual bool IsReconstructionPaused() const


code: virtual void PauseReconstruction()


code: virtual void StartReconstruction()


code: virtual void StopReconstruction()


className: UDummyMeshReconstructor

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, Meta=(Experimental)) class UDummyMeshReconstructor : public [UMeshReconstructorBase](API\Runtime\MRMesh\UMeshReconstructorBase)


description:
Checks to see if this module is loaded and ready. It is only valid to callGet()ifIsAvailable()returns true.
True if the module is loaded and ready to use

module: DumpGPUServices

code: static bool IsAvailable()


description:
Singleton-like access to this module's interface. This is just for convenience! Beware of calling this during the shutdown phase, though. Your module might have been unloaded already.
Returns singleton instance, loading the module on demand if needed

code: static [IDumpGPUServices](API\Plugins\DumpGPUServices\IDumpGPUServices) & Get()


className: IDumpGPUServices

description: The public interface to this module. In most cases, this interface is only public to sibling modules within this plugin.

code: class IDumpGPUServices : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


description: Count number of tris in each group in Mesh; TODO: does this need sparse storage?

module: DynamicMesh

code: namespace FaceGroupUtil { void FaceGroupUtil::CountAllGroups ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & GroupCountsOut ) }


description: Find list of triangles in Mesh with specific group id

code: namespace FaceGroupUtil { bool FaceGroupUtil::FindTrianglesByGroup ( [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, int32 FindGroupID, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & TrianglesOut ) }


description: Find the set of group ids used in Mesh

code: namespace FaceGroupUtil { void FaceGroupUtil::FindAllGroups ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, [TSet](API\Runtime\Core\Containers\TSet)< int32 > & GroupsOut ) }


description: Collect triangles by group id. Returns array of triangle lists (stored as arrays). This requires 2 passes over Mesh, but each pass is linear

code: namespace FaceGroupUtil { void FaceGroupUtil::FindTriangleSetsByGroup ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, [TArray](API\Runtime\Core\Containers\TArray)< [TArray](API\Runtime\Core\Containers\TArray)< int32 >> & GroupTrisOut, int32 IgnoreGID ) }


description: true if mesh has multiple face groups

code: namespace FaceGroupUtil { bool FaceGroupUtil::HasMultipleGroups ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh ) }


description: Split input Mesh into submeshes based on group IDdoes notseparate disconnected components w/ same group ID

code: namespace FaceGroupUtil { void FaceGroupUtil::SeparateMeshByGroups ( [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, [TArray](API\Runtime\Core\Containers\TArray)< [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) > & SplitMeshes, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & GroupIDs ) }


code: namespace FaceGroupUtil { void FaceGroupUtil::SeparateMeshByGroups ( [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, [TArray](API\Runtime\Core\Containers\TArray)< [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) > & SplitMeshes ) }


description: Set group ID of all triangles in Mesh

code: namespace FaceGroupUtil { void FaceGroupUtil::SetGroupID ( [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, int32 to ) }


description: Set group id of subset of triangles in Mesh

code: namespace FaceGroupUtil { void FaceGroupUtil::SetGroupID ( [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, const [TArrayView](API\Runtime\Core\Containers\TArrayView)< const int32 > & triangles, int32 to ) }


description: Replace group id in Mesh

code: namespace FaceGroupUtil { void FaceGroupUtil::SetGroupToGroup ( [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, int32 from, int32 to ) }


className: FAttrMeshSimplification

description: The simplifier.


className: FConstraintProjectionData

code: struct FConstraintProjectionData

ProjectionCurves

type: TArray<TShared...


code: virtual void ShutdownModule()


description: IModuleInterfaceimplementation

code: virtual void StartupModule()


description: true if edge can be collapsed

code: bool CanCollapse() const


className: FDynamicMeshModule

code: class FDynamicMeshModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


description: true if flags permit collapsed

code: static bool CanCollapse ( const [EEdgeRefineFlags](API\Plugins\DynamicMesh\UE__Geometry__EEdgeRefineFlags) Flags )


description: true if flags permit flip

code: static bool CanFlip ( const [EEdgeRefineFlags](API\Plugins\DynamicMesh\UE__Geometry__EEdgeRefineFlags) Flags )


description: true if edge can be flipped

code: bool CanFlip() const


description: true if flags permit split

code: static bool CanSplit ( const [EEdgeRefineFlags](API\Plugins\DynamicMesh\UE__Geometry__EEdgeRefineFlags) Flags )


description: true if edge can be split

code: bool CanSplit() const


description: true if edge is unconstrained

code: bool IsUnconstrained() const


description: a fully constrained edge constraint


description: true if edge cannot be modified at all

code: bool NoModifications() const


description: a no-flip edge constraint


description: true if flags permit no edge modification

code: static bool NoModifications ( const [EEdgeRefineFlags](API\Plugins\DynamicMesh\UE__Geometry__EEdgeRefineFlags) Flags )


description: an unconstrained edge constraint (ie not constrained at all)


description: a splits-only edge constraint


code: FEdgeConstraint ( [EEdgeRefineFlags](API\Plugins\DynamicMesh\UE__Geometry__EEdgeRefineFlags) ConstraintFlags )


code: FEdgeConstraint ( [EEdgeRefineFlags](API\Plugins\DynamicMesh\UE__Geometry__EEdgeRefineFlags) ConstraintFlags, [IProjectionTarget](API\Runtime\GeometryCore\Spatial\IProjectionTarget) * TargetIn )


description: Add all the vertices of the given GroupID to the Vertices set

code: void CollectGroupVertices ( int GroupID, [TSet](API\Runtime\Core\Containers\TSet)< int > & Vertices ) const


className: FEdgeConstraint

description: FEdgeConstraintis a constraint on a triangle mesh edge

code: struct FEdgeConstraint

RefineFlags

type: EEdgeRefineFlag...

description: Constraint flags on this edge

Target

type: IProjectionTarg...

description: Edge is associated with this projection target.

TrackingSetID

type: int

description: This ID is not a constraint, but can be used to find descendants of a constrained input edge after splits


description: Return false if we had a problem finding group boundaries

code: bool ExtractGroupEdges ( [FGroup](API\Plugins\DynamicMesh\FGroupTopology\FGroup) & Group )


description: Add all the group boundary vertices of the given GroupID to the Vertices set

code: void CollectGroupBoundaryVertices ( int GroupID, [TSet](API\Runtime\Core\Containers\TSet)< int > & Vertices ) const


className: FGroup

description: FGroupis a set of connected triangles with the same GroupID

code: struct FGroup

Boundaries

type: TArray<FGroupB...

description: List of boundaries of this group (may be empty, eg on a closed component with only one group)

GroupID

description: GroupID for this group

NeighbourGroupIDs

type: TArray< int >

description: List of groups that are adjacent to this group

Triangles

description: List of triangles forming this group


className: FCorner

description: FCorneris a "corner" in the group topology, IE a vertex where 3+ groups meet.

code: struct FCorner

NeighbourGroupIDs

description: List of IDs of groups connected to this Corner

VertexID

description: Mesh Vertex ID


description: true if any vertex in the Span is in the Vertices set

code: bool IsConnectedToVertices &40; const TSet< int > & Vertices &41; const


className: FGroupBoundary

description: A Group is bounded by closed loops ofFGroupEdgeelements. AFGroupBoundaryis one such loop.

code: struct FGroupBoundary

bIsOnBoundary

description: True if one or more edges in GroupEdges is on the mesh boundary

GroupEdges

description: Ordered list of edges forming this boundary

NeighbourGroupIDs

description: List of IDs of groups on the "other side" of this boundary (this GroupBoundary is owned by a particularFGroup)


description: the member of .Groups that is not GroupID

code: int OtherGroupID &40; int GroupID &41; const


className: FGroupEdge

description: FGroupEdgeinstances aresharedbetween the two FGroups on either side, viaFGroupBoundary.

code: struct FGroupEdge

EndpointCorners

description: Indexof corners at either end of span, if they exist, otherwise both InvalidID

Groups

description: Groups adjoinging this edge, sorted by increasing value if both present, otherwise the second element may be InvalidID (if boundary edge).

Span

type: FEdgeSpan

description: Edge span for this edge


description: Add all the Corners connected to the given Corner to the EdgesOut list. This is somewhat expensive as there is no connection from Corners to Corners, must iterate over adjacent faces/edges

code: void FindCornerNbrCorners ( int CornerID, [TArray](API\Runtime\Core\Containers\TArray)< int > & CornersOut ) const


description: Add all the Edges connected to the given Corner to the EdgesOut list. This is somewhat expensive as there is no connection from Corners to Edges, must iterate over adjacent faces

code: void FindCornerNbrEdges ( int CornerID, [TArray](API\Runtime\Core\Containers\TArray)< int > & EdgesOut ) const


description: Add all the groups connected to the given Corner to the GroupsOut list

code: void FindCornerNbrGroups ( int CornerID, [TArray](API\Runtime\Core\Containers\TArray)< int > & GroupsOut ) const


description: Add all the groups connected to the given Corners to the GroupsOut list

code: void FindCornerNbrGroups ( const [TArray](API\Runtime\Core\Containers\TArray)< int > & CornerIDs, [TArray](API\Runtime\Core\Containers\TArray)< int > & GroupsOut ) const


description: Add the groups connected to all the GroupEdgeIDs to the GroupsOut list. This is not the either-side pair, but the set of groups on the one-ring of each connected corner.

code: void FindEdgeNbrGroups ( const [TArray](API\Runtime\Core\Containers\TArray)< int > & GroupEdgeIDs, [TArray](API\Runtime\Core\Containers\TArray)< int > & GroupsOut ) const


description: Add the edges connected to the given GroupEdgeID to the EdgesOut list. This is somewhat expensive.

code: void FindEdgeNbrEdges ( int GroupEdgeID, [TArray](API\Runtime\Core\Containers\TArray)< int > & EdgesOut ) const


description: Add the groups connected to the given GroupEdgeID to the GroupsOut list. This is not the either-side pair, but the set of groups on the one-ring of each connected corner.

code: void FindEdgeNbrGroups ( int GroupEdgeID, [TArray](API\Runtime\Core\Containers\TArray)< int > & GroupsOut ) const


description: Deprecated* Group edges cannot be uniquely identified by a group pair.

code: int FindExistingGroupEdge ( int GroupID, int OtherGroupID, int FirstVertexID, int SecondVertexID )


description: theFGroupfor the given GroupID, or nullptr if not found

code: const [FGroup](API\Plugins\DynamicMesh\FGroupTopology\FGroup) * FindGroupByID ( int GroupID ) const


description: the ID of theFGroupEdgethat contains the given Mesh Edge ID

code: int FindGroupEdgeID ( [FMeshTriEdgeID](API\Runtime\GeometryCore\DynamicMesh\FMeshTriEdgeID) FMeshTriEdgeID ) const


code: int FindGroupEdgeID ( int MeshEdgeID ) const


description: Add all the groups connected to the given Mesh Vertex to the GroupsOut list

code: void FindVertexNbrGroups ( int VertexID, [TArray](API\Runtime\Core\Containers\TArray)< int > & GroupsOut ) const


description: Add all the groups connected to the given Mesh Vertices to the GroupsOut list

code: void FindVertexNbrGroups ( const [TArray](API\Runtime\Core\Containers\TArray)< int > & VertexIDs, [TArray](API\Runtime\Core\Containers\TArray)< int > & GroupsOut ) const


description: Call EdgeFunc for each boundary edge of the given Group (no order defined). Templated so it works with both lambdas or TFunctions. Defined here to avoid dll explicit instantiation woes.

code: template<typename FuncTakingFGroupEdgeAndInt> void ForGroupEdges ( int GroupID, const FuncTakingFGroupEdgeAndInt & EdgeFunc ) const


description: Call EdgeFunc for each boundary edge of each of the given Groups (no order defined). Templated so that it can be used with either sets (such as selections) or lists, and works with both lambdas or TFunctions. Defined here to avoid dll explicit instantiation woes.

code: template<typename IntIterableContainerType, typename FuncTakingFGroupEdgeAndInt> void ForGroupSetEdges ( const IntIterableContainerType & GroupIDs, const FuncTakingFGroupEdgeAndInt & EdgeFunc ) const


description: Generates group edges and boundary structs for given group. Returns false if failed to find group boundaries.

code: bool GenerateBoundaryAndGroupEdges ( [FGroup](API\Plugins\DynamicMesh\FGroupTopology\FGroup) & Group, [TMap](API\Runtime\Core\Containers\TMap)< int32, int32 > & GroupEdgeMinEidToGroupEdgeID, [TBitArray](API\Runtime\Core\Containers\TBitArray)<> & VertCheckedForCorner )


code: void GetAllVertexGroups ( int32 VertexID, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & GroupsOut ) const


description: the Group ID for a given Vertex ID, or InvalidID if vertex is not a group corner

code: int32 GetCornerIDFromVertexID ( int32 VertexID ) const


description: the mesh vertex ID for the given Corner ID

code: int GetCornerVertexID ( int CornerID ) const


description: Set of vertex ID's that are currently considered corners despite not originally having 3 or more attached group edges (due to the effects of ShouldAddExtraCornerAtVert or RebuildTopologyWithSpecificExtraCorners).

code: const [TSet](API\Runtime\Core\Containers\TSet)< int32 > & GetCurrentExtraCornerVids() const


description: arc length of edge, and optionally accumulated arclength distances for each edge vertex

code: double GetEdgeArcLength ( int32 GroupEdgeID, [TArray](API\Runtime\Core\Containers\TArray)< double > * PerVertexLengthsOut ) const


description: the list of edges of aFGroupEdgeidentified by the GroupEdgeID

code: const [TArray](API\Runtime\Core\Containers\TArray)< int > & GetGroupEdgeEdges ( int GroupEdgeID ) const


description:
Calculate tangent of group edge, as direction from start to end endpoints
false if edge is degenerate or start == end

code: bool GetGroupEdgeTangent ( int GroupEdgeID, FVector3d & TangentOut ) const


description: the list of triangles in the given GroupID, or empty list if not found

code: const [TArray](API\Runtime\Core\Containers\TArray)< int > & GetGroupFaces ( int GroupID ) const


description: a 3D frame for the given group. Based on centroid of triangle centroids, so does not necessarily lie on group surface.

code: [FFrame3d](API\Runtime\GeometryCore\FFrame3d_1) GetGroupFrame ( int32 GroupID ) const


description: the list of vertices of aFGroupEdgeidentified by the GroupEdgeID

code: const [TArray](API\Runtime\Core\Containers\TArray)< int > & GetGroupEdgeVertices ( int GroupEdgeID ) const


description:
Adjacency of Per-Triangle integers are what define the triangle groups. Override this function to provide an alternate group definition.
group id integer for given TriangleID

code: virtual int GetGroupID ( int TriangleID ) const


description: the list of neighbour GroupIDs for the given GroupID, or empty list if not found

code: const [TArray](API\Runtime\Core\Containers\TArray)< int > & GetGroupNbrGroups ( int GroupID ) const


code: const [TArray](API\Runtime\Core\Containers\TArray)< int > & GetGroupTriangles ( int GroupID ) const


code: const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) * GetMesh() const


description: Get the set of selected triangles for a given GroupTopologySelection

code: void GetSelectedTriangles ( const [FGroupTopologySelection](API\Plugins\DynamicMesh\FGroupTopologySelection) & Selection, [TArray](API\Runtime\Core\Containers\TArray)< int32 > & Triangles ) const


description: A Bounding Box for the vertices of the current selection, with TransformFunc applied

code: [FAxisAlignedBox3d](API\Runtime\GeometryCore\FAxisAlignedBox3d) GetSelectionBounds ( const [FGroupTopologySelection](API\Plugins\DynamicMesh\FGroupTopologySelection) & Selection, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< FVector3d(const FVector3d &)> TransformFunc ) const


description: a 3D frame for the given selection

code: [FFrame3d](API\Runtime\GeometryCore\FFrame3d_1) GetSelectionFrame ( const [FGroupTopologySelection](API\Plugins\DynamicMesh\FGroupTopologySelection) & Selection, [FFrame3d](API\Runtime\GeometryCore\FFrame3d_1) * InitialLocalFrame ) const


description: true if theFGroupEdgeidentified by the GroupEdgeID is on the mesh boundary

code: bool IsBoundaryEdge ( int32 GroupEdgeID ) const


description: true if given mesh vertex should be a Corner vertex. This looks at the actual mesh- it doesn't use the topology structures.

code: virtual bool IsCornerVertex ( int VertexID ) const


description: Helper function for use with ShouldAddExtraCornerAtVert. Checks that the dot product of the two mesh edge unit vectors starting from shared vertex is greater than or equal to the given threshold. Assumes that SharedVid actually is shared by the two edges, and returns false if either edge is degenerate.

code: static bool IsEdgeAngleSharp ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) * Mesh, int32 SharedVid, const [FIndex2i](API\Runtime\GeometryCore\FIndex2i) & AttachedGroupEdgeEids, double DotThreshold )


description: true if the mesh edge identified byFMeshTriEdgeIDis a group boundary edge

code: bool IsGroupEdge ( [FMeshTriEdgeID](API\Runtime\GeometryCore\DynamicMesh\FMeshTriEdgeID) TriEdgeID, bool bIncludeMeshBoundary ) const


description: true if group edge is a "simple" edge, meaning it only has one mesh edge

code: bool IsSimpleGroupEdge ( int32 GroupEdgeID ) const


description: true if theFGroupEdgeidentified by the GroupEdgeID is an isolated loop (ie not connected to any other edges)

code: bool IsIsolatedLoop ( int32 GroupEdgeID ) const


code: [FIndex2i](API\Runtime\GeometryCore\FIndex2i) MakeEdgeGroupsPair ( int MeshEdgeID ) const


code: [FIndex2i](API\Runtime\GeometryCore\FIndex2i) MakeEdgeGroupsPair ( int Group1, int Group2 ) const


description: Deprecated* Use MakeEdgeGroupsPair instead. The returned pair cannot uniquely identify a group edge.

code: [FIndex2i](API\Runtime\GeometryCore\FIndex2i) MakeEdgeID ( int MeshEdgeID ) const


code: [FIndex2i](API\Runtime\GeometryCore\FIndex2i) MakeEdgeID ( int Group1, int Group2 ) const


description:
Build the group topology graph.
true on success, false if there was an error

code: virtual bool RebuildTopology()


code: [FGroupTopology](API\Plugins\DynamicMesh\FGroupTopology) & operator= ( const [FGroupTopology](API\Plugins\DynamicMesh\FGroupTopology) & )


description: Keeps the structures of topology in place but points the mesh pointers to a new cloned mesh. If the given mesh is not cloned, the topology will no longer be consistent.

code: void RetargetOnClonedMesh ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) * Mesh )


description: Rebuilds the topology graph while ignoring ShouldAddExtraCornerAtVert and only determining whether an extra corner should be forced by seeing whether the vertex is in the provided set. This is used to rebuild the topology with a particular group of extra corners during client undo/redo operations where the behavior of ShouldAddExtraCornerAtVert may have changed in the interim.

code: virtual bool RebuildTopologyWithSpecificExtraCorners ( const [TSet](API\Runtime\Core\Containers\TSet)< int32 > & ExtraCornerVids )


description: Return true if the given vertex should be a corner based on the number of adjoining group edges or based on ShouldAddExtraCornerAtVert, if provided.

code: virtual bool ShouldVertBeCorner ( int VertexID, bool * bIsExtraCornerOut ) const


code: FGroupTopology ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) * Mesh, bool bAutoBuild )


code: FGroupTopology ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) * Mesh, const [FDynamicMeshPolygroupAttribute](API\Runtime\GeometryCore\DynamicMesh\FDynamicMeshPolygroupAttribute) * GroupLayer, bool bAutoBuild )


className: FGroupTopology

description: Various query functions are provided to allow group topology to be interrogated. Note that when functions refer to "CornerID", and "GroupEdgeID", these are simply indices into the internal Corners and Edges arrays. However references to "GroupID" refer to the actual group IDs in FDynamicMesh (not an index into Groups).

code: class FGroupTopology

Corners

type: TArray<FCorner...

description: List of Corners in the topology graph (ie these are the nodes/vertices of the graph)

CurrentExtraCornerVids

type: TSet< int32 >

Edges

type: TArray<FGroupE...

description: List of Edges in the topology graph (each edge connects two corners/nodes)

GroupLayer

type: constFDynamicM...

Groups

type: TArray<FGroup...

description: List of Groups in the topology graph (ie faces)

ShouldAddExtraCornerAtVert

type: TFunction< bool...

description: Optional function that will add extra corners (in addition to the ones that are always placed at junctures of three or more group edges) during RebuildTopology whenever the function returns true for a vertex that is part of a group edge.

VertexIDToCornerIDMap

type: TMap< int32, in...


code: void Append ( const [FGroupTopologySelection](API\Plugins\DynamicMesh\FGroupTopologySelection) & Selection )


description: Returns true if this selection contains every element in the passed in selection

code: bool Contains ( const [FGroupTopologySelection](API\Plugins\DynamicMesh\FGroupTopologySelection) & Selection ) const


code: int32 GetASelectedCornerID() const


code: int32 GetASelectedEdgeID() const


description: These are helper methods to get out a value when you know you only have one, or you don't care which one of the existing ones you grab. They only exist becauseTSetdoesn't have a clean way to grab one arbitrary element besides *TSet::TConstIterator(MySet). The hope is that these are slightly cleaner.

code: int32 GetASelectedGroupID() const


code: FGroupTopology ( const [FGroupTopology](API\Plugins\DynamicMesh\FGroupTopology) & )


description: Defined here instead of the class declaration because it requiresFGroupTopologyto be defined.

code: bool IsSelectedTriangle ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) * Mesh, const [FGroupTopology](API\Plugins\DynamicMesh\FGroupTopology) * Topology, int32 TriangleID ) const


code: bool operator== ( const [FGroupTopologySelection](API\Plugins\DynamicMesh\FGroupTopologySelection) & Selection ) const


code: bool operator!= ( const [FGroupTopologySelection](API\Plugins\DynamicMesh\FGroupTopologySelection) & Selection ) const


code: void Remove ( const [FGroupTopologySelection](API\Plugins\DynamicMesh\FGroupTopologySelection) & Selection )


code: void Toggle ( const [FGroupTopologySelection](API\Plugins\DynamicMesh\FGroupTopologySelection) & Selection )


className: FGroupTopologySelection

description: FGroupTopologySelectionrepresents a set of selected elements of aFGroupTopology

code: struct FGroupTopologySelection


description: DO NOT USE DIRECTLY STL-like iterators to enable ranged-based for loop support

code: auto begin()


className: FGroupInfo

code: struct FGroupInfo

Bounds

type: FAxisAlignedBox...

TriangleIDs

type: TArray< int32 >


description: Update the GroupInfo array by finding group-connected components. Note that this may result in multiple GroupInfo items with the same GroupID, if they are not connected-components. Computing connected components is somewhat expensive. In addition, for each component, if it is more than 2 triangles it will be "eroded" down a single triangle to determine the group "center", also somewhat expensive. This step can be computed in parallel if bParallel is true.

code: void UpdateGroupInfo_ConnectedComponents ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & SourceMesh, const [FPolygroupSet](API\Plugins\DynamicMesh\Polygroups\FPolygroupSet) & GroupSet, bool bParallel )


className: FGroupVisualizationCache

description: FGroupVisualizationCacheis intended to be used as a cache for per-group information that would be used to visualize PolyGroups, in particular drawing the Polygroup ID for each group.

code: class FGroupVisualizationCache

bStorePerGroupTriangleIDs

type: bool

description: If enabled, eachFGroupInfokeeps track of the TriangleIDs that belong to it. Can have significant memory overhead.

GroupInfo

type: TArray<FGroupI...

description: Computed Per-Group Info, for each group found during the Update functions below


description: position of Point projected onto the target

code: virtual FVector3d Project ( const FVector3d & Point, int Identifier )


className: FMeshConstraintCurve

code: class FMeshConstraintCurve : public [UE::Geometry::TPolyline3< double >](API\Runtime\GeometryCore\TPolyline3), public [UE::Geometry::IProjectionTarget](API\Runtime\GeometryCore\Spatial\IProjectionTarget)


description: an unused Fixed Set ID

code: int AllocateSetID()


description: Clear the constraint on the given EdgeID

code: void ClearEdgeConstraint ( int EdgeID )


description: Clear the constraint on the given VertexID

code: void ClearVertexConstraint ( int VertexID )


description: Find all constraint edges for the given SetID, and return via FoundListOut

code: void FindConstrainedEdgesBySetID ( int SetID, [TArray](API\Runtime\Core\Containers\TArray)< int > & FoundListOut ) const


description: EdgeConstraint for give EdgeID, may be Unconstrained

code: [FEdgeConstraint](API\Plugins\DynamicMesh\FEdgeConstraint) GetEdgeConstraint ( int EdgeID ) const


description: true if EdgeID is constrained and ConstraintOut is filled

code: bool GetEdgeConstraint ( int EdgeID, [FEdgeConstraint](API\Plugins\DynamicMesh\FEdgeConstraint) & ConstraintOut ) const


description: map of active edge constraints

code: const [TMap](API\Runtime\Core\Containers\TMap)< int, [FEdgeConstraint](API\Plugins\DynamicMesh\FEdgeConstraint) > & GetEdgeConstraints() const


description: VertexConstraint for give VertexID, may be Unconstrained

code: [FVertexConstraint](API\Plugins\DynamicMesh\FVertexConstraint) GetVertexConstraint ( int VertexID ) const


description: true if VetexID is constrained and ConstraintOut is filled

code: bool GetVertexConstraint ( int VertexID, [FVertexConstraint](API\Plugins\DynamicMesh\FVertexConstraint) & ConstraintOut ) const


description: map of active vertex constraints

code: const [TMap](API\Runtime\Core\Containers\TMap)< int, [FVertexConstraint](API\Plugins\DynamicMesh\FVertexConstraint) > & GetVertexConstraints() const


description: true if any edges or vertices are constrained

code: bool HasConstraints() const


description: true if given VertexID has active constraint

code: bool HasVertexConstraint ( int VertexID ) const


description: true if given EdgeID has active constraint

code: bool HasEdgeConstraint ( int EdgeID ) const


description: Set the constraint on the given EdgeID

code: void SetOrUpdateEdgeConstraint ( int EdgeID, const [FEdgeConstraint](API\Plugins\DynamicMesh\FEdgeConstraint) & ec )


code: void SetOrCombineVertexConstraint ( int VertexID, const [FVertexConstraint](API\Plugins\DynamicMesh\FVertexConstraint) & vc )


description: Set the constraint on the given VertexID

code: void SetOrUpdateVertexConstraint ( int VertexID, const [FVertexConstraint](API\Plugins\DynamicMesh\FVertexConstraint) & vc )


description: Constrain all attribute seams for all overlays of a mesh and different types of boundaries on the mesh

code: static void ConstrainAllBoundariesAndSeams ( [FMeshConstraints](API\Plugins\DynamicMesh\FMeshConstraints) & Constraints, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, [EEdgeRefineFlags](API\Plugins\DynamicMesh\UE__Geometry__EEdgeRefineFlags) MeshBoundaryConstraint, [EEdgeRefineFlags](API\Plugins\DynamicMesh\UE__Geometry__EEdgeRefineFlags) GroupBoundaryConstraint, [EEdgeRefineFlags](API\Plugins\DynamicMesh\UE__Geometry__EEdgeRefineFlags) MaterialBoundaryConstraint, bool bAllowSeamSplits, bool bAllowSeamSmoothing, bool bAllowSeamCollpase, bool bParallel )


className: FMeshConstraints

description: FMeshConstraintsis a set of Edge and Vertex constraints for a Triangle Mesh

code: class FMeshConstraints

Edges

type: TMap< int,FEdg...

description: Map of mesh edge IDs to active EdgeConstraints

FixedSetIDCounter

description: Internal counter used to allocate new FixedSetIDs

ProjectionData

type: FConstraintProj...

description: Additional data for constraint curve projection

Vertices

type: TMap< int,FVer...

description: Map of mesh vertex IDs to active VertexConstraints


description: Constrain all attribute seams for all overlays of a mesh

code: static void ConstrainAllSeams ( [FMeshConstraints](API\Plugins\DynamicMesh\FMeshConstraints) & Constraints, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, bool bAllowSplits, bool bAllowSmoothing, bool bParallel )


description:
Constrain all attribute seams for all overlays of a mesh and different types of boundaries on the mesh
false if no constraint is needed for this edge

code: static bool ConstrainEdgeBoundariesAndSeams ( const int EdgeID, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, const [EEdgeRefineFlags](API\Plugins\DynamicMesh\UE__Geometry__EEdgeRefineFlags) MeshBoundaryConstraint, const [EEdgeRefineFlags](API\Plugins\DynamicMesh\UE__Geometry__EEdgeRefineFlags) GroupBoundaryConstraint, const [EEdgeRefineFlags](API\Plugins\DynamicMesh\UE__Geometry__EEdgeRefineFlags) MaterialBoundaryConstraint, const [EEdgeRefineFlags](API\Plugins\DynamicMesh\UE__Geometry__EEdgeRefineFlags) SeamEdgeConstraint, const bool bAllowSeamSmoothing, [FEdgeConstraint](API\Plugins\DynamicMesh\FEdgeConstraint) & EdgeConstraint, [FVertexConstraint](API\Plugins\DynamicMesh\FVertexConstraint) & VertexConstraintA, [FVertexConstraint](API\Plugins\DynamicMesh\FVertexConstraint) & VertexConstraintB )


description: Constrain attribute seams of the given overlay

code: template<typename RealType, int ElementSize> static void ConstrainSeams ( [FMeshConstraints](API\Plugins\DynamicMesh\FMeshConstraints) & Constraints, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, const [TDynamicMeshOverlay](API\Runtime\GeometryCore\DynamicMesh\TDynamicMeshOverlay)< RealType, ElementSize > & Overlay )


description: Constrain each edge in the EdgeROI set that is incident on exactly one triangle in the TriangleROI set

code: static void ConstrainROIBoundariesInEdgeROI ( [FMeshConstraints](API\Plugins\DynamicMesh\FMeshConstraints) & Constraints, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, const [TSet](API\Runtime\Core\Containers\TSet)< int > & EdgeROI, const [TSet](API\Runtime\Core\Containers\TSet)< int > & TriangleROI, bool bAllowSplits, bool bAllowSmoothing )


className: EBoundaryType

code: enum EBoundaryType { Mesh = 0, Group = 1, MaterialID = 2, }


description: Constrain all attribute seams for all overlays of a mesh, for edges in the edge array. This includes edges in s * EdgeROI that are seams, as well as vertices incident to edges in EdgeROI that are on seams.

code: static void ConstrainSeamsInEdgeROI ( [FMeshConstraints](API\Plugins\DynamicMesh\FMeshConstraints) & Constraints, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, const [TArray](API\Runtime\Core\Containers\TArray)< int > & EdgeROI, bool bAllowSplits, bool bAllowSmoothing, bool bParallel )


description: For all edges, disable flip/split/collapse. For all vertices, pin in current position.

code: template<typename EnumerableType> static void FullyConstrainEdges ( [FMeshConstraints](API\Plugins\DynamicMesh\FMeshConstraints) & Constraints, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, EnumerableType Enumerable )


code: template<typename iter> static void FullyConstrainEdges ( [FMeshConstraints](API\Plugins\DynamicMesh\FMeshConstraints) & Constraints, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, iter BeginEdges, iter EndEdges )


description: Create polycurve projection targets at group boundaries. Vertices on multiple boundaries are fixed, as well as vertices at boundary "corners" (where the angle formed between adjacent boundary edges is above a given threshold.)

code: static void SetBoundaryConstraintsWithProjection ( [FMeshConstraints](API\Plugins\DynamicMesh\FMeshConstraints) & Constraints, const [EBoundaryType](API\Plugins\DynamicMesh\FMeshConstraintsUtil\EBoundaryType) BoundaryToConstrain, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, double CornerAngleThreshold )


className: FMeshConstraintsUtil

description: No constructors are accessible with public or protected access.

code: class FMeshConstraintsUtil


description: Find connected simple paths made up of edges in the input Edges structure.

code: bool Compute()


code: FMeshPaths ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) * Mesh, const [TSet](API\Runtime\Core\Containers\TSet)< int > & Edges )


className: FMeshPaths

description: "dead ends" or "intersections" of paths.)

code: class FMeshPaths

Edges

type: constTSet< int...

Mesh

description: Inputs.

Spans

type: TArray<FEdgeSp...

description: Outputs.


description: Projection of Point onto this target

code: virtual FVector3d Project ( const FVector3d & Point, int Identifier )


description: Projection of Point onto this target, and set ProjectNormalOut to the triangle normal at the returned point (notinterpolated vertex normal)

code: virtual FVector3d Project ( const FVector3d & Point, FVector3d & ProjectNormalOut, int Identifier )


code: FMeshProjectionTarget ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) * MeshIn, [FDynamicMeshAABBTree3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMeshAABBTree3) * SpatialIn )


code: virtual ~FMeshProjectionTarget()


className: FMeshProjectionTarget

description: FMeshProjectionTargetprovides anIProjectionTargetinterface to a FDynamicMesh + FDynamicMeshAABBTree3 Use to project points to mesh surface.

code: class FMeshProjectionTarget : public [UE::Geometry::IOrientedProjectionTarget](API\Runtime\GeometryCore\Spatial\IOrientedProjectionTarget)

Mesh

description: The mesh to project onto

Spatial

type: FDynamicMeshAAB...

description: An AABBTree for Mesh


description:
Figure out if we can collapse edge eid=[a,b] under current constraint set. First we resolve vertex constraints usingCanCollapseVertex(). However this does not catch some topological cases at the edge-constraint level, which which we will only be able to detect once we know if we are losing a or b. See comments onCanCollapseVertex()for what collapse_to is for.
Figure out if we can collapse edge eid=[a,b] under current constraint set. First we resolve vertex constraints usingCanCollapseVertex(). However this does not catch some topological cases at the edge-constraint level, which which we will only be able to detect once we know if we are losing a or b. See comments onCanCollapseVertex()for what collapse_to is for.

code: bool CanCollapseEdge ( int eid, int a, int b, int c, int d, int tc, int td, int & collapse_to ) const


description: If this returns true, abort computation.

code: virtual bool Cancelled()


description:
Resolve vertex constraints for collapsing edge eid=[a,b]. Generally we would collapse a to b, and set the new position as 0.5*(v_a+v_b). However if aorb are constrained, then we want to keep that vertex and collapse to its position. This vertex (a or b) will be returned in collapse_to, which is -1 otherwise. If aandb are constrained, then things are complicated (and documented below).
Resolve vertex constraints for collapsing edge eid=[a,b]. Generally we would collapse a to b, and set the new position as 0.5*(v_a+v_b). However if aorb are non-deletable, then we want to keep that vertex. This vertex (a or b) will be returned in collapse_to, which is -1 otherwise. If aandb are non-deletable, then things are complicated (and documented below).

code: bool CanCollapseVertex ( int eid, int a, int b, int & collapse_to ) const


description: Check if edge collapse will create a face-normal flip. Also checks if collapse would violate link condition, since we are iterating over one-ring anyway. This only checks one-ring of vid, so you have to call it twice, with vid and vother reversed, to check both one-rings

code: bool CheckIfCollapseCreatesFlipOrInvalid ( int vid, int vother, const FVector3d & newv, int tc, int td ) const


description: Check if edge flip might create a triangle with small area (either all vertices are close together, or in a sliver configuration)

code: bool CheckIfFlipCreatesTinyTriangle ( int OriginalEdgeVertexA, int OriginalEdgeVertexB, int OppositeEdgeVertexC, int OppositeEdgeVertexD, int OriginalTriangleIndex ) const


description: Check if edge collapse will create a triangle with small area (either all vertices are close together, or in a sliver configuration) This only checks one-ring of vid, so you have to call it twice, with vid and vother reversed, to check both one-rings

code: bool CheckIfCollapseCreatesTinyTriangle ( int vid, int vother, const FVector3d & newv, int tc, int td ) const


description:
Check if edge flip might reverse normal direction. Not entirely clear on how to best implement this test. Currently checking if any normal-pairs are reversed.
Check if edge flip might reverse normal direction. Not entirely clear on how to best implement this test. Currently checking if any normal-pairs are reversed.

code: bool CheckIfFlipInvertsNormals ( int a, int b, int c, int d, int t0 ) const


code: void DebugCheckUVSeamConstraints()


code: void DebugCheckVertexConstraints()


code: virtual void DoDebugChecks ( bool bEndOfPass )


className: ETargetProjectionMode

description: Options for projecting vertices onto target surface

code: enum ETargetProjectionMode { NoProjection = 0, AfterRefinement = 1, Inline = 2, }


className: EVertexControl

code: enum EVertexControl { AllowAll = 0, NoSmooth = 1, NoProject = 2, NoMovement = NoSmooth | NoProject, }


description: Get the current mesh constraints

code: const [TOptional](API\Runtime\Core\IO\TOptional)< [FMeshConstraints](API\Plugins\DynamicMesh\FMeshConstraints) > & GetConstraints()


description: edge-flip dotproduct metric in range [-1,1] measured between two possibly-not-normalized normal directions. if EdgeFlipTolerance is 0, only the sign of the returned value is valid

code: double ComputeEdgeFlipMetric ( const FVector3d & Direction0, const FVector3d & Direction1 ) const


description: edge flip tolerance

code: double GetEdgeFlipTolerance()


description: Get the current mesh we are operating on


description: constraint for given vertex

code: [FVertexConstraint](API\Plugins\DynamicMesh\FVertexConstraint) GetVertexConstraint ( int VertexID )


description: true if vertex has constraint

code: bool GetVertexConstraint ( int VertexID, [FVertexConstraint](API\Plugins\DynamicMesh\FVertexConstraint) & OutConstraint )


description: true if given vertex can't move, or has a projection target

code: bool IsVertexPositionConstrained ( int VertexID )


code: [FMeshRefinerBase](API\Plugins\DynamicMesh\FMeshRefinerBase) & operator= ( const [FMeshRefinerBase](API\Plugins\DynamicMesh\FMeshRefinerBase) & )


code: [FMeshRefinerBase](API\Plugins\DynamicMesh\FMeshRefinerBase) & operator= ( [FMeshRefinerBase](API\Plugins\DynamicMesh\FMeshRefinerBase) && )


description: Get the current Projection Target


description: Testing/debug/profiling stuff

code: void RuntimeDebugCheck ( int EdgeID )


code: virtual void SaveEdgeBeforeModify ( int32 EdgeID )


code: virtual void SaveTriangleBeforeModify ( int32 TriangleID )


description: Set edge flip tolerance. Value is clamped to range [-1,1]

code: void SetEdgeFlipTolerance ( double NewTolerance )


code: virtual void SaveVertexTrianglesBeforeModify ( int32 VertexID )


description: Set external constraints. Note that this object will be updated during computation.

code: void SetExternalConstraints ( [TOptional](API\Runtime\Core\IO\TOptional)< [FMeshConstraints](API\Plugins\DynamicMesh\FMeshConstraints) > ConstraintsIn )


description: Set a Projection Target

code: void SetProjectionTarget ( [IProjectionTarget](API\Runtime\GeometryCore\Spatial\IProjectionTarget) * TargetIn )


description: Mesh Change Tracking support

code: void SetMeshChangeTracker ( [FDynamicMeshChangeTracker](API\Runtime\GeometryCore\DynamicMesh\FDynamicMeshChangeTracker) * Tracker )


code: FMeshRefinerBase ( [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) * MeshIn )


code: FMeshRefinerBase ( const [FMeshRefinerBase](API\Plugins\DynamicMesh\FMeshRefinerBase) & )


code: FMeshRefinerBase ( [FMeshRefinerBase](API\Plugins\DynamicMesh\FMeshRefinerBase) && )


className: FMeshRefinerBase

description: This is a base class that implements common functionality for various triangle mesh resampling strategies (ieFRemesherand FReducer). You probably should not use this class directly.

code: class FMeshRefinerBase

ActiveChangeTracker

type: FDynamicMeshCha...

AllowCollapseFixedVertsWithSameSetID

description: If true, then when two Fixed vertices have the same non-invalid SetID, we treat them as not fixed and allow collapse

Constraints

type: TOptional<FMes...

description: Constraints are used to control how certain edges and vertices can be modified

type: int

description: 0 = no checking, 1 = check constraints each pass, 2 = and check validity each pass, 3 = and check validity after every mesh change (v slow but best for debugging)

DebugEdges

type: TArray< int >

description: This is a debugging aid, will break to debugger if these edges are touched, in debug builds

EdgeFlipTolerance

type: double

description: If normals dot product is less than this, we consider it a normal flip. default = 0

description: Set to true to profile various passes

Mesh

description: Mesh that will be refined

Progress

type: FProgressCancel...

description: Set this to be able to cancel running Remesher/Reducer

ProjectionMode

type: ETargetProjecti...

description: Method to use to project vertices onto target surface. Default is no projection.

ProjTarget

type: IProjectionTarg...

description: Vertices can be projected onto this surface when they are modified

TinyTriangleThreshold

description: Avoid creation of triangles smaller than this value.

VertexControlF

type: TFunction<EVer...

description: This function allows client to specify fine-grained control over what happens to specific vertices.


code: void BuildAll ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh )


className: FVertexCurvature

code: struct FVertexCurvature


code: const [FVertexCurvature](API\Plugins\DynamicMesh\FMeshVertexCurvatureCache\FVertexCurvature) & operator[] ( int32 Index ) const


className: FMeshVertexCurvatureCache

description: FMeshVertexCurvatureCachecalculates and stores various per-vertex Curvature types for a Mesh, as well as some statistics for those values.

code: class FMeshVertexCurvatureCache

Curvatures

type: TArray<FVertex...

GaussianStats

type: FSampleSetStati...


description: Compute cotan-weighted centroid of a vertex one-ring. These weights are numerically unstable if any of the triangles are degenerate. We catch these problems and return input vertex as centroid

code: static FVector3d CotanCentroid ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, int32 VertexIndex )


code: static FVector3d CotanCentroid ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, int32 VertexIndex, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< FVector3d(int32)> VertexPositionFunc )


description: Compute cotan-weighted centroid of a vertex one-ring, with some weight analysis/clamping to avoid vertices getting "stuck" in explicit integration/iterations. If failure is detected, Uniform centroid is returned, which does cause some tangential flow

code: static FVector3d CotanCentroidSafe ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, int32 VertexIndex, double DegenerateTol, bool * bFailedToUniform )


code: static FVector3d CotanCentroidSafe ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, int32 VertexIndex, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< FVector3d(int32)> VertexPositionFunc, double DegenerateTol, bool * bFailedToUniform )


description: Compute cotan-weighted blend for a vertex one-ring, with some weight analysis/clamping to avoid vertices getting "stuck" in explicit integration/iterations. If failure is detected, Uniform centroid is returned, which does cause some tangential flow. Equivalent toCotanCentroidSafe()if the weights are used to blend vertex positions, but can be used to weight other properties.

code: static void CotanWeightsBlendSafe ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, int32 VertexIndex, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< void(int32, double)> BlendingFunc, double DegenerateTol, bool * bFailedToUniform )


description: Compute uniform centroid of a subset of vertex one-ring (eg boundary vertices) These weights are strictly positive and all equal to 1 / valence

code: static FVector3d FilteredUniformCentroid ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, int32 VertexIndex, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< FVector3d(int32)> VertexPositionFunc, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< bool(int32)> VertexFilterFunc )


description: Compute mean-value centroid of a vertex one-ring. These weights are strictly positive.

code: static FVector3d MeanValueCentroid ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, int32 VertexIndex, double WeightClamp )


description: Compute uniform centroid of a vertex one-ring. These weights are strictly positive and all equal to 1 / valence

code: static FVector3d UniformCentroid ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, int32 VertexIndex, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< FVector3d(int32)> VertexPositionFunc )


code: static FVector3d UniformCentroid ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, int32 VertexIndex )


code: static FVector3d MeanValueCentroid ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, int32 VertexIndex, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< FVector3d(int32)> VertexPositionFunc, double WeightClamp )


description: Compute the Mixed Voronoi Area associated with a vertex. Based on Fig 4 from "Discrete Differential-Geometry Operators for Triangulated 2-Manifolds", Meyer et al 2002,

code: static double VoronoiArea ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, int32 VertexIndex )