#ifndef PROMECHMATERIALORIENT_H
#define PROMECHMATERIALORIENT_H
#include <ProToolkit.h>
#include <ProObjects.h>
#include <ProSizeConst.h>
#include <ProMechValue.h>
PRO_BEGIN_C_DECLS
typedef enum
{
PRO_MECH_MATLORI_OBJ_NONE = PRO_VALUE_UNUSED,
PRO_MECH_MATLORI_MODEL = 1,
PRO_MECH_MATLORI_SURFACE = 2
} ProMechMaterialOrientObjType;
typedef enum
{
PRO_MECH_MATLORI_NONE = PRO_VALUE_UNUSED,
PRO_MECH_MATLORI_COORD_SYSTEM = 1,
PRO_MECH_MATLORI_1_DIR = 2,
PRO_MECH_MATLORI_2_DIR = 3,
PRO_MECH_MATLORI_3_DIR = 4, /* not used */
PRO_MECH_MATLORI_PROJ_VECTOR = 5
} ProMechMaterialOrientType;
typedef enum
{
PRO_MECH_MATLORI_CSYS_PROJ_NONE = PRO_VALUE_UNUSED,
PRO_MECH_MATLORI_CSYS_PROJ_CLOSEST = 0,
PRO_MECH_MATLORI_CSYS_PROJ_X = 1,
PRO_MECH_MATLORI_CSYS_PROJ_Y = 2, /* not used for now */
PRO_MECH_MATLORI_CSYS_PROJ_Z = 3 /* not used for now */
} ProMechMaterialOrientCsysProjType;
typedef enum
{
PRO_MECH_MATLORI_PROJ_NONE = PRO_VALUE_UNUSED,
PRO_MECH_MATLORI_PROJ_XYZ = 1,
PRO_MECH_MATLORI_PROJ_POINTS = 2
} ProMechMaterialOrientProjType;
typedef struct pro_matlorient_data* ProMechMaterialOrientData;
typedef struct pro_matlorient_csys* ProMechMaterialOrientCsys;
typedef struct pro_matlorient_proj* ProMechMaterialOrientProj;
typedef double ProMechMaterialOrientRotation[3];
typedef enum
{
PRO_MECH_MATLORI_CSYS_AXIS_X = 0,
PRO_MECH_MATLORI_CSYS_AXIS_Y = 1,
PRO_MECH_MATLORI_CSYS_AXIS_Z = 2
} ProMechMaterialOrientCsysAxis;
extern ProError ProMechmaterialorientDescriptionGet (ProMechItem* item,
ProComment description);
/*
Purpose: Obtains the description of the material orientation object.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
item - The material 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_GENERAL_ERROR - A general error was encountered.
*/
extern ProError ProMechmaterialorientObjecttypeGet (ProMechItem* item,
ProMechMaterialOrientObjType* type);
/*
Purpose: Obtains the type of object for the material orientation object.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
item - The material orientation.
Output Arguments:
type - The object 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.
PRO_TK_INVALID_PTR - The Input ProMechItem Solid pointer is invalid.
PRO_TK_GENERAL_ERROR - A general error was encountered.
*/
extern ProError ProMechmaterialorientDataGet (ProMechItem* item,
ProMechMaterialOrientData* data);
/*
Purpose: Obtains the data for the material orientation object.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
item - The material orientation.
Output Arguments:
data - The data. Free this using ProMechmaterialorientdataFree().
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 was encountered.
PRO_TK_OUT_OF_MEMORY - There is not enough memory to perform the
operation.
*/
extern ProError ProMechmaterialorientdataTypeGet (ProMechMaterialOrientData data,
ProMechMaterialOrientType* type);
/*
Purpose: Obtains the type of material orientation.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation data.
Output Arguments:
type - The material 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 ProMechmaterialorientdataCsysdataGet (ProMechMaterialOrientData data,
ProMechMaterialOrientCsys* csys_data);
/*
Purpose: Obtains the coordinate system orientation data for the material
orientation data.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation data.
Output Arguments:
csys_data - The csys data. Free this using
ProMechmaterialorientcsysFree().
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_TYPE - The data does not contain this type of material
orientation.
PRO_TK_OUT_OF_MEMORY - There is not enough memory to perform the
operation.
See Also:
ProMechmaterialorientdataTypeGet()
*/
extern ProError ProMechmaterialorientdataProjectiondataGet (ProMechMaterialOrientData data,
ProMechMaterialOrientProj* proj_data);
/*
Purpose: Obtains the projection orientation data for the material
orientation data.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation data.
Output Arguments:
proj_data - The projection data. Free this using
ProMechmaterialorientprojFree().
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_TYPE - The data does not contain this type of material
orientation.
PRO_TK_OUT_OF_MEMORY - There is not enough memory to perform the
operation.
See Also:
ProMechmaterialorientdataTypeGet()
*/
extern ProError ProMechmaterialorientdataRotationGet (ProMechMaterialOrientData data,
ProMechMaterialOrientRotation rotation);
/*
Purpose: Obtains the rotation angles for the material orientation of type
PRO_MECH_MATLORI_MODEL.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation data.
Output Arguments:
rotation - The angles.
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_E_NOT_FOUND - The material orientation data does not contain a
rotation.
PRO_TK_INVALID_TYPE - The material orientation data type is not
PRO_MECH_MATLORI_MODEL.
*/
extern ProError ProMechmaterialorientdataFree (ProMechMaterialOrientData data);
/*
Purpose: Frees the memory for a Creo Simulate material orientation 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 ProMechmaterialorientcsysCsysGet (ProMechMaterialOrientCsys data,
ProMechGeomref* csys);
/*
Purpose: Obtains the coordinate system used in the material orientation
csys data.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation csys data.
Output Arguments:
csys - The coordinate system. Free this using ProMechgeomrefFree().
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 ProMechmaterialorientcsysXaxisGet (ProMechMaterialOrientCsys data,
ProMechMaterialOrientCsysAxis* x_axis);
/*
Purpose: Obtains the coordinate system axis mapped to the the X-axis of the
material orientation.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation csys data.
Output Arguments:
x_axis - The X-axis.
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 ProMechmaterialorientcsysYaxisGet (ProMechMaterialOrientCsys data,
ProMechMaterialOrientCsysAxis* y_axis);
/*
Purpose: Obtains the coordinate system axis mapped to the the Y-axis of the
material orientation.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation csys data.
Output Arguments:
y_axis - The Y-axis.
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 ProMechmaterialorientcsysZaxisGet (ProMechMaterialOrientCsys data,
ProMechMaterialOrientCsysAxis* z_axis);
/*
Purpose: Obtains the coordinate system axis mapped to the the Z-axis of the
material orientation.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation csys data.
Output Arguments:
z_axis - The Z-axis.
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 ProMechmaterialorientcsysProjectiontypeGet (ProMechMaterialOrientCsys data,
ProMechMaterialOrientCsysProjType* type);
/*
Purpose: Obtains the projection type for the csys material orientation
data.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation csys data.
Output Arguments:
type - The projection 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 ProMechmaterialorientcsysFree (ProMechMaterialOrientCsys data);
/*
Purpose: Frees the memory for a Creo Simulate material orientation 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 ProMechmaterialorientprojTypeGet (ProMechMaterialOrientProj data,
ProMechMaterialOrientProjType* type);
/*
Purpose: Obtains the type of projection assigned to the material
orientation.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation projection data.
Output Arguments:
type - The projection 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 ProMechmaterialorientprojXyzvectorGet (ProMechMaterialOrientProj data,
ProVector vector);
/*
Purpose: Obtains the vector used for projection of the material orientation
data.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation projection data.
Output Arguments:
vector - The 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.
PRO_TK_INVALID_TYPE - The data does not contain this type of
projection.
*/
extern ProError ProMechmaterialorientprojPointsGet (ProMechMaterialOrientProj data,
ProMechGeomref** points);
/*
Purpose: Obtains the two points used for projection in this material
orientation data.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation projection data.
Output Arguments:
points - ProArray of points used for projection. Free this using
ProMechgeomrefProarrayFree().
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_TYPE - The data does not contain this type of
projection.
PRO_TK_OUT_OF_MEMORY - There is not enough memory to perform the
operation.
PRO_TK_GENERAL_ERROR - A general error was encountered.
*/
extern ProError ProMechmaterialorientprojFree (ProMechMaterialOrientProj data);
/*
Purpose: Frees the memory for a Creo Simulate material orientation 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 ProMechmaterialorientdataObjecttypeGet (ProMechMaterialOrientData data,
ProMechMaterialOrientObjType* type);
/*
Purpose: Obtains the type of object for the material orientation object.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation data.
Output Arguments:
type - The object 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.tion.
*/
extern ProError ProMechmaterialorientdataSurfacerotationGet (ProMechMaterialOrientData data, double *rotation);
/*
Purpose: Obtains the rotation angle for the material orientation if the
orientation type is PRO_MECH_MATLORI_SURFACE.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation data.
Output Arguments:
rotation - The rotation angle.
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_TYPE - The material orientation data type is not
PRO_MECH_MATLORI_SURFACE.
PRO_TK_E_NOT_FOUND - The material orientation data does not contain a
rotation.
*/
extern ProError ProMechmaterialorientDescriptionSet (ProMechItem* item, ProComment description);
/*
Purpose: Sets the description of the material orientation object.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
item - The material 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 was encountered.
PRO_TK_CANT_ACCESS - Cannot access the object in the current mode.
PRO_TK_CANT_MODIFY - Cannot modify the item.
*/
extern ProError ProMechmaterialorientDataSet (ProMechItem* item, ProMechMaterialOrientData data);
/*
Purpose: Sets the data for the material orientation object.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
item - The material orientation.
data - The 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 was encountered.
PRO_TK_CANT_ACCESS - Cannot access the object in the current mode.
PRO_TK_CANT_MODIFY - Cannot modify the item.
*/
extern ProError ProMechmaterialorientdataCsysdataSet (ProMechMaterialOrientData data, ProMechMaterialOrientCsys csys_data);
/*
Purpose: Sets the coordinate system orientation data for the material
orientation data. In FEM mode, this data should be compulsorily
set and ProMechMaterialOrientCsysProjType should be set to
PRO_MECH_MATLORI_CSYS_PROJ_X. In Native mode, if
ProMechMaterialOrientObjType is PRO_MECH_MATLORI_MODEL, then, this
data should be compulsorily set and
ProMechMaterialOrientCsysProjType should be set to
PRO_MECH_MATLORI_CSYS_PROJ_CLOSEST.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation data.
csys_data - The csys 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.
*/
extern ProError ProMechmaterialorientdataProjectiondataSet (ProMechMaterialOrientData data, ProMechMaterialOrientProj proj_data);
/*
Purpose: Sets the projection orientation data for the material orientation
data.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation data.
proj_data - The projection 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.
*/
extern ProError ProMechmaterialorientdataFirstdirectionSet (ProMechMaterialOrientData data);
/*
Purpose: Sets the material orient data to use first direction as its
orientation type.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material 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.
*/
extern ProError ProMechmaterialorientdataSeconddirectionSet (ProMechMaterialOrientData data);
/*
Purpose: Sets the material orient data to use second direction as its
orientation type.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material 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.
*/
extern ProError ProMechmaterialorientdataRotationSet (ProMechMaterialOrientData data, ProMechMaterialOrientRotation rotation);
/*
Purpose: Sets the rotation angles for the material orientation of type
PRO_MECH_MATLORI_MODEL.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation data.
rotation - The angles.
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_WRITE - Subtype cannot be changed.
*/
extern ProError ProMechmaterialorientdataAlloc (ProMechMaterialOrientData* data);
/*
Purpose: Allocates the memory for a Creo Simulate material orientation 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 ProMechmaterialorientcsysCsysSet (ProMechMaterialOrientCsys data, ProMechGeomref csys);
/*
Purpose: Sets the coordinate system used in the material orientation csys
data.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation csys data.
csys - The coordinate system.
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 ProMechmaterialorientcsysXaxisSet (ProMechMaterialOrientCsys data, ProMechMaterialOrientCsysAxis x_axis);
/*
Purpose: Sets the coordinate system axis mapped to the the X-axis of the
material orientation.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation csys data.
x_axis - The Xaxis.
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 ProMechmaterialorientcsysYaxisSet (ProMechMaterialOrientCsys data, ProMechMaterialOrientCsysAxis y_axis);
/*
Purpose: Sets the coordinate system axis mapped to the the Y-axis of the
material orientation.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation csys data.
y_axis - The Yaxis.
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 ProMechmaterialorientcsysZaxisSet (ProMechMaterialOrientCsys data, ProMechMaterialOrientCsysAxis z_axis);
/*
Purpose: Sets the coordinate system axis mapped to the the Z-axis of the
material orientation.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation csys data.
z_axis - The Zaxis.
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 ProMechmaterialorientcsysProjectiontypeSet (ProMechMaterialOrientCsys data, ProMechMaterialOrientCsysProjType type);
/*
Purpose: Sets the projection type for the csys material orientation data.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation csys data.
type - The projection 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 ProMechmaterialorientcsysAlloc (ProMechMaterialOrientCsys* data);
/*
Purpose: Allocates the memory for a Creo Simulate material orientation 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 ProMechmaterialorientprojXyzvectorSet (ProMechMaterialOrientProj data, ProVector vector);
/*
Purpose: Sets the vector used for projection of the material orientation
data.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation projection data.
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.
*/
extern ProError ProMechmaterialorientprojPointsSet (ProMechMaterialOrientProj data, ProMechGeomref* points);
/*
Purpose: Sets the two points used for projection in this material
orientation data.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation projection data.
points - ProArray of points used for projection. (NOTE: Only
PRO_MECH_POINT_SINGLE, PRO_MECH_VERTEX_EDGE_START and
PRO_MECH_VERTEX_EDGE_END type points are allowed)
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 ProMechmaterialorientprojAlloc (ProMechMaterialOrientProj* data);
/*
Purpose: Allocates the memory for a Creo Simulate material orientation 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 ProMechmaterialorientdataObjecttypeSet (ProMechMaterialOrientData data, ProMechMaterialOrientObjType type);
/*
Purpose: Sets the type of object for the material orientation object.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation data.
type - The object 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 ProMechmaterialorientdataSurfacerotationSet (ProMechMaterialOrientData data, double rotation);
/*
Purpose: Assigns the rotation angle for the material orientation if the
orientation type is PRO_MECH_MATLORI_SURFACE.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material orientation data.
rotation - The rotation angle.
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_WRITE - Subtype cannot be changed.
*/
extern ProError ProMechmaterialorientdataSurfacerotationUnset (ProMechMaterialOrientData data);
/*
Purpose: Removes the rotation angle for the material orientation if the
orientation type is PRO_MECH_MATLORI_SURFACE.
Licensing Requirement:
UNRECOGNIZED
Input Arguments:
data - The material 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_CANT_WRITE - Subtype cannot be changed.
*/
PRO_END_C_DECLS
#endif /* PROMECHMATERIALORIENT_H */