+ } else if (theFeatureID == FeaturesPlugin_Revolution::ID()) {
+ return FeaturePtr(new FeaturesPlugin_Revolution);
+ } else if (theFeatureID == FeaturesPlugin_Rotation::ID()) {
+ return FeaturePtr(new FeaturesPlugin_Rotation);
+ } else if (theFeatureID == FeaturesPlugin_Translation::ID()) {
+ return FeaturePtr(new FeaturesPlugin_Translation);
+ } else if (theFeatureID == FeaturesPlugin_Boolean::ID()) {
+ return FeaturePtr(new FeaturesPlugin_Boolean);
+ } else if (theFeatureID == FeaturesPlugin_Group::ID()) {
+ return FeaturePtr(new FeaturesPlugin_Group);
+ } else if (theFeatureID == FeaturesPlugin_Intersection::ID()) {
+ return FeaturePtr(new FeaturesPlugin_Intersection);
+ } else if (theFeatureID == FeaturesPlugin_Partition::ID()) {
+ return FeaturePtr(new FeaturesPlugin_Partition);
+ } else if (theFeatureID == FeaturesPlugin_Pipe::ID()) {
+ return FeaturePtr(new FeaturesPlugin_Pipe);
+ } else if (theFeatureID == FeaturesPlugin_Placement::ID()) {
+ return FeaturePtr(new FeaturesPlugin_Placement);
+ } else if (theFeatureID == FeaturesPlugin_Recover::ID()) {
+ return FeaturePtr(new FeaturesPlugin_Recover);
+ } else if (theFeatureID == FeaturesPlugin_ExtrusionCut::ID()) {
+ return FeaturePtr(new FeaturesPlugin_ExtrusionCut);
+ } else if (theFeatureID == FeaturesPlugin_ExtrusionFuse::ID()) {
+ return FeaturePtr(new FeaturesPlugin_ExtrusionFuse);
+ } else if (theFeatureID == FeaturesPlugin_RevolutionCut::ID()) {
+ return FeaturePtr(new FeaturesPlugin_RevolutionCut);
+ } else if (theFeatureID == FeaturesPlugin_RevolutionFuse::ID()) {
+ return FeaturePtr(new FeaturesPlugin_RevolutionFuse);
+ } else if (theFeatureID == FeaturesPlugin_RemoveSubShapes::ID()) {
+ return FeaturePtr(new FeaturesPlugin_RemoveSubShapes);
+ } else if (theFeatureID == FeaturesPlugin_Union::ID()) {
+ return FeaturePtr(new FeaturesPlugin_Union);