From ec719e98fdc7eff261b42ef860a69dd629d7be6e Mon Sep 17 00:00:00 2001 From: Abdullah Tahiri Date: Wed, 7 Feb 2018 15:32:43 +0100 Subject: [PATCH] Sketcher: Expose Type as readonly python attribute --- src/Mod/Sketcher/App/ConstraintPy.xml | 6 ++++++ src/Mod/Sketcher/App/ConstraintPyImp.cpp | 23 +++++++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/src/Mod/Sketcher/App/ConstraintPy.xml b/src/Mod/Sketcher/App/ConstraintPy.xml index ec7bc24d08..4c264a2635 100644 --- a/src/Mod/Sketcher/App/ConstraintPy.xml +++ b/src/Mod/Sketcher/App/ConstraintPy.xml @@ -16,6 +16,12 @@ With this object you can handle sketches + + + Get the constraint type + + + First geometry index the Constraint refers to diff --git a/src/Mod/Sketcher/App/ConstraintPyImp.cpp b/src/Mod/Sketcher/App/ConstraintPyImp.cpp index 1a323fbfa1..33fce69462 100644 --- a/src/Mod/Sketcher/App/ConstraintPyImp.cpp +++ b/src/Mod/Sketcher/App/ConstraintPyImp.cpp @@ -528,6 +528,29 @@ std::string ConstraintPy::representation(void) const return result.str(); } +Py::String ConstraintPy::getType(void) const +{ + switch(this->getConstraintPtr()->Type) { + case None : return Py::String("None");break; + case DistanceX : return Py::String("DistanceX");break; + case DistanceY : return Py::String("DistanceY");break; + case Coincident : return Py::String("Coincident");break; + case Horizontal : return Py::String("Horizontal");break; + case Vertical : return Py::String("Vertical");break; + case Block : return Py::String("Block");break; + case Radius : return Py::String("Radius");break; + case Parallel : return Py::String("Parallel");break; + case Tangent : return Py::String("Tangent");break; + case Perpendicular : return Py::String("Perpendicular");break; + case Distance : return Py::String("Distance");break; + case Angle : return Py::String("Angle");break; + case Symmetric : return Py::String("Symmetric"); break; + case SnellsLaw : return Py::String("SnellsLaw"); break; + case InternalAlignment : return Py::String("InternalAlignment"); break; + default : return Py::String("Undefined");break; + } +} + Py::Long ConstraintPy::getFirst(void) const { return Py::Long(this->getConstraintPtr()->First);