X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSketchPlugin%2FTest%2FTestConstraintEqual.py;h=86182fbd574f0faa0086591c3e5077efc30805b9;hb=50a8df0c6a66da8067b16155e5ae39f8f26a7ebc;hp=c8d4917b4c36ec9900225bfb6e763f1a22a0df55;hpb=83e4015d7099a1f87aae13a2811590dac27a6344;p=modules%2Fshaper.git diff --git a/src/SketchPlugin/Test/TestConstraintEqual.py b/src/SketchPlugin/Test/TestConstraintEqual.py index c8d4917b4..86182fbd5 100644 --- a/src/SketchPlugin/Test/TestConstraintEqual.py +++ b/src/SketchPlugin/Test/TestConstraintEqual.py @@ -1,7 +1,26 @@ +# Copyright (C) 2014-2020 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# + """ TestConstraintEqual.py Unit test of SketchPlugin_ConstraintEqual class - + SketchPlugin_ConstraintEqual static const std::string MY_CONSTRAINT_EQAUL_ID("SketchConstraintEqual"); data()->addAttribute(SketchPlugin_Constraint::ENTITY_A(), ModelAPI_AttributeRefAttr::typeId()); @@ -31,11 +50,11 @@ def externalSketch(theDoc): norm = geomDataAPI_Dir(aSketchFeature.attribute("Norm")) norm.setValue(0, 0, 1) # add circle defined by 3 points - circle = aSketchFeature.addFeature("SketchCircle") - circle.string("CircleType").setValue("ThreePoints") - geomDataAPI_Point2D(circle.attribute("FirstPoint")).setValue(-40., 50.) - geomDataAPI_Point2D(circle.attribute("SecondPoint")).setValue(-50., 60.) - geomDataAPI_Point2D(circle.attribute("ThirdPoint")).setValue(-60., 50.) + circle = aSketchFeature.addFeature("SketchMacroCircle") + circle.string("circle_type").setValue("circle_type_by_three_points") + geomDataAPI_Point2D(circle.attribute("first_point")).setValue(-40., 50.) + geomDataAPI_Point2D(circle.attribute("second_point")).setValue(-50., 60.) + geomDataAPI_Point2D(circle.attribute("third_point")).setValue(-60., 50.) # add line line = aSketchFeature.addFeature("SketchLine") lineStart = geomDataAPI_Point2D(line.attribute("StartPoint")) @@ -80,19 +99,19 @@ aSession.finishOperation() #========================================================================= aSession.startOperation() aSketchArc = aSketchFeature.addFeature("SketchArc") -anArcCentr = geomDataAPI_Point2D(aSketchArc.attribute("ArcCenter")) +anArcCentr = geomDataAPI_Point2D(aSketchArc.attribute("center_point")) anArcCentr.setValue(10., 10.) -anArcStartPoint = geomDataAPI_Point2D(aSketchArc.attribute("ArcStartPoint")) +anArcStartPoint = geomDataAPI_Point2D(aSketchArc.attribute("start_point")) anArcStartPoint.setValue(0., 50.) -anArcEndPoint = geomDataAPI_Point2D(aSketchArc.attribute("ArcEndPoint")) +anArcEndPoint = geomDataAPI_Point2D(aSketchArc.attribute("end_point")) anArcEndPoint.setValue(50., 0.) aSession.finishOperation() assert (model.dof(aSketchFeature) == 5) # Circle aSession.startOperation() aSketchCircle = aSketchFeature.addFeature("SketchCircle") -anCircleCentr = geomDataAPI_Point2D(aSketchCircle.attribute("CircleCenter")) -aCircleRadius = aSketchCircle.real("CircleRadius") +anCircleCentr = geomDataAPI_Point2D(aSketchCircle.attribute("circle_center")) +aCircleRadius = aSketchCircle.real("circle_radius") anCircleCentr.setValue(-25., -25.) aCircleRadius.setValue(25.) aSession.finishOperation() @@ -123,11 +142,11 @@ assert (model.dof(aSketchFeature) == 7) #========================================================================= aSession.startOperation() anExtCircle = aSketchFeature.addFeature("SketchCircle") -anExtCircleCenter = geomDataAPI_Point2D(anExtCircle.attribute("CircleCenter")) -anExtCircleRadius = anExtCircle.real("CircleRadius") +anExtCircleCenter = geomDataAPI_Point2D(anExtCircle.attribute("circle_center")) +anExtCircleRadius = anExtCircle.real("circle_radius") anExtCircleCenter.setValue(-50., 50.) anExtCircleRadius.setValue(10.) -anExtCircle.selection("External").selectSubShape("EDGE", "Sketch_1/Edge-SketchCircle_1_2") +anExtCircle.selection("External").selectSubShape("EDGE", "Sketch_1/SketchCircle_1_2") aSession.finishOperation() assert (model.dof(aSketchFeature) == 7) aSession.startOperation() @@ -192,7 +211,7 @@ anExtLineStart = geomDataAPI_Point2D(anExtLine.attribute("StartPoint")) anExtLineEnd = geomDataAPI_Point2D(anExtLine.attribute("EndPoint")) anExtLineStart.setValue(-40., 35.) anExtLineEnd.setValue(-60., 25.) -anExtLine.selection("External").selectSubShape("EDGE", "Sketch_1/Edge-SketchLine_1") +anExtLine.selection("External").selectSubShape("EDGE", "Sketch_1/SketchLine_1") anExtLineLen = lineLength(anExtLine) aSession.finishOperation() assert (model.dof(aSketchFeature) == 13) @@ -209,6 +228,13 @@ assert (math.fabs(aLine1Len - anExtLineLen) < 1.e-10) assert (math.fabs(aLine2Len - anExtLineLen) < 1.e-10) assert (model.dof(aSketchFeature) == 12) #========================================================================= +# Remove costraint to check the DOF +#========================================================================= +aSession.startOperation() +aDocument.removeFeature(aConstraintEqLen2) +aSession.finishOperation() +assert (model.dof(aSketchFeature) == 13) +#========================================================================= # End of test #=========================================================================