-#include "XGUI_Tools.h"
-
-#include <QDir>
-
-//******************************************************************
-QString library(const QString& str)
-{
- QString path = dir(str, false);
- QString name = file(str, false);
- QString ext = extension(str);
-
-#ifndef WIN32
- if ( !name.startsWith( "lib" ) )
- name = QString( "lib" ) + name;
-#endif
+// Copyright (C) 2014-20xx CEA/DEN, EDF R&D -->
-#ifdef WIN32
- QString libExt("dll");
-#else
- QString libExt( "so" );
-#endif
-
- if (ext.toLower() != QString("so") && ext.toLower() != QString("dll")) {
- if (!name.isEmpty() && !ext.isEmpty())
- name += QString(".");
- name += ext;
- }
+#include "XGUI_Tools.h"
- ext = libExt;
+#include <TopoDS_Shape.hxx>
+#include <ModelAPI_Object.h>
+#include <ModelAPI_Result.h>
+#include <ModelAPI_ResultParameter.h>
+#include <ModelAPI_Feature.h>
+#include <GeomAPI_Shape.h>
- QString fileName = addSlash(path) + name + QString(".") + ext;
+#include <QDir>
- return fileName;
-}
+#include <iostream>
+#include <sstream>
+namespace XGUI_Tools {
//******************************************************************
QString dir(const QString& path, bool isAbs)
{
QString file(const QString& path, bool withExt)
{
QString fPath = path;
- while(!fPath.isEmpty() && (fPath[fPath.length() - 1] == '\\' || fPath[fPath.length() - 1] == '/'))
+ while (!fPath.isEmpty() && (fPath[fPath.length() - 1] == '\\' || fPath[fPath.length() - 1] == '/'))
fPath.remove(fPath.length() - 1, 1);
if (withExt)
return QFileInfo(fPath).completeBaseName();
}
-//******************************************************************
-QString extension(const QString& path, bool full)
-{
- return full ? QFileInfo(path).completeSuffix() : QFileInfo(path).suffix();
-}
-
//******************************************************************
QString addSlash(const QString& path)
{
}
//******************************************************************
-QRect makeRect(const int x1, const int y1, const int x2, const int y2)
+bool isModelObject(FeaturePtr theFeature)
+{
+ return theFeature && !theFeature->data();
+}
+
+//******************************************************************
+std::string featureInfo(FeaturePtr theFeature)
{
- return QRect(qMin(x1, x2), qMin(y1, y2), qAbs(x2 - x1), qAbs(y2 - y1));
+ std::ostringstream aStream;
+ if (theFeature)
+ aStream << theFeature.get() << " " << theFeature->getKind();
+ return QString(aStream.str().c_str()).toStdString();
+}
+
+//******************************************************************
+/*FeaturePtr realFeature(const FeaturePtr theFeature)
+ {
+ if (theFeature->data()) {
+ return theFeature;
+ } else {
+ ObjectPtr aObject = std::dynamic_pointer_cast<ModelAPI_Object>(theFeature);
+ return aObject->featureRef();
+ }
+ }*/
+
+
+
}