diff --git a/src/Mod/Part/App/TopoShapeEdgePy.xml b/src/Mod/Part/App/TopoShapeEdgePy.xml
index 59a4a1eb4..bc37223f0 100644
--- a/src/Mod/Part/App/TopoShapeEdgePy.xml
+++ b/src/Mod/Part/App/TopoShapeEdgePy.xml
@@ -109,6 +109,11 @@ Part.show(s)
Splits the edge at the given parameter values and builds a wire out of it
+
+
+ isSeam(Face) - Checks whether the edge is a seam edge.
+
+
Set or get the tolerance of the vertex
diff --git a/src/Mod/Part/App/TopoShapeEdgePyImp.cpp b/src/Mod/Part/App/TopoShapeEdgePyImp.cpp
index 8b46c21bd..203221bc5 100644
--- a/src/Mod/Part/App/TopoShapeEdgePyImp.cpp
+++ b/src/Mod/Part/App/TopoShapeEdgePyImp.cpp
@@ -52,6 +52,7 @@
# include
# include
# include
+# include
# include
#endif
@@ -628,6 +629,27 @@ PyObject* TopoShapeEdgePy::split(PyObject *args)
return 0;
}
+PyObject* TopoShapeEdgePy::isSeam(PyObject *args)
+{
+ PyObject* face;
+ if (!PyArg_ParseTuple(args, "O!", &TopoShapeFacePy::Type, &face))
+ return 0;
+
+ try {
+ const TopoDS_Edge& e = TopoDS::Edge(this->getTopoShapePtr()->_Shape);
+ const TopoDS_Face& f = TopoDS::Face(static_cast(face)->getTopoShapePtr()->_Shape);
+
+ ShapeAnalysis_Edge sa;
+ Standard_Boolean ok = sa.IsSeam(e, f);
+ return PyBool_FromLong(ok ? 1 : 0);
+ }
+ catch (Standard_Failure) {
+ Handle_Standard_Failure e = Standard_Failure::Caught();
+ PyErr_SetString(PartExceptionOCCError, e->GetMessageString());
+ return 0;
+ }
+}
+
PyObject* TopoShapeEdgePy::setTolerance(PyObject *args)
{
double tol;