TestPoint_FiniteValidator.py
TestPlane.py
TestPlane_ErrorMsg.py
+ TestPlane_FaceValidator.py
)
--- /dev/null
+## Copyright (C) 2018-20xx 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<mailto:webmaster.salome@opencascade.com>
+##
+
+from salome.shaper import model
+
+model.begin()
+partSet = model.moduleDocument()
+Part_1 = model.addPart(partSet)
+Part_1_doc = Part_1.document()
+Sphere_1 = model.addSphere(Part_1_doc, model.selection("VERTEX", "PartSet/Origin"), 10)
+Compound_1 = model.addCompound(Part_1_doc, [model.selection("FACE", "Sphere_1_1/Face_1")])
+
+Plane_1 = model.addPlane(Part_1_doc, model.selection("COMPOUND", (0, 0, 0)), 10, False)
+assert(Plane_1.feature().error() != "")
+Part_1_doc.removeFeature(Plane_1.feature())
+
+Plane_1 = model.addPlane(Part_1_doc, model.selection("EDGE", "[Compound_1_1_1/Compound_1_1_1&Sphere_1_1/Face_1][weak_name_3]"), 10, False)
+assert(Plane_1.feature().error() != "")
+Part_1_doc.removeFeature(Plane_1.feature())
+
+model.end()
TestPlacement_Face_Face.py
TestPlacement_Part_Part.py
TestPlacement_ErrorMsg.py
+ TestPlacement_BodyShapesValidator.py
TestTranslation.py
TestTranslation_Part.py
TestRotation.py
--- /dev/null
+## Copyright (C) 2018-20xx 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<mailto:webmaster.salome@opencascade.com>
+##
+
+from salome.shaper import model
+
+model.begin()
+partSet = model.moduleDocument()
+Part_1 = model.addPart(partSet)
+Part_1_doc = Part_1.document()
+model.do()
+
+Part_2 = model.addPart(partSet)
+Part_2_doc = Part_2.document()
+Box_1 = model.addBox(Part_2_doc, 10, 10, 10)
+model.do()
+
+Placement_1 = model.addPlacement(partSet, [model.selection("COMPOUND", "Part_2/")], model.selection("COMPOUND", "all-in-Part_1"), model.selection("FACE", "Part_2/Box_1_1/Top"), False, False)
+assert(Placement_1.feature().error() != "")
+Part_1_doc.removeFeature(Placement_1.feature())
+
+model.end()
// it is necessary to check whether the shape is face in order to set in selection a value
// with any type and check the type in this validator
// It is realized to select any object in OB and filter it in this validator (sketch plane)
- if (!aGeomShape->isFace()) {
- aValid = false;
- theError = "The shape is not a face.";
+ GeomAbs_SurfaceType aFaceType = GeomAbs_Plane;
+ if (theArguments.size() == 1)
+ aFaceType = faceType(theArguments.front());
+ if (aGeomShape->isFace()) {
+ aValid = isValidFace(aGeomShape, aFaceType, theError);
}
- else {
- GeomAbs_SurfaceType aFaceType = GeomAbs_Plane;
- if (theArguments.size() == 1) aFaceType = faceType(theArguments.front());
- if (aGeomShape->isFace()) {
- isValidFace(aGeomShape, aFaceType, theError);
- }
- else if (aSelectionAttr->isGeometricalSelection() && aGeomShape->isCompound()) {
- for (GeomAPI_ShapeIterator anIt(aGeomShape); anIt.more(); anIt.next()) {
- if (!isValidFace(anIt.current(), aFaceType, theError)) {
- break;
- }
- }
- }
- else {
- aValid = false;
- theError = "The shape is not a face.";
+ else if (aSelectionAttr->isGeometricalSelection() && aGeomShape->isCompound()) {
+ for (GeomAPI_ShapeIterator anIt(aGeomShape); anIt.more() && aValid; anIt.next()) {
+ aValid = isValidFace(anIt.current(), aFaceType, theError);
}
}
+ else {
+ aValid = false;
+ theError = "The shape is not a face.";
+ }
}
return aValid;
}