#ifndef PROMECHBEAMORIENT_H #define PROMECHBEAMORIENT_H #include <ProToolkit.h> #include <ProObjects.h> #include <ProMechItem.h> #include <ProMechVector.h> PRO_BEGIN_C_DECLS typedef struct pro_beam_orient_data_int* ProMechBeamOrientData; typedef enum { PRO_MECH_BEAM_ORIENT_OFFSET_TYPE = 0, /* ProMechBeamOrientType (int) */ PRO_MECH_BEAM_ORIENT_ANGLE = 1, /* ProMechExpression */ PRO_MECH_BEAM_ORIENT_OFFSET = 2 /* ProMechVector (3) [ Dx Dy Dz ] */ } ProMechBeamorientPropertyType; typedef enum { PRO_MECH_BEAM_ORIENT_OFFSET_SHAPE_ORIGIN = 0, PRO_MECH_BEAM_ORIENT_OFFSET_CENTROID = PRO_MECH_BEAM_ORIENT_OFFSET_SHAPE_ORIGIN, PRO_MECH_BEAM_ORIENT_OFFSET_SHEAR_CENTER = 1 } ProMechBeamOrientType; extern ProError ProMechbeamorientDescriptionGet (ProMechItem* item, ProComment description); /* Purpose: Obtains the beam orientation description. Licensing Requirement: UNRECOGNIZED Input Arguments: item - The beam orientation. Output Arguments: description - The description. Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. PRO_TK_INVALID_PTR - The Input ProMechItem Solid pointer is invalid. PRO_TK_OUT_OF_MEMORY - There is not enough memory to perform the operation. PRO_TK_GENERAL_ERROR - A general error is encountered. */ extern ProError ProMechbeamorientDataGet (ProMechItem* item, ProMechBeamOrientData* value); /* Purpose: <B>Note</B>: This function is deprecated. Use ProMechBeamorientVectorGet(), ProMechBeamorientExpressionGet() instead. <p> Obtains the beam orientation data from a beam orientation item. Licensing Requirement: UNRECOGNIZED Input Arguments: item - The beam orientation. Output Arguments: value - The beam orientation data. Free this using ProMechbeamorientdataFree() Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. PRO_TK_INVALID_PTR - The Input ProMechItem Solid pointer is invalid. PRO_TK_OUT_OF_MEMORY - There is not enough memory to perform the operation. PRO_TK_GENERAL_ERROR - A general error is encountered. */ extern ProError ProMechbeamorientdataTypeGet (ProMechBeamOrientData data, ProMechBeamOrientType* type); /* Purpose: <B>Note</B>: This function is deprecated. Use ProMechBeamorientIntegerGet() instead. <p> Obtains the type of orientation used in the beam orientation data. Licensing Requirement: UNRECOGNIZED Input Arguments: data - The beam orientation data. Output Arguments: type - The orientation type. Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. */ extern ProError ProMechbeamorientdataVectorGet (ProMechBeamOrientData data, ProVector vector); /* Purpose: <B>Note</B>: This function is deprecated. Use ProMechBeamorientVectorGet() instead. <p> Obtains the direction of the beam orientation. Licensing Requirement: UNRECOGNIZED Input Arguments: data - The beam orientation data. Output Arguments: vector - The orientation vector. Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. */ extern ProError ProMechbeamorientdataAngleGet (ProMechBeamOrientData data, double* angle); /* Purpose: <B>Note</B>: This function is deprecated. Use ProMechBeamorientExpressionGet() instead. <p> Obtains the angle of the beam orientation. Licensing Requirement: UNRECOGNIZED Input Arguments: data - The beam orientation data. Output Arguments: angle - The angle in degrees. Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. */ extern ProError ProMechbeamorientdataFree (ProMechBeamOrientData data); /* Purpose: <B>Note</B>: This function is deprecated. <p> Frees the memory for a Creo Simulate beam data handle. Licensing Requirement: UNRECOGNIZED Input Arguments: data - The handle. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. */ extern ProError ProMechbeamorientDescriptionSet (ProMechItem* item, ProComment description); /* Purpose: Sets the beam orientation description. Licensing Requirement: UNRECOGNIZED Input Arguments: item - The beam orientation. description - The description. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. PRO_TK_INVALID_PTR - The Input ProMechItem Solid pointer is invalid. PRO_TK_GENERAL_ERROR - A general error is encountered. PRO_TK_CANT_MODIFY - Cannot modify the item. PRO_TK_CANT_ACCESS - Cannot access the object in the current mode. */ extern ProError ProMechbeamorientDataSet (ProMechItem* item, ProMechBeamOrientData value); /* Purpose: <B>Note</B>: This function is deprecated. Use ProMechBeamorientVectorSet(), ProMechBeamorientExpressionSet() instead. <p> Sets the beam orientation data from a beam orientation item. Licensing Requirement: UNRECOGNIZED Input Arguments: item - The beam orientation. value - The beam orientation data. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. PRO_TK_INVALID_PTR - The Input ProMechItem Solid pointer is invalid. PRO_TK_GENERAL_ERROR - A general error is encountered. PRO_TK_CANT_MODIFY - Cannot modify the item. PRO_TK_CANT_ACCESS - Cannot access the object in the current mode. */ extern ProError ProMechbeamorientdataTypeSet (ProMechBeamOrientData data, ProMechBeamOrientType type); /* Purpose: <B>Note</B>: This function is deprecated. Use ProMechBeamorientIntegerSet() instead. <p> Sets the type of orientation used in the beam orientation data. Licensing Requirement: UNRECOGNIZED Input Arguments: data - The beam orientation data. type - The orientation type. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. */ extern ProError ProMechbeamorientdataVectorSet (ProMechBeamOrientData data, ProVector vector); /* Purpose: <B>Note</B>: This function is deprecated. Use ProMechBeamorientVectorSet() instead. <p> Sets the direction of the beam orientation. Licensing Requirement: UNRECOGNIZED Input Arguments: data - The beam orientation data. vector - The orientation vector. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. */ extern ProError ProMechbeamorientdataAngleSet (ProMechBeamOrientData data, double angle); /* Purpose: <B>Note</B>: This function is deprecated. Use ProMechBeamorientExpressionSet() instead. <p> Sets the angle of the beam orientation. Licensing Requirement: UNRECOGNIZED Input Arguments: data - The beam orientation data. angle - The angle in degrees. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. */ extern ProError ProMechbeamorientdataAlloc (ProMechBeamOrientData* data); /* Purpose: <B>Note</B>: This function is deprecated. <p> Allocates the memory for a Creo Simulate beam data handle. Licensing Requirement: UNRECOGNIZED Input Arguments: none Output Arguments: data - The handle. Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. PRO_TK_OUT_OF_MEMORY - There is not enough memory to perform the operation. */ extern ProError ProMechBeamorientIntegerSet (ProMechItem * item, ProMechBeamorientPropertyType type, int data); /* Purpose: Sets the integer value corresponding to 'type' of the beam orientation. Licensing Requirement: UNRECOGNIZED Input Arguments: item - The beam orientation. type - The property type. (Allowed property types: PRO_MECH_BEAM_ORIENT_OFFSET_TYPE) data - The property value. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. PRO_TK_CANT_ACCESS - Cannot modify the item. PRO_TK_NO_LICENSE - No license was available to enable this function. PRO_TK_INVALID_PTR - The Input ProMechItem Solid pointer is invalid. PRO_TK_GENERAL_ERROR - A general error is encountered. */ extern ProError ProMechBeamorientIntegerGet (ProMechItem * item, ProMechBeamorientPropertyType type, int * data); /* Purpose: Obtains the integer value corresponding to 'type' of the beam orientation. Licensing Requirement: UNRECOGNIZED Input Arguments: item - The beam orientation. type - The property type. (Allowed property types: PRO_MECH_BEAM_ORIENT_OFFSET_TYPE) Output Arguments: data - The property value. Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. PRO_TK_NO_LICENSE - No license was available to enable this function. PRO_TK_INVALID_PTR - The Input ProMechItem Solid pointer is invalid. PRO_TK_GENERAL_ERROR - A general error is encountered. */ extern ProError ProMechBeamorientExpressionSet ( ProMechItem * item, ProMechBeamorientPropertyType type, ProMechExpression expr); /* Purpose: Obtains the value corresponding to 'type' of the beam orientation. Licensing Requirement: UNRECOGNIZED Input Arguments: item - The beam orientation. type - The beam orientation property type. (Allowed property types: PRO_MECH_BEAM_ORIENT_ANGLE) expr - The expression. Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. PRO_TK_CANT_MODIFY - Cannot modify the item. PRO_TK_NO_LICENSE - No license was available to enable this function. PRO_TK_INVALID_PTR - The Input ProMechItem Solid pointer is invalid. PRO_TK_GENERAL_ERROR - A general error is encountered. */ extern ProError ProMechBeamorientExpressionGet ( ProMechItem * item, ProMechBeamorientPropertyType type, ProMechExpression expr); /* Purpose: Obtains the value corresponding to 'type' of the beam orientation. Use ProMathExpressionEvaluate() to evaluate it. Licensing Requirement: UNRECOGNIZED Input Arguments: item - The beam orientation. type - The beam orientation property type. (Allowed property types: PRO_MECH_BEAM_ORIENT_ANGLE) Output Arguments: expr - The expression. Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. PRO_TK_NO_LICENSE - No license was available to enable this function. PRO_TK_INVALID_PTR - The Input ProMechItem Solid pointer is invalid. PRO_TK_GENERAL_ERROR - A general error is encountered. */ extern ProError ProMechBeamorientVectorSet (ProMechItem * item, ProMechBeamorientPropertyType type, ProMechVector vector); /* Purpose: Sets the Vector corresponding to 'type' of the beam orientation. Licensing Requirement: UNRECOGNIZED Input Arguments: item - The beam orientation. type - The beam orientation property type. (Allowed property types: PRO_MECH_BEAM_ORIENT_OFFSET) vector - The vector Output Arguments: none Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. PRO_TK_CANT_MODIFY - Cannot modify the item. PRO_TK_NO_LICENSE - No license was available to enable this function. PRO_TK_INVALID_PTR - The Input ProMechItem Solid pointer is invalid. PRO_TK_GENERAL_ERROR - A general error is encountered. */ extern ProError ProMechBeamorientVectorGet ( ProMechItem * item, ProMechBeamorientPropertyType type, ProMechVector * vector); /* Purpose: Obtains the vector corresponding to 'type' of the beam orientation object. Use ProMathExpressionEvaluate() to evaluate each moment. Licensing Requirement: UNRECOGNIZED Input Arguments: item - The beam orientation. type - The beam orientation property type. (Allowed property types: PRO_MECH_BEAM_ORIENT_OFFSET) Output Arguments: vector - The vector. The function allocates memory for this argument. Use ProMechVectorFree() to free it. Return Values: PRO_TK_NO_ERROR - The function succeeded. PRO_TK_BAD_INPUTS - One or more input arguments are invalid. PRO_TK_BAD_CONTEXT - The Creo Simulate session is not initialized. PRO_TK_OUT_OF_MEMORY - There is not enough memory to perform the operation. PRO_TK_NO_LICENSE - No license was available to enable this function. PRO_TK_INVALID_PTR - The Input ProMechItem Solid pointer is invalid. PRO_TK_GENERAL_ERROR - A general error is encountered. */ PRO_END_C_DECLS #endif /* PROMECHBEAMORIENT_H */