X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2FSketchPlugin%2FTest%2FTestSketchArcCircle.py;h=9ab1394e0b587a817150b2c8880ef2fce8872444;hb=29e40e5c48e4ac68c20cfc0bf202d6e01f7fb2e3;hp=4223d5c35d104583365f346c354538e8d3a2a320;hpb=d4813c98d8a022e99b37d0361d4fc15a193882d9;p=modules%2Fshaper.git diff --git a/src/SketchPlugin/Test/TestSketchArcCircle.py b/src/SketchPlugin/Test/TestSketchArcCircle.py index 4223d5c35..9ab1394e0 100644 --- a/src/SketchPlugin/Test/TestSketchArcCircle.py +++ b/src/SketchPlugin/Test/TestSketchArcCircle.py @@ -5,15 +5,15 @@ static const std::string MY_CENTER_ID = "ArcCenter"; static const std::string MY_START_ID = "ArcStartPoint"; static const std::string MY_END_ID = "ArcEndPoint"; - data()->addAttribute(SketchPlugin_Arc::CENTER_ID(), GeomDataAPI_Point2D::type()); - data()->addAttribute(SketchPlugin_Arc::START_ID(), GeomDataAPI_Point2D::type()); - data()->addAttribute(SketchPlugin_Arc::END_ID(), GeomDataAPI_Point2D::type()); + data()->addAttribute(SketchPlugin_Arc::CENTER_ID(), GeomDataAPI_Point2D::typeId()); + data()->addAttribute(SketchPlugin_Arc::START_ID(), GeomDataAPI_Point2D::typeId()); + data()->addAttribute(SketchPlugin_Arc::END_ID(), GeomDataAPI_Point2D::typeId()); static const std::string MY_CIRCLE_ID("SketchCircle"); static const std::string MY_CIRCLE_CENTER_ID("CircleCenter"); static const std::string MY_CIRCLE_RADIUS_ID("CircleRadius"); - data()->addAttribute(SketchPlugin_Circle::CENTER_ID(), GeomDataAPI_Point2D::type()); - data()->addAttribute(SketchPlugin_Circle::RADIUS_ID(), ModelAPI_AttributeDouble::type()); + data()->addAttribute(SketchPlugin_Circle::CENTER_ID(), GeomDataAPI_Point2D::typeId()); + data()->addAttribute(SketchPlugin_Circle::RADIUS_ID(), ModelAPI_AttributeDouble::typeId()); """ #========================================================================= @@ -22,7 +22,7 @@ from GeomDataAPI import * from ModelAPI import * -__updated__ = "2014-07-25" +__updated__ = "2014-10-28" aSession = ModelAPI_Session.get() aDocument = aSession.moduleDocument() @@ -30,49 +30,47 @@ aDocument = aSession.moduleDocument() # Creation of a sketch #========================================================================= aSession.startOperation() -aSketchFeature = aDocument.addFeature("Sketch") -aSketchFeatureData = aSketchFeature.data() -origin = geomDataAPI_Point(aSketchFeatureData.attribute("Origin")) +#aSketchFeature = aDocument.addFeature("Sketch") +aSketchCommonFeature = aDocument.addFeature("Sketch") +aSketchFeature = featureToCompositeFeature(aSketchCommonFeature) +origin = geomDataAPI_Point(aSketchFeature.attribute("Origin")) origin.setValue(0, 0, 0) -dirx = geomDataAPI_Dir(aSketchFeatureData.attribute("DirX")) +dirx = geomDataAPI_Dir(aSketchFeature.attribute("DirX")) dirx.setValue(1, 0, 0) -diry = geomDataAPI_Dir(aSketchFeatureData.attribute("DirY")) -diry.setValue(0, 1, 0) -norm = geomDataAPI_Dir(aSketchFeatureData.attribute("Norm")) +norm = geomDataAPI_Dir(aSketchFeature.attribute("Norm")) norm.setValue(0, 0, 1) aSession.finishOperation() #========================================================================= # Creation of an arc # 1. Test SketchPlugin_Arc attributes -# 2. +# 2. #========================================================================= aSession.startOperation() -aSketchReflist = aSketchFeatureData.reflist("Features") +aSketchReflist = aSketchFeature.reflist("Features") assert (not aSketchReflist.isInitialized()) assert (aSketchReflist.size() == 0) assert (len(aSketchReflist.list()) == 0) -aSketchArc = aDocument.addFeature("SketchArc") +aSketchArc = aSketchFeature.addFeature("SketchArc") assert (aSketchArc.getKind() == "SketchArc") -aSketchReflist.append(aSketchArc) -aSketchArcData = aSketchArc.data() -anArcCentr = geomDataAPI_Point2D(aSketchArcData.attribute("ArcCenter")) +anArcCentr = geomDataAPI_Point2D(aSketchArc.attribute("ArcCenter")) assert (anArcCentr.x() == 0) assert (anArcCentr.y() == 0) assert (not anArcCentr.isInitialized()) -anArcCentr.setValue(10.,10.) -anArcStartPoint = geomDataAPI_Point2D(aSketchArcData.attribute("ArcStartPoint")) +anArcCentr.setValue(10., 10.) +anArcStartPoint = geomDataAPI_Point2D( + aSketchArc.attribute("ArcStartPoint")) assert (anArcStartPoint.x() == 0) assert (anArcStartPoint.y() == 0) assert (not anArcStartPoint.isInitialized()) anArcStartPoint.setValue(0., 50.) -anArcEndPoint = geomDataAPI_Point2D(aSketchArcData.attribute("ArcEndPoint")) +anArcEndPoint = geomDataAPI_Point2D(aSketchArc.attribute("ArcEndPoint")) assert (anArcEndPoint.x() == 0) assert (anArcEndPoint.y() == 0) assert (not anArcEndPoint.isInitialized()) anArcEndPoint.setValue(50., 0.) aSession.finishOperation() # check that values have been changed -aSketchReflist = aSketchFeatureData.reflist("Features") +aSketchReflist = aSketchFeature.reflist("Features") assert (aSketchReflist.size() == 1) assert (len(aSketchReflist.list()) == 1) assert (anArcCentr.x() == 10.0) @@ -81,65 +79,66 @@ assert (anArcStartPoint.x() == 0.0) assert (anArcStartPoint.y() == 50.0) assert (anArcEndPoint.x() == 50.0) assert (anArcEndPoint.y() == 0.0) -#=============================================================================== +#========================================================================= # Edit the arc: # 1. Move whole arc -# 2. Change the start point -#=============================================================================== -aSession.startOperation() -deltaX, deltaY = 5., 10. -anArcCentr.setValue(anArcCentr.x() + deltaX, anArcCentr.y() + deltaY) -anArcStartPoint.setValue(anArcStartPoint.x() + deltaX, anArcStartPoint.y() + deltaY) -anArcEndPoint.setValue(anArcEndPoint.x() + deltaX, anArcEndPoint.y() + deltaY) -aSession.finishOperation() -assert (anArcCentr.x() == 15) -assert (anArcCentr.y() == 20) -assert (anArcStartPoint.x() == 5) -assert (anArcStartPoint.y() == 60) -assert (anArcEndPoint.x() == 55) -assert (anArcEndPoint.y() == 10) -# Change the start point -aSession.startOperation() -anArcStartPoint.setValue(anArcStartPoint.x() + deltaX, anArcStartPoint.y()) -aPrevEndPointX = anArcEndPoint.x() -aPrevEndPointY = anArcEndPoint.y() -aSession.finishOperation() -assert (anArcCentr.x() == 15) -assert (anArcCentr.y() == 20) -assert (anArcStartPoint.x() == 10) -assert (anArcStartPoint.y() == 60) -assert (anArcEndPoint.x() != aPrevEndPointX) -assert (anArcEndPoint.y() != aPrevEndPointY) +# 2. Change the start point +#========================================================================= + +# MPV: movement now is done little bit in different way, just move points causes changing them +# back t okeep the radius unchanged (projection back to the initial circle) +#aSession.startOperation() +#deltaX, deltaY = 5., 10. +#anArcCentr.setValue(anArcCentr.x() + deltaX, anArcCentr.y() + deltaY) +#anArcStartPoint.setValue( +# anArcStartPoint.x() + deltaX, anArcStartPoint.y() + deltaY) +#anArcEndPoint.setValue(anArcEndPoint.x() + deltaX, anArcEndPoint.y() + deltaY) +#aSession.finishOperation() +#assert (anArcCentr.y() == 20) +#assert (anArcStartPoint.x() == 5) +#assert (anArcStartPoint.y() == 60) +#assert (anArcEndPoint.x() == 55) +#assert (anArcEndPoint.y() == 10) +## Change the start point +#aSession.startOperation() +#anArcStartPoint.setValue(anArcStartPoint.x() + deltaX, anArcStartPoint.y()) +#aPrevEndPointX = anArcEndPoint.x() +#aPrevEndPointY = anArcEndPoint.y() +#aSession.finishOperation() +#assert (anArcCentr.x() == 15) +#assert (anArcCentr.y() == 20) +#assert (anArcStartPoint.x() == 10) +#assert (anArcStartPoint.y() == 60) +#assert (anArcEndPoint.x() != aPrevEndPointX) +#assert (anArcEndPoint.y() != aPrevEndPointY) #========================================================================= -# Check results of the Arc +# Check results of the Arc #========================================================================= aResult = aSketchArc.firstResult() aResultConstruction = modelAPI_ResultConstruction(aResult) aShape = aResultConstruction.shape() assert (aShape is not None) assert (not aShape.isNull()) -#=============================================================================== +#========================================================================= # Create a circle # 1. Test SketchPlugin_Circle.h attributes # 2. ModelAPI_AttributeDouble attribute -#=============================================================================== +#========================================================================= aSession.startOperation() -aSketchReflist = aSketchFeatureData.reflist("Features") +aSketchReflist = aSketchFeature.reflist("Features") # Arc is already added assert (aSketchReflist.size() == 1) assert (len(aSketchReflist.list()) == 1) -aSketchCircle = aDocument.addFeature("SketchCircle") +aSketchCircle = aSketchFeature.addFeature("SketchCircle") assert (aSketchCircle.getKind() == "SketchCircle") -aSketchReflist.append(aSketchCircle) -aSketchCircleData = aSketchCircle.data() -anCircleCentr = geomDataAPI_Point2D(aSketchCircleData.attribute("CircleCenter")) +anCircleCentr = geomDataAPI_Point2D(aSketchCircle.attribute("CircleCenter")) assert (anCircleCentr.x() == 0) assert (anCircleCentr.y() == 0) assert (not anCircleCentr.isInitialized()) -aCircleRadius = aSketchCircleData.real("CircleRadius"); +aCircleRadius = aSketchCircle.real("CircleRadius") assert (type(aCircleRadius) == ModelAPI_AttributeDouble) -# ModelAPI_AttributeDouble.type() is checked in ModelAPI_TestConstants -assert (aCircleRadius.attributeType() == ModelAPI_AttributeDouble.type()) +# ModelAPI_AttributeDouble.typeId() is checked in ModelAPI_TestConstants +assert (aCircleRadius.attributeType() == ModelAPI_AttributeDouble.typeId()) assert (aCircleRadius.value() == 0) anCircleCentr.setValue(-25., -25) aCircleRadius.setValue(25.) @@ -147,11 +146,11 @@ assert (anCircleCentr.x() == -25) assert (anCircleCentr.y() == -25) assert (aCircleRadius.value() == 25) aSession.finishOperation() -#=============================================================================== +#========================================================================= # Edit the Cricle # 1. Check that changing the centr of a circle does not affects radius # 2. and vise versa; also check that int is acceptable as well as a real -#=============================================================================== +#========================================================================= aSession.startOperation() anCircleCentr.setValue(10, 60) aSession.finishOperation() @@ -164,6 +163,6 @@ aSession.finishOperation() assert (anCircleCentr.x() == 10) assert (anCircleCentr.y() == 60) assert (aCircleRadius.value() == 20) -#=============================================================================== +#========================================================================= # End of test -#=============================================================================== +#=========================================================================