X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FFeaturesPlugin%2FTest%2FTestExtrusion.py;h=ea08653101f30fea67d00aea923fa2fa2bd51b52;hb=ebc5236aba00c21e854d6705d1cbbc6599e1bf36;hp=b74979c8bec7e4196c115598e93908905591623d;hpb=8a502374084b1bd206a86ef4c42797fb994d8b55;p=modules%2Fshaper.git diff --git a/src/FeaturesPlugin/Test/TestExtrusion.py b/src/FeaturesPlugin/Test/TestExtrusion.py index b74979c8b..ea0865310 100644 --- a/src/FeaturesPlugin/Test/TestExtrusion.py +++ b/src/FeaturesPlugin/Test/TestExtrusion.py @@ -1,20 +1,26 @@ """ TestExtrusion.py Unit test of FeaturesPlugin_Extrusion class - + class FeaturesPlugin_Extrusion : public ModelAPI_Feature static const std::string MY_EXTRUSION_ID("Extrusion"); static const std::string LIST_ID("base"); + static const std::string METHOD_ATTR("CreationMethod"); static const std::string MY_TO_SIZE_ID("to_size"); static const std::string MY_FROM_SIZE_ID("from_size"); static const std::string MY_TO_OBJECT_ID("to_object"); + static const std::string MY_TO_OFFSET_ID("to_offset"); static const std::string MY_FROM_OBJECT_ID("from_object"); + static const std::string MY_FROM_OFFSET_ID("from_offset"); - data()->addAttribute(FeaturesPlugin_Extrusion::LIST_ID(), ModelAPI_AttributeSelection::typeId()); - data()->addAttribute(FeaturesPlugin_Extrusion::FROM_SIZE_ID(), ModelAPI_AttributeDouble::typeId()); - data()->addAttribute(FeaturesPlugin_Extrusion::TO_SIZE_ID(), ModelAPI_AttributeDouble::typeId()); - data()->addAttribute(FeaturesPlugin_Extrusion::FROM_OBJECT_ID(), ModelAPI_AttributeSelection::typeId()); - data()->addAttribute(FeaturesPlugin_Extrusion::TO_OBJECT_ID(), ModelAPI_AttributeSelection::typeId()); + data()->addAttribute(LIST_ID(), ModelAPI_AttributeSelection::typeId()); + data()->addAttribute(CREATION_METHOD(), ModelAPI_AttributeString::typeId()); + data()->addAttribute(TO_SIZE_ID(), ModelAPI_AttributeDouble::typeId()); + data()->addAttribute(FROM_SIZE_ID(), ModelAPI_AttributeDouble::typeId()); + data()->addAttribute(TO_OBJECT_ID(), ModelAPI_AttributeSelection::typeId()); + data()->addAttribute(TO_OFFSET_ID(), ModelAPI_AttributeDouble::typeId()); + data()->addAttribute(FROM_OBJECT_ID(), ModelAPI_AttributeSelection::typeId()); + data()->addAttribute(FROM_OFFSET_ID(), ModelAPI_AttributeSelection::typeId()); """ #========================================================================= # Initialization of the test @@ -77,8 +83,11 @@ assert (anExtrusionFt.getKind() == "Extrusion") # selection type FACE=4 anExtrusionFt.selectionList("base").append( aCircleSketchResult, aCircleSketchFaces[0]) -anExtrusionFt.real("from_size").setValue(0) +anExtrusionFt.string("CreationMethod").setValue("BySizes") anExtrusionFt.real("to_size").setValue(50) +anExtrusionFt.real("from_size").setValue(0) +anExtrusionFt.real("to_offset").setValue(0) #TODO: remove +anExtrusionFt.real("from_offset").setValue(0) #TODO: remove anExtrusionFt.execute() aSession.finishOperation() assert (anExtrusionFt.real("to_size").value() == 50.0) @@ -94,7 +103,8 @@ assert (anExtrusionResult is not None) # Create from plane aSession.startOperation() aFromPlaneFeature = aPart.addFeature("Plane") -aFromPlaneFeature.string("CreationMethod").setValue("PlaneByGeneralEquation") +aFromPlaneFeature.string("creation_method").setValue("by_general_equation") +aFromPlaneFeature.string("by_other_plane_option").setValue("by_distance_from_other") # TODO: remove aFromPlaneFeature.real("A").setValue(0.) aFromPlaneFeature.real("B").setValue(0.) aFromPlaneFeature.real("C").setValue(1.) @@ -104,7 +114,8 @@ aSession.finishOperation() # Create to plane aSession.startOperation() aToPlaneFeature = aPart.addFeature("Plane") -aToPlaneFeature.string("CreationMethod").setValue("PlaneByGeneralEquation") +aToPlaneFeature.string("creation_method").setValue("by_general_equation") +aToPlaneFeature.string("by_other_plane_option").setValue("by_distance_from_other") # TODO: remove aToPlaneFeature.real("A").setValue(0.) aToPlaneFeature.real("B").setValue(0.) aToPlaneFeature.real("C").setValue(1.) @@ -118,14 +129,17 @@ assert (anExtrusionFt.getKind() == "Extrusion") # selection type FACE=4 anExtrusionFt.selectionList("base").append( aCircleSketchResult, aCircleSketchFaces[0]) -aFromResult = aFromPlaneFeature.firstResult() -aFromShape = modelAPI_ResultConstruction(aFromResult).shape() -anExtrusionFt.selection("from_object").setValue(aFromResult, aFromShape) -anExtrusionFt.real("from_size").setValue(10) +anExtrusionFt.string("CreationMethod").setValue("ByPlanesAndOffsets") +anExtrusionFt.real("to_size").setValue(0) #TODO: remove +anExtrusionFt.real("from_size").setValue(0) #TODO: remove aToResult = aToPlaneFeature.firstResult() aToShape = modelAPI_ResultConstruction(aToResult).shape() anExtrusionFt.selection("to_object").setValue(aToResult, aToShape) -anExtrusionFt.real("to_size").setValue(10) +anExtrusionFt.real("to_offset").setValue(10) +aFromResult = aFromPlaneFeature.firstResult() +aFromShape = modelAPI_ResultConstruction(aFromResult).shape() +anExtrusionFt.selection("from_object").setValue(aFromResult, aFromShape) +anExtrusionFt.real("from_offset").setValue(10) anExtrusionFt.execute() aSession.finishOperation() @@ -136,7 +150,7 @@ assert (anExtrusionResult is not None) # Check extrusion volume aRefVolume = 100530.96491487337 -aResVolume = GeomAlgoAPI_ShapeProps_volume(anExtrusionResult.shape()) +aResVolume = GeomAlgoAPI_ShapeTools_volume(anExtrusionResult.shape()) assert (math.fabs(aResVolume - aRefVolume) < 10 ** -5) #========================================================================= @@ -193,8 +207,11 @@ assert (aClampExtrusionFt.getKind() == "Extrusion") # selection type FACE=4 aClampExtrusionFt.selectionList("base").append( aClampSketchResult, aClampSketchFaces[0]) -aClampExtrusionFt.real("from_size").setValue(0) +aClampExtrusionFt.string("CreationMethod").setValue("BySizes") aClampExtrusionFt.real("to_size").setValue(70) +aClampExtrusionFt.real("from_size").setValue(0) +aClampExtrusionFt.real("to_offset").setValue(0) #TODO: remove +aClampExtrusionFt.real("from_offset").setValue(0) #TODO: remove aClampExtrusionFt.execute() aSession.finishOperation() @@ -210,11 +227,13 @@ assert (anExtrusionFt.getKind() == "Extrusion") # selection type FACE=4 anExtrusionFt.selectionList("base").append( aCircleSketchResult, aCircleSketchFaces[0]) -aClampResult = aClampExtrusionFt.firstResult() -anExtrusionFt.selection("from_object").selectSubShape("face", "Extrusion_3/LateralFace_1") -anExtrusionFt.real("from_size").setValue(0) -anExtrusionFt.selection("to_object").selectSubShape("face", "Extrusion_3/LateralFace_2") -anExtrusionFt.real("to_size").setValue(0) +anExtrusionFt.string("CreationMethod").setValue("ByPlanesAndOffsets") +anExtrusionFt.real("to_size").setValue(0) #TODO: remove +anExtrusionFt.real("from_size").setValue(0) #TODO: remove +anExtrusionFt.selection("to_object").selectSubShape("face", "Extrusion_3_1/Generated_Face_2") +anExtrusionFt.real("to_offset").setValue(0) +anExtrusionFt.selection("from_object").selectSubShape("face", "Extrusion_3_1/Generated_Face_1") +anExtrusionFt.real("from_offset").setValue(0) anExtrusionFt.execute() aSession.finishOperation() @@ -226,3 +245,6 @@ assert (anExtrusionResult is not None) #========================================================================= # End of test #========================================================================= + +import model +assert(model.checkPythonDump())