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 *
#=========================================================================
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()
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)
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
#=========================================================================
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