CATMecModUseItf Interface CATIInputDescription

Usage: you can reimplement this interface by deriving the supplied CATIniInputDescriptionAdaptor adapter class.


interface CATIInputDescription

Interface defining feature integration into an Ordered Geometrical Set.

Role: This interface should be implemented for any feature to be inserted in an Ordered Geometrical Set (see ). Ordered Geometrical Sets introduce the concept of absorbed feature: a feature F1 is said to be absorbed if there is a feature F2 that modifies F1 as input. F1 is called absorbed feature and F2 absorbant feature, or modification feature.

A modification feature can have several inputs. Among them, one feature is considered as the main input, usefull for graphic properties propagation.

The absorbed features have to be consistent with the result of the feature. That is to say, if the feature is a geometrical element, its inputs have also to be geometrical elements and their behavior (shape/volume/solid) has to be the same as the feature's behavior (see ), if the feature is a shape the inputs have to be shapes.

The following table shows the rules which must be ensured regarding the methods results. For instance, GetMainInput applied to a creation feature (GetFeatureType returning FeatureType_Creation) must return E_FAIL and the argument oMainInput must be set to Nul.

 ====================================================================================
 |    GetFeatureType    |    GetMainInput      |     GetListOfModifiedFeatures      |
 |                      | Returns   oMainInput | Returns   ioListOfModifiedFeatures |
 ====================================================================================
 |      Creation        |  E_FAIL       Nul    |  E_FAIL           {}               |
 ====================================================================================
 |  ContextualCreation  |   S_OK       Input   |  E_FAIL           {}               |
 ====================================================================================
 |    Modification      |   S_OK       Input1  |   S_OK    {Input1[, Input2, ...]}  |
 ====================================================================================
 

BOA information: this interface can be implemented using the BOA (Basic Object Adapter). To know more about the BOA, refer to the CAA Encyclopedia home page. Click Middleware at the bottom left, then click the Object Modeler tab page. Several articles deal with the BOA.


Method Index


o GetFeatureType(CATIInputDescription::FeatureType&)
Retrieves the type of the feature.
o GetListOfModifiedFeatures(CATListValCATBaseUnknown_var&)
Retrieves the list of absorbed features.
o GetMainInput(CATBaseUnknown_var&)
Retrieves the main input specification of the feature.

Enumerated Type Index


o FeatureType
Type of the feature.

Methods


o GetFeatureType
public virtual GetFeatureType( ioFeatureType)
Retrieves the type of the feature.
Role:
This method retrieves the type of the feature. In most cases, the type is fixed but it can also be variable according to its inputs (e.g. GSD split is a modification feature if the "Element to cut" is a shape and a creation feature if the "Element to cut" is a solid) or to feature parameters (e.g. GSD extrapol is a modification feature if option "Assemble result" is checked and a Creation feature otherwise). If returns E_FAIL, ioFeatureType must be set to FeatureType_Unset.
Parameters:
ioFeatureType
The type of the feature.
Returns:
Legal values:
  • S_OK : ioFeatureType correctly valuated.
  • E_FAIL: Unexpected failure.
o GetListOfModifiedFeatures
public virtual GetListOfModifiedFeatures( ioListOfModifiedFeatures)
Retrieves the list of absorbed features.
Role:
This method returns the input specifications modified by the feature (e.g. for a GSD split the list contains the "Element to cut" feature).
This method is relevant only for the features of type FeatureType_Modification.
Parameters:
ioListOfModifiedFeatures
The list of absorbed features. It can't be void.
Returns:
Legal values:
  • S_OK: The type of the feature is FeatureType_Modification and there is no error.
  • E_FAIL: If the type of the feature is FeatureType_Creation or FeatureType_ContextualCreation or there is an error
o GetMainInput
public virtual GetMainInput( oMainInput)
Retrieves the main input specification of the feature.
Role: This method returns the main input specification of the feature. This is only relevant for FeatureType_Modification and FeatureType_ContextualCreation feature.
For FeatureType_Modification feature, the MainInput has to be one of the list returned by . In case of multiple inputs (e.g. GSD Trim and GSD Join), the choice can be arbitrary or favoring one particular input. The main input is used essentially for graphic properties propagation.
For FeatureType_ContextualCreation feature, the MainInput is not an absorbed feature, it's the singular input with which the feature result is closely associated.
Parameters:
oMainInput
The main input of the feature.
Returns:
Legal values:
  • S_OK: The type of the feature is FeatureType_Modification or FeatureType_ContextualCreation, and there is no error.
  • E_FAIL: If the type of the feature is FeatureType_Creation or there is an error.

Enumerated Types


o FeatureType
enum FeatureType {
  FeatureType_Unset,
  FeatureType_Creation,
  FeatureType_Modification,
  FeatureType_ContextualCreation
}
Type of the feature.
Parameters:
FeatureType_Unset
Used for default assignment.
FeatureType_Creation
The feature creates matter. A GSD Line is a creation feature.
FeatureType_Modification
The feature modifies another feature. A GSD Split is a modification feature.
FeatureType_ContextualCreation
The feature creates matter but is closely associated with a specific feature. A GSD Offset is a contextual creation feature, it creates geometry contextually to a master feature.

This object is included in the file: CATIInputDescription.h
If needed, your Imakefile.mk should include the module: CATMecModUseItf

Copyright © 1999-2014, Dassault Systèmes. All rights reserved.