C3D Toolkit  Kernel - 117982, Vision - 2.9.2.2
gcm_types.h File Reference

Data types of geometric solver. More...

#include <system_types.h>
#include <math_define.h>

Classes

struct  GCM_vec3d
 Coordinates of 3D-vector. More...
 
struct  GCM_point
 Coordinates of point in three-dimensional space. More...
 
struct  GCM_interval
 The range of allowable values for a linear or angular interval dimension. More...
 
struct  GCM_g_record
 Structure of data fields representing a geometric object. More...
 
struct  GCM_dof_record
 Detailed info about geometric degree of freedom. More...
 
struct  GCM_extra_param
 Additional parameter for functions of type #GCM_dependent_func. More...
 
struct  GCM_c_arg
 Argument of constraint to record in 'GCM_c_record' data. More...
 
struct  GCM_c_record
 Structure of geometric constraint record. More...
 
struct  GCM_closest_params
 Scalar parameters of geometric constraint or dimension. More...
 

Typedefs

typedef struct MtSystemHolder * GCM_system
 System of geometric constraints.
 
typedef MtObjectId GCM_object
 Descriptor of geometrical object registered in the constraint system.
 
typedef GCM_object GCM_geom
 Descriptor of geometrical object registered in the constraint system.
 
typedef GCM_object GCM_var
 Descriptor of numeric variable registered in the constraint system.
 
typedef GCM_object GCM_constraint
 Descriptor of a constraint registered in the solver.
 
typedef GCM_object GCM_pattern
 Descriptor of a pattern registered in the solver.
 
typedef GCM_dependent_func GCM_dependent_geom_func
 Alternative typename of #GCM_dependent_func.
 

Enumerations

enum  GCM_argument_type {
  GCM_ARG_UNDEFINED = 0 , GCM_ARG_INTERVAL , GCM_ARG_DESCRIPTOR , GCM_ARG_NUMBER ,
  GCM_ARG_ENUM
}
 Dictionary of geometric argument types. More...
 
enum  GCM_g_type {
  GCM_NULL_GTYPE = 0 , GCM_POINT , GCM_LINE , GCM_PLANE ,
  GCM_CYLINDER , GCM_CONE , GCM_SPHERE , GCM_TORUS ,
  GCM_CIRCLE , GCM_LCS , GCM_MARKER , GCM_SPLINE ,
  GCM_VECTOR , GCM_AXIS , GCM_UNKNOWN_GTYPE , GCM_LAST_GTYPE
}
 Dictionary of geometric primitives types. More...
 
enum  GCM_c_type {
  GCM_UNKNOWN = -1 , GCM_COINCIDENT = 0 , GCM_PARALLEL = 1 , GCM_PERPENDICULAR = 2 ,
  GCM_TANGENT = 3 , GCM_CONCENTRIC = 4 , GCM_DISTANCE = 5 , GCM_ANGLE = 6 ,
  GCM_TRANSMITTION = 9 , GCM_CAM_MECHANISM = 10 , GCM_SYMMETRIC = 11 , GCM_DEPENDENT = 14 ,
  GCM_PATTERNED = 15 , GCM_LINEAR_PATTERN = 16 , GCM_ANGULAR_PATTERN = 17 , GCM_CS_PATTERN = 19 ,
  GCM_PATTERN_COORDINATE = 20 , GCM_RADIUS = 18 , GCM_LAST_CTYPE = 100 , GCM_IN_PLACE = 7
}
 Dictionary of constraint types. More...
 
enum  GCM_alignment {
}
 Variants of alignment. More...
 
enum  GCM_angle_type { GCM_NONE_ANGLE = 0 , GCM_2D_ANGLE = 1 , GCM_3D_ANGLE = 2 , GCM_PLANAR_ANGLE = GCM_2D_ANGLE }
 Variant of angular dimension. More...
 
enum  GCM_tan_choice { GCM_TAN_NONE = 0x00 , GCM_TAN_POINT = 0x01 , GCM_TAN_LINE = 0x02 , GCM_TAN_CIRCLE = 0x04 }
 Variants of tangency of surfaces or curves. More...
 
enum  GCM_result {
  GCM_RESULT_None = 0 , GCM_RESULT_Ok = 1 , GCM_RESULT_Satisfied = GCM_RESULT_Ok , GCM_RESULT_Overconstrained = 2 ,
  GCM_RESULT_MatedFixation = 3 , GCM_RESULT_DraggingFailed = 4 , GCM_RESULT_Not_Satisfied = 5 , GCM_RESULT_Unsolvable = 6 ,
  GCM_RESULT_DependentConstraintUnsolved = 7 , GCM_RESULT_Error = 8 , GCM_RESULT_InappropriateAlignment = 9 , GCM_RESULT_InappropriateArgument = 10 ,
  GCM_RESULT_IncompatibleArguments = 3001 , GCM_RESULT_InconsistentAlignment = 3003 , GCM_RESULT_Duplicated , GCM_RESULT_CyclicDependence ,
  GCM_RESULT_MultiDependedGeom , GCM_RESULT_OverconstrainingDependedGeoms , GCM_RESULT_DependedGeomCantBeFixed , GCM_RESULT_InvalidArguments ,
  GCM_RESULT_UnsupportedTangencyChoice , GCM_RESULT_InconsistentTangencyChoice , GCM_RESULT_CoaxialGearTransmissionUnsupported , GCM_RESULT_OverconstrainedCamMechanism ,
  GCM_RESULT_CamMechanismsInCyclicDependency , GCM_RESULT_InconsistentFollowerAxis , GCM_RESULT_InconsistentPlanarAngle , GCM_RESULT_UnsupportedFollowerSurface ,
  GCM_RESULT_ItsNotDrivingDimension , GCM_RESULT_IncorrectDimensionInterval , GCM_RESULT_Unregistered , GCM_RESULT_InternalError ,
  GCM_RESULT_ImmutableData , GCM_RESULT_Aborted , GCM_RESULT_Last_
}
 Diagnostic codes of 3D-solver. More...
 
enum  GCM_dependency { GCM_NO_DEPENDENCY = 0 , GCM_1ST_DEPENDENT = 2 , GCM_2ND_DEPENDENT = 1 }
 Code denotes what kind of dependency there is between arguments of constraint. More...
 
enum  GCM_scale { }
 The type of relationship between elements in the pattern. More...
 
enum  GCM_coord_name {
  GCM_X_CRD = 1 , GCM_Y_CRD = 2 , GCM_Z_CRD = 3 , GCM_RADIAL_CRD = 4 ,
  GCM_AZIMUTH_CRD = 5 , GCM_POLAR_CRD = 6 , GCM_NULL_CRD = 1000
}
 
enum  GCM_reposition {
  GCM_REPOSITION_FreeRotation , GCM_REPOSITION_FreeMoving , GCM_REPOSITION_Dragging , GCM_REPOSITION_Rotation ,
  GCM_REPOSITION_Transfer
}
 Mode of the behavior when manipulating the undeconstrained system. More...
 
enum  GCM_dof_result { GCM_DOF_RESULT_WellDefined , GCM_DOF_RESULT_UnderDefined , GCM_DOF_RESULT_Unknown }
 Resulting code of the geometric degree of freedom computation. More...
 
enum  GCM_g_status { }
 Status code of geometric object. More...
 
enum  GCM_log_type { GCM_LOG_JournalLine , GCM_LOG_Message , GCM_LOG_Error }
 

Variables

const GCM_object GCM_NULL = _GCM_NULL
 Descriptor of empty object or constraint.
 
const GCM_geom GCM_GROUND = _GCM_GROUND
 Descriptor of rigid subset of objects which are given in global coordinate system.
 

Detailed Description

Data types of geometric solver.

Enumeration Type Documentation

◆ GCM_log_type

Enumerator
GCM_LOG_JournalLine 

Reporting string about the Solver API call.

GCM_LOG_Message 

The string notifies that something informative happend.

GCM_LOG_Error 

Error notification.