Salome HOME
Simplified calculation of fly out distance and creation of constraints limited only...
[modules/shaper.git] / src / SketchPlugin / Test / TestConstraintEqual.py
index 66bfc3db2f294f94192156eb5bf997fe1ba2f197..751be751d52cb044582b19631421e81483301b43 100644 (file)
@@ -4,8 +4,8 @@
         
     SketchPlugin_ConstraintEqual
         static const std::string MY_CONSTRAINT_EQAUL_ID("SketchConstraintEqual");
-        data()->addAttribute(SketchPlugin_Constraint::ENTITY_A(), ModelAPI_AttributeRefAttr::type());
-        data()->addAttribute(SketchPlugin_Constraint::ENTITY_B(), ModelAPI_AttributeRefAttr::type());
+        data()->addAttribute(SketchPlugin_Constraint::ENTITY_A(), ModelAPI_AttributeRefAttr::typeId());
+        data()->addAttribute(SketchPlugin_Constraint::ENTITY_B(), ModelAPI_AttributeRefAttr::typeId());
 
 """
 from GeomDataAPI import *
@@ -24,13 +24,11 @@ aDocument = aSession.moduleDocument()
 #=========================================================================
 aSession.startOperation()
 aSketchCommonFeature = aDocument.addFeature("Sketch")
-aSketchFeature = modelAPI_CompositeFeature(aSketchCommonFeature)
+aSketchFeature = featureToCompositeFeature(aSketchCommonFeature)
 origin = geomDataAPI_Point(aSketchFeature.attribute("Origin"))
 origin.setValue(0, 0, 0)
 dirx = geomDataAPI_Dir(aSketchFeature.attribute("DirX"))
 dirx.setValue(1, 0, 0)
-diry = geomDataAPI_Dir(aSketchFeature.attribute("DirY"))
-diry.setValue(0, 1, 0)
 norm = geomDataAPI_Dir(aSketchFeature.attribute("Norm"))
 norm.setValue(0, 0, 1)
 aSession.finishOperation()
@@ -61,8 +59,8 @@ aSession.startOperation()
 aConstraintEqRad = aSketchFeature.addFeature("SketchConstraintEqual")
 aRefObjectA = aConstraintEqRad.refattr("ConstraintEntityA")
 aRefObjectB = aConstraintEqRad.refattr("ConstraintEntityB")
-aResultA = modelAPI_ResultConstruction(aSketchArc.firstResult())
-aResultB = modelAPI_ResultConstruction(aSketchCircle.firstResult())
+aResultA = modelAPI_ResultConstruction(aSketchArc.lastResult())
+aResultB = modelAPI_ResultConstruction(aSketchCircle.lastResult())
 assert (aResultA is not None)
 assert (aResultB is not None)
 aRefObjectA.setObject(aResultA)
@@ -72,11 +70,8 @@ aSession.finishOperation()
 aCircRadius = aCircleRadius.value();
 anArcVecX = anArcStartPoint.x() - anArcCentr.x();
 anArcVecY = anArcStartPoint.y() - anArcCentr.y();
-anArcRadius = math.sqrt(anArcVecX * anArcVecX + anArcVecY * anArcVecY)
-print anArcStartPoint.x(), anArcStartPoint.y()
-print anArcCentr.x(), anArcCentr.y()
-print aCircRadius, anArcRadius
-assert (aCircRadius == anArcRadius)
+anArcRadius = math.sqrt(anArcVecX**2 + anArcVecY**2)
+assert (math.fabs(aCircRadius - anArcRadius) <= 1.e-10)
 #=========================================================================
 # Creation of two different lines
 #=========================================================================
@@ -116,7 +111,7 @@ aVecY = aLine1StartPoint.y() - aLine1EndPoint.y();
 aLine1Len = math.sqrt(anArcVecX * anArcVecX + anArcVecY * anArcVecY)
 aVecX = aLine2StartPoint.x() - aLine2EndPoint.x();
 aVecY = aLine2StartPoint.y() - aLine2EndPoint.y();
-aLine2Len = math.sqrt(anArcVecX * anArcVecX + anArcVecY * anArcVecY)
+aLine2Len = math.sqrt(anArcVecX**2 + anArcVecY**2)
 assert (aLine1Len == aLine2Len)
 #=========================================================================
 # End of test