FormIt C++ API  v23.0.0 (2023.0.0)
FormIt::Dynamo API

Description

Functions

FORMIT_CORE_EXPORT bool FormIt::Dynamo::IsDynamoHistory (size_t history)
 IsDynamoHistory returns true if the given History is a Dynamo created History. More...
 
FORMIT_CORE_EXPORT size_t FormIt::Dynamo::GetDynamoHistoryInPath (const WSM::GroupInstancePath &path)
 If a dynamo group exists in the given path, returns the corresponding history. More...
 
FORMIT_CORE_EXPORT size_t FormIt::Dynamo::GetDynamoHistoryInCurrentContext ()
 First the current selection is looked at. More...
 
FORMIT_CORE_EXPORT size_t FormIt::Dynamo::GetSelectedDynamoHistory ()
 Get the selected Dynamo History. More...
 
FORMIT_CORE_EXPORT json FormIt::Dynamo::GetDynamoFile (size_t history)
 Get the Dynamo script for the given History. More...
 
FORMIT_CORE_EXPORT::string FormIt::Dynamo::GetUuid (size_t history)
 Get the Uuid for the given History. More...
 
FORMIT_CORE_EXPORT::string FormIt::Dynamo::GetDynamoGroupName (size_t history)
 Get the Dynamo Group name for the given History. More...
 
FORMIT_CORE_EXPORT bool FormIt::Dynamo::SetDynamoFile (size_t nHistoryId, 1::string const &script, 1::string const &guid)
 Set the Dynamo script for the given History. More...
 
FORMIT_CORE_EXPORT::pair< bool, 1::string > FormIt::Dynamo::WriteDYNFile (size_t history, 1::string const &path, json const &DYNFile={})
 Write the DYN for the given History to the given path. More...
 
FORMIT_CORE_EXPORT bool FormIt::Dynamo::HasFormItBakeToFormItNode (1::string const &DYNFileName)
 HasFormItBakeToFormItNode returns true if the given DYNFileName has a BakeToFormItNode. More...
 
FORMIT_CORE_EXPORT bool FormIt::Dynamo::HasFormItSelectionNodes (1::string const &DYNFileName, bool bIncludeAnySelectionNodes)
 HasFormItSelectionNodes returns true if the given DYNFileName has Selection Node(s). More...
 
FORMIT_CORE_EXPORT TDynamoNodes FormIt::Dynamo::GetInputNodes (size_t history, bool bIsSetAsInput)
 Get all the IsSetAsInput == true nodes and sort by vertical placement. More...
 
FORMIT_CORE_EXPORT json FormIt::Dynamo::GetInputNode (size_t historyId, 1::string const &guid)
 GetInputNode returns the node (json) for the given guid in the DYN. More...
 
FORMIT_CORE_EXPORT TDynamoNodes FormIt::Dynamo::GetBakeNodes (1::string const &DYNFileName)
 Get all the bake nodes from the DYN file. More...
 
FORMIT_CORE_EXPORT bool FormIt::Dynamo::GetBakeNodeToHistoryMap (size_t nHistoryId, FormIt::Dynamo::TBakeNodeToHistoryMap &bakeNodeToHistoryMap)
 Get the bake nodes to Historys map for the given History. More...
 
FORMIT_CORE_EXPORT void FormIt::Dynamo::SetGroupBakeNodeID (size_t nHistoryId, size_t nGroupID, 1::string bakeNodeID)
 Mark a Group as a Bake Node Group. More...
 
FORMIT_CORE_EXPORT bool FormIt::Dynamo::GetGroupBakeNodeID (size_t nHistoryId, size_t nGroupID, 1::string &bakeNodeID)
 Get the Group Bake Node ID. More...
 
FORMIT_CORE_EXPORT void FormIt::Dynamo::RemoveDynamoAttributeAfterUngroup (size_t nHistoryId)
 Remove the history level dynamo attribute "FormIt::DynamoObject" after an ungroup action happened, and that attribute ended up in the history. More...
 

Function Documentation

FORMIT_CORE_EXPORT TDynamoNodes FormIt::Dynamo::GetBakeNodes ( 1::string const &  DYNFileName)

Get all the bake nodes from the DYN file.

Parameters
[in]DYNFileName
FORMIT_CORE_EXPORT bool FormIt::Dynamo::GetBakeNodeToHistoryMap ( size_t  nHistoryId,
FormIt::Dynamo::TBakeNodeToHistoryMap bakeNodeToHistoryMap 
)

Get the bake nodes to Historys map for the given History.

Parameters
[in]nHistoryIdID of the given History
[out]bakeNodeToHistoryMap
FORMIT_CORE_EXPORT json FormIt::Dynamo::GetDynamoFile ( size_t  history)

Get the Dynamo script for the given History.

Parameters
[in]history
FORMIT_CORE_EXPORT ::string FormIt::Dynamo::GetDynamoGroupName ( size_t  history)

Get the Dynamo Group name for the given History.

Parameters
[in]history
FORMIT_CORE_EXPORT size_t FormIt::Dynamo::GetDynamoHistoryInCurrentContext ( )

First the current selection is looked at.

If there's a selection, the editing context is not looked at. If the current editing history is, or is contained in, a dynamo group, returns the "inner-most" dynamo group history. It also considers the current selection. Returns WSM::INVALID_ID in all other cases.

FORMIT_CORE_EXPORT size_t FormIt::Dynamo::GetDynamoHistoryInPath ( const WSM::GroupInstancePath path)

If a dynamo group exists in the given path, returns the corresponding history.

Returns WSM::INVALID_ID in all other cases.

Parameters
[in]path
FORMIT_CORE_EXPORT bool FormIt::Dynamo::GetGroupBakeNodeID ( size_t  nHistoryId,
size_t  nGroupID,
1::string &  bakeNodeID 
)

Get the Group Bake Node ID.

Returns false if Group is not a Bake Node Group.

Parameters
[in]nHistoryIdID of the given History
[in]nGroupID
[out]bakeNodeID
FORMIT_CORE_EXPORT json FormIt::Dynamo::GetInputNode ( size_t  historyId,
1::string const &  guid 
)

GetInputNode returns the node (json) for the given guid in the DYN.

Parameters
[in]historyId
[in]guid
FORMIT_CORE_EXPORT TDynamoNodes FormIt::Dynamo::GetInputNodes ( size_t  history,
bool  bIsSetAsInput 
)

Get all the IsSetAsInput == true nodes and sort by vertical placement.

Parameters
[in]history
[in]bIsSetAsInput
FORMIT_CORE_EXPORT size_t FormIt::Dynamo::GetSelectedDynamoHistory ( )

Get the selected Dynamo History.

Could return WSM::INVALID_ID

FORMIT_CORE_EXPORT ::string FormIt::Dynamo::GetUuid ( size_t  history)

Get the Uuid for the given History.

If the History is not a Dynamo History, a new Uuid is generated.

Parameters
[in]history
FORMIT_CORE_EXPORT bool FormIt::Dynamo::HasFormItBakeToFormItNode ( 1::string const &  DYNFileName)

HasFormItBakeToFormItNode returns true if the given DYNFileName has a BakeToFormItNode.

Parameters
[in]DYNFileName
FORMIT_CORE_EXPORT bool FormIt::Dynamo::HasFormItSelectionNodes ( 1::string const &  DYNFileName,
bool  bIncludeAnySelectionNodes 
)

HasFormItSelectionNodes returns true if the given DYNFileName has Selection Node(s).

Parameters
[in]DYNFileName
[in]bIncludeAnySelectionNodes
FORMIT_CORE_EXPORT bool FormIt::Dynamo::IsDynamoHistory ( size_t  history)

IsDynamoHistory returns true if the given History is a Dynamo created History.

Parameters
[in]history
FORMIT_CORE_EXPORT void FormIt::Dynamo::RemoveDynamoAttributeAfterUngroup ( size_t  nHistoryId)

Remove the history level dynamo attribute "FormIt::DynamoObject" after an ungroup action happened, and that attribute ended up in the history.

The presence of that attribute is not desired. It will mess up the Properties palette when other groups are edited

Parameters
[in]nHistoryIdID of the given History
FORMIT_CORE_EXPORT bool FormIt::Dynamo::SetDynamoFile ( size_t  nHistoryId,
1::string const &  script,
1::string const &  guid 
)

Set the Dynamo script for the given History.

Returns success

Parameters
[in]nHistoryIdID of the given History
[in]script
[in]guid
FORMIT_CORE_EXPORT void FormIt::Dynamo::SetGroupBakeNodeID ( size_t  nHistoryId,
size_t  nGroupID,
1::string  bakeNodeID 
)

Mark a Group as a Bake Node Group.

Parameters
[in]nHistoryIdID of the given History
[in]nGroupID
[in]bakeNodeID
FORMIT_CORE_EXPORT ::pair<bool, 1::string> FormIt::Dynamo::WriteDYNFile ( size_t  history,
1::string const &  path,
json const &  DYNFile = {} 
)

Write the DYN for the given History to the given path.

The optional DYNFile is for the case when the Dynamo properties sliders generate a new DYN to run. Returns success, filename

Parameters
[in]history
[in]path
[in]DYNFile