Skip to content

Commit

Permalink
Updating accroding to spec: UnsignedMesh, vectorfroamscalar, matrixfr…
Browse files Browse the repository at this point in the history
…omrows, matrixfromcolumns
  • Loading branch information
3dJan committed Nov 10, 2023
1 parent b20da1f commit c7fa73e
Show file tree
Hide file tree
Showing 41 changed files with 4,673 additions and 1,162 deletions.
137 changes: 113 additions & 24 deletions Autogenerated/Bindings/C/lib3mf.h
Original file line number Diff line number Diff line change
Expand Up @@ -3239,6 +3239,28 @@ LIB3MF_DECLSPEC Lib3MFResult lib3mf_composevectornode_getinputz(Lib3MF_ComposeVe
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_composevectornode_getoutputresult(Lib3MF_ComposeVectorNode pComposeVectorNode, Lib3MF_ImplicitPort * pResult);

/*************************************************************************************************************************
Class definition for VectorFromScalarNode
**************************************************************************************************************************/

/**
* Retrieves the input
*
* @param[in] pVectorFromScalarNode - VectorFromScalarNode instance.
* @param[out] pA - the input for the x component
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_vectorfromscalarnode_getinputa(Lib3MF_VectorFromScalarNode pVectorFromScalarNode, Lib3MF_ImplicitPort * pA);

/**
* Retrieves the output
*
* @param[in] pVectorFromScalarNode - VectorFromScalarNode instance.
* @param[out] pResult - the output
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_vectorfromscalarnode_getoutputresult(Lib3MF_VectorFromScalarNode pVectorFromScalarNode, Lib3MF_ImplicitPort * pResult);

/*************************************************************************************************************************
Class definition for DecomposeVectorNode
**************************************************************************************************************************/
Expand Down Expand Up @@ -3437,102 +3459,102 @@ LIB3MF_DECLSPEC Lib3MFResult lib3mf_composematrixnode_getinputm33(Lib3MF_Compose
LIB3MF_DECLSPEC Lib3MFResult lib3mf_composematrixnode_getoutputresult(Lib3MF_ComposeMatrixNode pComposeMatrixNode, Lib3MF_ImplicitPort * pResult);

/*************************************************************************************************************************
Class definition for ComposeMatrixFromRowVectorsNode
Class definition for MatrixFromRowsNode
**************************************************************************************************************************/

/**
* Retrieves the input for the first row
*
* @param[in] pComposeMatrixFromRowVectorsNode - ComposeMatrixFromRowVectorsNode instance.
* @param[in] pMatrixFromRowsNode - MatrixFromRowsNode instance.
* @param[out] pRow0 - the input for the first row
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_composematrixfromrowvectorsnode_getinputa(Lib3MF_ComposeMatrixFromRowVectorsNode pComposeMatrixFromRowVectorsNode, Lib3MF_ImplicitPort * pRow0);
LIB3MF_DECLSPEC Lib3MFResult lib3mf_matrixfromrowsnode_getinputa(Lib3MF_MatrixFromRowsNode pMatrixFromRowsNode, Lib3MF_ImplicitPort * pRow0);

/**
* Retrieves the input for the second row
*
* @param[in] pComposeMatrixFromRowVectorsNode - ComposeMatrixFromRowVectorsNode instance.
* @param[in] pMatrixFromRowsNode - MatrixFromRowsNode instance.
* @param[out] pRow1 - the input for the second row
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_composematrixfromrowvectorsnode_getinputb(Lib3MF_ComposeMatrixFromRowVectorsNode pComposeMatrixFromRowVectorsNode, Lib3MF_ImplicitPort * pRow1);
LIB3MF_DECLSPEC Lib3MFResult lib3mf_matrixfromrowsnode_getinputb(Lib3MF_MatrixFromRowsNode pMatrixFromRowsNode, Lib3MF_ImplicitPort * pRow1);

/**
* Retrieves the input for the third row
*
* @param[in] pComposeMatrixFromRowVectorsNode - ComposeMatrixFromRowVectorsNode instance.
* @param[in] pMatrixFromRowsNode - MatrixFromRowsNode instance.
* @param[out] pRow2 - the input for the third row
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_composematrixfromrowvectorsnode_getinputc(Lib3MF_ComposeMatrixFromRowVectorsNode pComposeMatrixFromRowVectorsNode, Lib3MF_ImplicitPort * pRow2);
LIB3MF_DECLSPEC Lib3MFResult lib3mf_matrixfromrowsnode_getinputc(Lib3MF_MatrixFromRowsNode pMatrixFromRowsNode, Lib3MF_ImplicitPort * pRow2);

/**
* Retrieves the input for the fourth row
*
* @param[in] pComposeMatrixFromRowVectorsNode - ComposeMatrixFromRowVectorsNode instance.
* @param[in] pMatrixFromRowsNode - MatrixFromRowsNode instance.
* @param[out] pRow3 - the input for the fourth row
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_composematrixfromrowvectorsnode_getinputd(Lib3MF_ComposeMatrixFromRowVectorsNode pComposeMatrixFromRowVectorsNode, Lib3MF_ImplicitPort * pRow3);
LIB3MF_DECLSPEC Lib3MFResult lib3mf_matrixfromrowsnode_getinputd(Lib3MF_MatrixFromRowsNode pMatrixFromRowsNode, Lib3MF_ImplicitPort * pRow3);

/**
* Retrieves the output
*
* @param[in] pComposeMatrixFromRowVectorsNode - ComposeMatrixFromRowVectorsNode instance.
* @param[in] pMatrixFromRowsNode - MatrixFromRowsNode instance.
* @param[out] pResult - the output
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_composematrixfromrowvectorsnode_getoutputresult(Lib3MF_ComposeMatrixFromRowVectorsNode pComposeMatrixFromRowVectorsNode, Lib3MF_ImplicitPort * pResult);
LIB3MF_DECLSPEC Lib3MFResult lib3mf_matrixfromrowsnode_getoutputresult(Lib3MF_MatrixFromRowsNode pMatrixFromRowsNode, Lib3MF_ImplicitPort * pResult);

/*************************************************************************************************************************
Class definition for ComposeMatrixFromColumnVectors
Class definition for MatrixFromColumnsNode
**************************************************************************************************************************/

/**
* Retrieves the input for the first column
*
* @param[in] pComposeMatrixFromColumnVectors - ComposeMatrixFromColumnVectors instance.
* @param[in] pMatrixFromColumnsNode - MatrixFromColumnsNode instance.
* @param[out] pColumn0 - the input for the first column
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_composematrixfromcolumnvectors_getinputa(Lib3MF_ComposeMatrixFromColumnVectors pComposeMatrixFromColumnVectors, Lib3MF_ImplicitPort * pColumn0);
LIB3MF_DECLSPEC Lib3MFResult lib3mf_matrixfromcolumnsnode_getinputa(Lib3MF_MatrixFromColumnsNode pMatrixFromColumnsNode, Lib3MF_ImplicitPort * pColumn0);

/**
* Retrieves the input for the second column
*
* @param[in] pComposeMatrixFromColumnVectors - ComposeMatrixFromColumnVectors instance.
* @param[in] pMatrixFromColumnsNode - MatrixFromColumnsNode instance.
* @param[out] pColumn1 - the input for the second column
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_composematrixfromcolumnvectors_getinputb(Lib3MF_ComposeMatrixFromColumnVectors pComposeMatrixFromColumnVectors, Lib3MF_ImplicitPort * pColumn1);
LIB3MF_DECLSPEC Lib3MFResult lib3mf_matrixfromcolumnsnode_getinputb(Lib3MF_MatrixFromColumnsNode pMatrixFromColumnsNode, Lib3MF_ImplicitPort * pColumn1);

/**
* Retrieves the input for the third column
*
* @param[in] pComposeMatrixFromColumnVectors - ComposeMatrixFromColumnVectors instance.
* @param[in] pMatrixFromColumnsNode - MatrixFromColumnsNode instance.
* @param[out] pColumn2 - the input for the third column
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_composematrixfromcolumnvectors_getinputc(Lib3MF_ComposeMatrixFromColumnVectors pComposeMatrixFromColumnVectors, Lib3MF_ImplicitPort * pColumn2);
LIB3MF_DECLSPEC Lib3MFResult lib3mf_matrixfromcolumnsnode_getinputc(Lib3MF_MatrixFromColumnsNode pMatrixFromColumnsNode, Lib3MF_ImplicitPort * pColumn2);

/**
* Retrieves the input for the fourth column
*
* @param[in] pComposeMatrixFromColumnVectors - ComposeMatrixFromColumnVectors instance.
* @param[in] pMatrixFromColumnsNode - MatrixFromColumnsNode instance.
* @param[out] pColumn3 - the input for the fourth column
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_composematrixfromcolumnvectors_getinputd(Lib3MF_ComposeMatrixFromColumnVectors pComposeMatrixFromColumnVectors, Lib3MF_ImplicitPort * pColumn3);
LIB3MF_DECLSPEC Lib3MFResult lib3mf_matrixfromcolumnsnode_getinputd(Lib3MF_MatrixFromColumnsNode pMatrixFromColumnsNode, Lib3MF_ImplicitPort * pColumn3);

/**
* Retrieves the output
*
* @param[in] pComposeMatrixFromColumnVectors - ComposeMatrixFromColumnVectors instance.
* @param[in] pMatrixFromColumnsNode - MatrixFromColumnsNode instance.
* @param[out] pResult - the output
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_composematrixfromcolumnvectors_getoutputresult(Lib3MF_ComposeMatrixFromColumnVectors pComposeMatrixFromColumnVectors, Lib3MF_ImplicitPort * pResult);
LIB3MF_DECLSPEC Lib3MFResult lib3mf_matrixfromcolumnsnode_getoutputresult(Lib3MF_MatrixFromColumnsNode pMatrixFromColumnsNode, Lib3MF_ImplicitPort * pResult);

/*************************************************************************************************************************
Class definition for ConstantNode
Expand Down Expand Up @@ -3658,6 +3680,37 @@ LIB3MF_DECLSPEC Lib3MFResult lib3mf_meshnode_getinputpos(Lib3MF_MeshNode pMeshNo
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_meshnode_getoutputdistance(Lib3MF_MeshNode pMeshNode, Lib3MF_ImplicitPort * pDistance);

/*************************************************************************************************************************
Class definition for UnsignedMeshNode
**************************************************************************************************************************/

/**
* Retrieves the input for the model resource id of the mesh
*
* @param[in] pUnsignedMeshNode - UnsignedMeshNode instance.
* @param[out] pMesh - the input port for the model resource id of the mesh
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_unsignedmeshnode_getinputmesh(Lib3MF_UnsignedMeshNode pUnsignedMeshNode, Lib3MF_ImplicitPort * pMesh);

/**
* Retrieves the input for the position
*
* @param[in] pUnsignedMeshNode - UnsignedMeshNode instance.
* @param[out] pPos - the input port for the position
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_unsignedmeshnode_getinputpos(Lib3MF_UnsignedMeshNode pUnsignedMeshNode, Lib3MF_ImplicitPort * pPos);

/**
* Retrieves the output
*
* @param[in] pUnsignedMeshNode - UnsignedMeshNode instance.
* @param[out] pDistance - the output port for the unsigned distance to the mesh
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_unsignedmeshnode_getoutputdistance(Lib3MF_UnsignedMeshNode pUnsignedMeshNode, Lib3MF_ImplicitPort * pDistance);

/*************************************************************************************************************************
Class definition for FunctionCallNode
**************************************************************************************************************************/
Expand Down Expand Up @@ -4313,6 +4366,18 @@ LIB3MF_DECLSPEC Lib3MFResult lib3mf_implicitfunction_addclampnode(Lib3MF_Implici
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_implicitfunction_addcomposevectornode(Lib3MF_ImplicitFunction pImplicitFunction, const char * pIdentifier, const char * pDisplayName, const char * pTag, Lib3MF_ComposeVectorNode * pNode);

/**
* Add a VectorFromScalar
*
* @param[in] pImplicitFunction - ImplicitFunction instance.
* @param[in] pIdentifier - the identifier of the node
* @param[in] pDisplayName - the display name of the node
* @param[in] pTag - the tag of the node
* @param[out] pNode - the added node
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_implicitfunction_addvectorfromscalarnode(Lib3MF_ImplicitFunction pImplicitFunction, const char * pIdentifier, const char * pDisplayName, const char * pTag, Lib3MF_VectorFromScalarNode * pNode);

/**
* Add a DecomposeVectorNode
*
Expand All @@ -4338,7 +4403,19 @@ LIB3MF_DECLSPEC Lib3MFResult lib3mf_implicitfunction_adddecomposevectornode(Lib3
LIB3MF_DECLSPEC Lib3MFResult lib3mf_implicitfunction_addcomposematrixnode(Lib3MF_ImplicitFunction pImplicitFunction, const char * pIdentifier, const char * pDisplayName, const char * pTag, Lib3MF_ComposeMatrixNode * pNode);

/**
* Add a ComposeMatrixFromRowVectorsNode
* Add a MatrixFromRowsNode
*
* @param[in] pImplicitFunction - ImplicitFunction instance.
* @param[in] pIdentifier - the identifier of the node
* @param[in] pDisplayName - the display name of the node
* @param[in] pTag - the tag of the node
* @param[out] pNode - the added node
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_implicitfunction_addmatrixfromrowsnode(Lib3MF_ImplicitFunction pImplicitFunction, const char * pIdentifier, const char * pDisplayName, const char * pTag, Lib3MF_MatrixFromRowsNode * pNode);

/**
* Add a MatrixFromColumnsNode
*
* @param[in] pImplicitFunction - ImplicitFunction instance.
* @param[in] pIdentifier - the identifier of the node
Expand All @@ -4347,7 +4424,7 @@ LIB3MF_DECLSPEC Lib3MFResult lib3mf_implicitfunction_addcomposematrixnode(Lib3MF
* @param[out] pNode - the added node
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_implicitfunction_addcomposematrixfromrowvectorsnode(Lib3MF_ImplicitFunction pImplicitFunction, const char * pIdentifier, const char * pDisplayName, const char * pTag, Lib3MF_ComposeMatrixFromRowVectorsNode * pNode);
LIB3MF_DECLSPEC Lib3MFResult lib3mf_implicitfunction_addmatrixfromcolumnsnode(Lib3MF_ImplicitFunction pImplicitFunction, const char * pIdentifier, const char * pDisplayName, const char * pTag, Lib3MF_MatrixFromColumnsNode * pNode);

/**
* Add a ConstantNode
Expand Down Expand Up @@ -4397,6 +4474,18 @@ LIB3MF_DECLSPEC Lib3MFResult lib3mf_implicitfunction_addconstmatnode(Lib3MF_Impl
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_implicitfunction_addmeshnode(Lib3MF_ImplicitFunction pImplicitFunction, const char * pIdentifier, const char * pDisplayName, const char * pTag, Lib3MF_MeshNode * pNode);

/**
* Add a UnsignedMeshNode
*
* @param[in] pImplicitFunction - ImplicitFunction instance.
* @param[in] pIdentifier - the identifier of the node
* @param[in] pDisplayName - the display name of the node
* @param[in] pTag - the tag of the node
* @param[out] pNode - the added node
* @return error code or 0 (success)
*/
LIB3MF_DECLSPEC Lib3MFResult lib3mf_implicitfunction_addunsignedmeshnode(Lib3MF_ImplicitFunction pImplicitFunction, const char * pIdentifier, const char * pDisplayName, const char * pTag, Lib3MF_UnsignedMeshNode * pNode);

/**
* Add a FunctionCallNode
*
Expand Down
14 changes: 9 additions & 5 deletions Autogenerated/Bindings/C/lib3mf_types.h
Original file line number Diff line number Diff line change
Expand Up @@ -291,14 +291,16 @@ typedef Lib3MFHandle Lib3MF_PowNode;
typedef Lib3MFHandle Lib3MF_SelectNode;
typedef Lib3MFHandle Lib3MF_ClampNode;
typedef Lib3MFHandle Lib3MF_ComposeVectorNode;
typedef Lib3MFHandle Lib3MF_VectorFromScalarNode;
typedef Lib3MFHandle Lib3MF_DecomposeVectorNode;
typedef Lib3MFHandle Lib3MF_ComposeMatrixNode;
typedef Lib3MFHandle Lib3MF_ComposeMatrixFromRowVectorsNode;
typedef Lib3MFHandle Lib3MF_ComposeMatrixFromColumnVectors;
typedef Lib3MFHandle Lib3MF_MatrixFromRowsNode;
typedef Lib3MFHandle Lib3MF_MatrixFromColumnsNode;
typedef Lib3MFHandle Lib3MF_ConstantNode;
typedef Lib3MFHandle Lib3MF_ConstVecNode;
typedef Lib3MFHandle Lib3MF_ConstMatNode;
typedef Lib3MFHandle Lib3MF_MeshNode;
typedef Lib3MFHandle Lib3MF_UnsignedMeshNode;
typedef Lib3MFHandle Lib3MF_FunctionCallNode;
typedef Lib3MFHandle Lib3MF_NodeIterator;
typedef Lib3MFHandle Lib3MF_Function;
Expand Down Expand Up @@ -454,8 +456,8 @@ typedef enum eLib3MFImplicitNodeType {
eImplicitNodeTypeComposeVector = 8, /** Creates a vector from three scalar values */
eImplicitNodeTypeDecomposeVector = 9, /** Decomposes a vector into three scalar values */
eImplicitNodeTypeComposeMatrix = 10, /** Creates a matrix from nine scalar values */
eImplicitNodeTypeComposeMatrixFromColumnVectors = 11, /** Creates a matrix from three column vector values */
eImplicitNodeTypeComposeMatrixFromRowVectors = 12, /** Creates a matrix from three row vector values */
eImplicitNodeTypeMatrixFromColumns = 11, /** Creates a matrix from three column vector values */
eImplicitNodeTypeMatrixFromRows = 12, /** Creates a matrix from three row vector values */
eImplicitNodeTypeDot = 13, /** Calculates the dot product of two vector values */
eImplicitNodeTypeCross = 14, /** Calculates the cross product of two vector values */
eImplicitNodeTypeMatVecMultiplication = 15, /** Multiplies a matrix with a vector */
Expand Down Expand Up @@ -491,7 +493,9 @@ typedef enum eLib3MFImplicitNodeType {
eImplicitNodeTypeFunctionCall = 45, /** Calls a function */
eImplicitNodeTypeMesh = 46, /** Calculates the signed distance to a mesh */
eImplicitNodeTypeLength = 47, /** Calculates the length of a vector */
eImplicitNodeTypeResource = 48 /** Selects a resource (function, mesh etc.) */
eImplicitNodeTypeResource = 48, /** Selects a resource (function, mesh etc.) */
eImplicitNodeTypeVectorFromScalar = 49, /** Creates a vector from one scalar values */
eImplicitNodeTypeUnsignedMesh = 50 /** Calculates the unsigned distance to a mesh */
} eLib3MFImplicitNodeType;

/**
Expand Down
Loading

0 comments on commit c7fa73e

Please sign in to comment.