// tage of the child of my label that contains information about the operator
static const Standard_GUID GUID_MUST_BE_UPDATED("6647e1f7-1971-4c5a-86c7-11ff0291452d");
-#define PYTHON_POLYLINE_ID "2"
+#define PYTHON_POLYLINE_ID "KIND_POLYLINE"
IMPLEMENT_STANDARD_HANDLE(HYDROData_Polyline, HYDROData_Object)
IMPLEMENT_STANDARD_RTTIEXT(HYDROData_Polyline, HYDROData_Object)
return aRes;
}
+/**
+ * Returns true if polyline is closed
+ */
+bool HYDROData_Polyline::isClosed() const
+{
+ int aDim = getDimension();
+ PolylineData aPolylineData = getPolylineData();
+
+ if ( aDim == 0 || aPolylineData.isEmpty() )
+ return false;
+
+ PolylineData::const_iterator anIt = aPolylineData.constBegin();
+ for ( ; anIt != aPolylineData.constEnd(); ++anIt )
+ {
+ const PolylineSection& aSection = *anIt;
+ if ( !aSection.myIsClosed )
+ return false;
+ }
+
+ return true;
+}
+
/**
* Remove all polyline attributes except dimension.
*/
* is ignored section type.
* \return polyline painter path.
*/
-QPainterPath HYDROData_Polyline::painterPath()
+QPainterPath HYDROData_Polyline::painterPath() const
{
QPainterPath aPath;
int aDim = getDimension();