diff --git a/src/Mod/Part/App/FeaturePartCircle.h b/src/Mod/Part/App/FeaturePartCircle.h
index 1477df1f1..15dab6d75 100644
--- a/src/Mod/Part/App/FeaturePartCircle.h
+++ b/src/Mod/Part/App/FeaturePartCircle.h
@@ -47,10 +47,14 @@ public:
App::DocumentObjectExecReturn *execute(void);
short mustExecute() const;
void onChanged(const App::Property*);
- //@}
+ /// returns the type name of the ViewProvider
+ const char* getViewProviderName(void) const {
+ return "PartGui::ViewProviderCircleParametric";
+ }
private:
static App::PropertyFloatConstraint::Constraints angleRange;
+ //@}
};
} //namespace Part
diff --git a/src/Mod/Part/App/PrimitiveFeature.h b/src/Mod/Part/App/PrimitiveFeature.h
index 0c0b7b81d..4f1be5a9a 100644
--- a/src/Mod/Part/App/PrimitiveFeature.h
+++ b/src/Mod/Part/App/PrimitiveFeature.h
@@ -69,30 +69,34 @@ public:
void onChanged(const App::Property*);
//@}
};
-
-class PartExport Line : public Part::Primitive
-{
- PROPERTY_HEADER(Part::Line);
-
-public:
- Line();
- virtual ~Line();
-
- App::PropertyFloat X1;
- App::PropertyFloat Y1;
- App::PropertyFloat Z1;
- App::PropertyFloat X2;
- App::PropertyFloat Y2;
- App::PropertyFloat Z2;
-
- /** @name methods override feature */
- //@{
- /// recalculate the Feature
- App::DocumentObjectExecReturn *execute(void);
- short mustExecute() const;
- void onChanged(const App::Property*);
- //@}
-};
+
+class PartExport Line : public Part::Primitive
+{
+ PROPERTY_HEADER(Part::Line);
+
+public:
+ Line();
+ virtual ~Line();
+
+ App::PropertyFloat X1;
+ App::PropertyFloat Y1;
+ App::PropertyFloat Z1;
+ App::PropertyFloat X2;
+ App::PropertyFloat Y2;
+ App::PropertyFloat Z2;
+
+ /** @name methods override feature */
+ //@{
+ /// recalculate the Feature
+ App::DocumentObjectExecReturn *execute(void);
+ short mustExecute() const;
+ void onChanged(const App::Property*);
+ /// returns the type name of the ViewProvider
+ const char* getViewProviderName(void) const {
+ return "PartGui::ViewProviderLineParametric";
+ }
+ //@}
+};
class PartExport Plane : public Primitive
{
diff --git a/src/Mod/Part/Gui/AppPartGui.cpp b/src/Mod/Part/Gui/AppPartGui.cpp
index 17b65090a..d6a0967fe 100644
--- a/src/Mod/Part/Gui/AppPartGui.cpp
+++ b/src/Mod/Part/Gui/AppPartGui.cpp
@@ -36,6 +36,8 @@
#include "ViewProvider2DObject.h"
#include "ViewProviderMirror.h"
#include "ViewProviderBoolean.h"
+#include "ViewProviderCircleParametric.h"
+#include "ViewProviderLineParametric.h"
#include "DlgSettingsGeneral.h"
#include "DlgSettings3DViewPartImp.h"
@@ -112,6 +114,8 @@ void PartGuiExport initPartGui()
PartGui::ViewProviderBoolean ::init();
PartGui::ViewProviderMultiFuse ::init();
PartGui::ViewProviderMultiCommon ::init();
+ PartGui::ViewProviderCircleParametric ::init();
+ PartGui::ViewProviderLineParametric ::init();
PartGui::Workbench ::init();
diff --git a/src/Mod/Part/Gui/CMakeLists.txt b/src/Mod/Part/Gui/CMakeLists.txt
index 15f0d3335..ddec97a3b 100644
--- a/src/Mod/Part/Gui/CMakeLists.txt
+++ b/src/Mod/Part/Gui/CMakeLists.txt
@@ -136,6 +136,10 @@ SET(PartGui_SRCS
ViewProviderReference.h
ViewProviderBox.cpp
ViewProviderBox.h
+ ViewProviderCircleParametric.cpp
+ ViewProviderCircleParametric.h
+ ViewProviderLineParametric.cpp
+ ViewProviderLineParametric.h
ViewProviderCurveNet.cpp
ViewProviderCurveNet.h
ViewProviderImport.cpp
diff --git a/src/Mod/Part/Gui/Resources/Part.qrc b/src/Mod/Part/Gui/Resources/Part.qrc
index f1abadd4f..ac45d7f6d 100644
--- a/src/Mod/Part/Gui/Resources/Part.qrc
+++ b/src/Mod/Part/Gui/Resources/Part.qrc
@@ -33,6 +33,11 @@
icons/preferences-part_design.svgicons/Tree_Part.svgicons/Part_CheckGeometry.svg
+ icons/Part_Ellipse_Parametric.svg
+ icons/Part_Helix_Parametric.svg
+ icons/Part_Line_Parametric.svg
+ icons/Part_Circle_Parametric.svg
+ icons/Part_Point_Parametric.svgtranslations/Part_af.qmtranslations/Part_de.qmtranslations/Part_fi.qm
diff --git a/src/Mod/Part/Gui/Resources/icons/Part_Circle_Parametric.svg b/src/Mod/Part/Gui/Resources/icons/Part_Circle_Parametric.svg
new file mode 100644
index 000000000..0f23f90ed
--- /dev/null
+++ b/src/Mod/Part/Gui/Resources/icons/Part_Circle_Parametric.svg
@@ -0,0 +1,197 @@
+
+
+
+
diff --git a/src/Mod/Part/Gui/Resources/icons/Part_Ellipse_Parametric.svg b/src/Mod/Part/Gui/Resources/icons/Part_Ellipse_Parametric.svg
new file mode 100644
index 000000000..f3d6e5fa7
--- /dev/null
+++ b/src/Mod/Part/Gui/Resources/icons/Part_Ellipse_Parametric.svg
@@ -0,0 +1,208 @@
+
+
+
+
diff --git a/src/Mod/Part/Gui/Resources/icons/Part_Helix_Parametric.svg b/src/Mod/Part/Gui/Resources/icons/Part_Helix_Parametric.svg
new file mode 100644
index 000000000..333781322
--- /dev/null
+++ b/src/Mod/Part/Gui/Resources/icons/Part_Helix_Parametric.svg
@@ -0,0 +1,230 @@
+
+
+
+
diff --git a/src/Mod/Part/Gui/Resources/icons/Part_Line_Parametric.svg b/src/Mod/Part/Gui/Resources/icons/Part_Line_Parametric.svg
new file mode 100644
index 000000000..685498cf3
--- /dev/null
+++ b/src/Mod/Part/Gui/Resources/icons/Part_Line_Parametric.svg
@@ -0,0 +1,180 @@
+
+
+
+
diff --git a/src/Mod/Part/Gui/Resources/icons/Part_Point_Parametric.svg b/src/Mod/Part/Gui/Resources/icons/Part_Point_Parametric.svg
new file mode 100644
index 000000000..1a0509b48
--- /dev/null
+++ b/src/Mod/Part/Gui/Resources/icons/Part_Point_Parametric.svg
@@ -0,0 +1,172 @@
+
+
+
+
diff --git a/src/Mod/Part/Gui/ViewProviderBox.cpp b/src/Mod/Part/Gui/ViewProviderBox.cpp
index d04880dbe..f6a81705e 100644
--- a/src/Mod/Part/Gui/ViewProviderBox.cpp
+++ b/src/Mod/Part/Gui/ViewProviderBox.cpp
@@ -48,7 +48,7 @@ PROPERTY_SOURCE(PartGui::ViewProviderBox, PartGui::ViewProviderPart)
ViewProviderBox::ViewProviderBox()
{
- sPixmap = "PartFeatureImport";
+ sPixmap = "Part_Box.svg";
}
ViewProviderBox::~ViewProviderBox()
diff --git a/src/Mod/Part/Gui/ViewProviderCircleParametric.cpp b/src/Mod/Part/Gui/ViewProviderCircleParametric.cpp
new file mode 100644
index 000000000..e458624a5
--- /dev/null
+++ b/src/Mod/Part/Gui/ViewProviderCircleParametric.cpp
@@ -0,0 +1,75 @@
+/***************************************************************************
+ * Copyright (c) 2004 Jürgen Riegel *
+ * *
+ * This file is part of the FreeCAD CAx development system. *
+ * *
+ * This library is free software; you can redistribute it and/or *
+ * modify it under the terms of the GNU Library General Public *
+ * License as published by the Free Software Foundation; either *
+ * version 2 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 Library General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Library General Public *
+ * License along with this library; see the file COPYING.LIB. If not, *
+ * write to the Free Software Foundation, Inc., 59 Temple Place, *
+ * Suite 330, Boston, MA 02111-1307, USA *
+ * *
+ ***************************************************************************/
+
+
+#include "PreCompiled.h"
+
+#ifndef _PreComp_
+#endif
+
+/// Here the FreeCAD includes sorted by Base,App,Gui......
+#include
+
+#include "ViewProviderCircleParametric.h"
+
+
+//#include "Tree.h"
+
+
+
+using namespace PartGui;
+using namespace std;
+
+
+//**************************************************************************
+// Construction/Destruction
+
+PROPERTY_SOURCE(PartGui::ViewProviderCircleParametric, PartGui::ViewProviderPart)
+
+
+ViewProviderCircleParametric::ViewProviderCircleParametric()
+{
+ sPixmap = "Part_Circle_Parametric.svg";
+}
+
+ViewProviderCircleParametric::~ViewProviderCircleParametric()
+{
+
+}
+
+
+
+// **********************************************************************************
+
+std::vector ViewProviderCircleParametric::getDisplayModes(void) const
+{
+ // get the modes of the father
+ std::vector StrList;
+
+ // add your own modes
+ StrList.push_back("Flat Lines");
+ StrList.push_back("Shaded");
+ StrList.push_back("Wireframe");
+ StrList.push_back("Points");
+
+ return StrList;
+}
diff --git a/src/Mod/Part/Gui/ViewProviderCircleParametric.h b/src/Mod/Part/Gui/ViewProviderCircleParametric.h
new file mode 100644
index 000000000..888a0d98f
--- /dev/null
+++ b/src/Mod/Part/Gui/ViewProviderCircleParametric.h
@@ -0,0 +1,64 @@
+/***************************************************************************
+ * Copyright (c) 2004 Jürgen Riegel *
+ * *
+ * This file is part of the FreeCAD CAx development system. *
+ * *
+ * This library is free software; you can redistribute it and/or *
+ * modify it under the terms of the GNU Library General Public *
+ * License as published by the Free Software Foundation; either *
+ * version 2 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 Library General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Library General Public *
+ * License along with this library; see the file COPYING.LIB. If not, *
+ * write to the Free Software Foundation, Inc., 59 Temple Place, *
+ * Suite 330, Boston, MA 02111-1307, USA *
+ * *
+ ***************************************************************************/
+
+
+#ifndef PARTGUI_VIEWPROVIDERCIRCLEPARAMETRIC_H
+#define PARTGUI_VIEWPROVIDERCIRCLEPARAMETRIC_H
+
+#include "ViewProvider.h"
+
+
+class TopoDS_Shape;
+class TopoDS_Face;
+class SoSeparator;
+class SbVec3f;
+class SoTransform;
+
+namespace Gui {
+ class View3DInventorViewer;
+ class SoFCSelection;
+}
+
+namespace PartGui {
+
+
+class PartGuiExport ViewProviderCircleParametric:public ViewProviderPart
+{
+ PROPERTY_HEADER(PartGui::ViewProviderCircleParametric);
+
+public:
+ /// constructor
+ ViewProviderCircleParametric();
+ /// destructor
+ virtual ~ViewProviderCircleParametric();
+
+ std::vector getDisplayModes(void) const;
+
+protected:
+
+};
+
+} // namespace PartGui
+
+
+#endif // PARTGUI_VIEWPROVIDERCIRCLEPARAMETRIC_H
+
diff --git a/src/Mod/Part/Gui/ViewProviderLineParametric.cpp b/src/Mod/Part/Gui/ViewProviderLineParametric.cpp
new file mode 100644
index 000000000..f032fbe05
--- /dev/null
+++ b/src/Mod/Part/Gui/ViewProviderLineParametric.cpp
@@ -0,0 +1,75 @@
+/***************************************************************************
+ * Copyright (c) 2004 Jürgen Riegel *
+ * *
+ * This file is part of the FreeCAD CAx development system. *
+ * *
+ * This library is free software; you can redistribute it and/or *
+ * modify it under the terms of the GNU Library General Public *
+ * License as published by the Free Software Foundation; either *
+ * version 2 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 Library General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Library General Public *
+ * License along with this library; see the file COPYING.LIB. If not, *
+ * write to the Free Software Foundation, Inc., 59 Temple Place, *
+ * Suite 330, Boston, MA 02111-1307, USA *
+ * *
+ ***************************************************************************/
+
+
+#include "PreCompiled.h"
+
+#ifndef _PreComp_
+#endif
+
+/// Here the FreeCAD includes sorted by Base,App,Gui......
+#include
+
+#include "ViewProviderLineParametric.h"
+
+
+//#include "Tree.h"
+
+
+
+using namespace PartGui;
+using namespace std;
+
+
+//**************************************************************************
+// Construction/Destruction
+
+PROPERTY_SOURCE(PartGui::ViewProviderLineParametric, PartGui::ViewProviderPart)
+
+
+ViewProviderLineParametric::ViewProviderLineParametric()
+{
+ sPixmap = "Part_Line_Parametric.svg";
+}
+
+ViewProviderLineParametric::~ViewProviderLineParametric()
+{
+
+}
+
+
+
+// **********************************************************************************
+
+std::vector ViewProviderLineParametric::getDisplayModes(void) const
+{
+ // get the modes of the father
+ std::vector StrList;
+
+ // add your own modes
+ StrList.push_back("Flat Lines");
+ StrList.push_back("Shaded");
+ StrList.push_back("Wireframe");
+ StrList.push_back("Points");
+
+ return StrList;
+}
diff --git a/src/Mod/Part/Gui/ViewProviderLineParametric.h b/src/Mod/Part/Gui/ViewProviderLineParametric.h
new file mode 100644
index 000000000..aff41d1c0
--- /dev/null
+++ b/src/Mod/Part/Gui/ViewProviderLineParametric.h
@@ -0,0 +1,64 @@
+/***************************************************************************
+ * Copyright (c) 2004 Jürgen Riegel *
+ * *
+ * This file is part of the FreeCAD CAx development system. *
+ * *
+ * This library is free software; you can redistribute it and/or *
+ * modify it under the terms of the GNU Library General Public *
+ * License as published by the Free Software Foundation; either *
+ * version 2 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 Library General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Library General Public *
+ * License along with this library; see the file COPYING.LIB. If not, *
+ * write to the Free Software Foundation, Inc., 59 Temple Place, *
+ * Suite 330, Boston, MA 02111-1307, USA *
+ * *
+ ***************************************************************************/
+
+
+#ifndef PARTGUI_VIEWPROVIDERLINEPARAMETRIC_H
+#define PARTGUI_VIEWPROVIDERLINEPARAMETRIC_H
+
+#include "ViewProvider.h"
+
+
+class TopoDS_Shape;
+class TopoDS_Face;
+class SoSeparator;
+class SbVec3f;
+class SoTransform;
+
+namespace Gui {
+ class View3DInventorViewer;
+ class SoFCSelection;
+}
+
+namespace PartGui {
+
+
+class PartGuiExport ViewProviderLineParametric:public ViewProviderPart
+{
+ PROPERTY_HEADER(PartGui::ViewProviderLineParametric);
+
+public:
+ /// constructor
+ ViewProviderLineParametric();
+ /// destructor
+ virtual ~ViewProviderLineParametric();
+
+ std::vector getDisplayModes(void) const;
+
+protected:
+
+};
+
+} // namespace PartGui
+
+
+#endif // PARTGUI_VIEWPROVIDERCIRCLEPARAMETRIC_H
+