Description
Generel
Currently the value of a flexible dimension of a VariantFeat can be set via 'ProDimensionValueSet()'.
There is no command available for setting the value via 'Curve Length', 'Distance' etc. A new command is required for this.
Implementation
ProDimensionMethod
In addition to setting via a value, there are other methods available. These could be mapped into an enum as follows
typedef enum pro_dimension_method
{
PRO_DIMENSION_METHOD_BY_CURVE_LENGTH = 1,
PRO_DIMENSION_METHOD_BY_DISTANCE = 2,
PRO_DIMENSION_METHOD_BY_ANGLE = 3,
PRO_DIMENSION_METHOD_BY_AREA = 4,
PRO_DIMENSION_METHOD_BY_DIAMETER = 5,
} ProDimensionMethod;
Command
Proposal for a new command to set the dimension for other methods.
ProError ProVariantfeatDimensionSet( ProFeature* variant_feature,
/* (In)
The variant feature handle.
*/
ProDimension* dimension
/* (In)
The dimension of the variant feature.
Use 'ProVariantfeatItemsVisit()' to get the ProDimension handle
*/
ProDimensionMethod method,
/* (In)
The method to get the value for the dimension.
*/
ProArray* reference_arr
/* (In)
ProArray of required references from type ProSelection.
*/
Unigraphics has similar functionality.
While waiting for a proposal to become a part of API, one could consider workarounds: