From 74ccd03bbb0d315890c1ae77c09cedaff2927825 Mon Sep 17 00:00:00 2001 From: jfa Date: Mon, 21 Mar 2011 12:43:51 +0000 Subject: [PATCH] IMPs 21044, 21057, 21067 --- doc/salome/gui/GEOM/input/creating_curve.doc | 13 ++++-- .../gui/GEOM/input/creating_extrusion.doc | 40 ++++++++++++------- src/GenerationGUI/GenerationGUI_PrismDlg.cxx | 8 ++-- 3 files changed, 39 insertions(+), 22 deletions(-) diff --git a/doc/salome/gui/GEOM/input/creating_curve.doc b/doc/salome/gui/GEOM/input/creating_curve.doc index 6cf48d947..f5ccdf270 100644 --- a/doc/salome/gui/GEOM/input/creating_curve.doc +++ b/doc/salome/gui/GEOM/input/creating_curve.doc @@ -13,17 +13,22 @@ possible types of curves: Polyline, Besier or B-spline (Interpolated). \n TUI Commands: ListOfShape is a list of points through which the curve passes. -If isClosed is True, MakeInterpol builds a closed edge. +If isClosed is True, MakeBezier and MakeInterpol builds a closed edge, +MakePolyline builds a closed wire. If doReordering is True, +MakeInterpol does not follow the order of vertices but searches for the +closest vertex. Arguments: Name + at least 2 points which will serve as nodes on the curve. \image html curve.png +\image html curve1.png +\image html curve2.png Examples: diff --git a/doc/salome/gui/GEOM/input/creating_extrusion.doc b/doc/salome/gui/GEOM/input/creating_extrusion.doc index afd78e1f6..01947eb80 100644 --- a/doc/salome/gui/GEOM/input/creating_extrusion.doc +++ b/doc/salome/gui/GEOM/input/creating_extrusion.doc @@ -11,37 +11,47 @@ solid or compsolid). \n Firstly, you can define the Base Shape (a basis of the extrusion), the \b Vector (a direction of the extrusion) and the \b -Height of extrusion.
-It is possible to select in GUI several Base Shapes to make several extrusions (using Shift button). +Height of extrusion. Optionally you can define the Scale Factor to +build extrusion with scaled opposite base. Scaling is possible only +with 1D and 2D bases. +
It is possible to select in GUI several Base Shapes to make +several extrusions (using Shift button). \n The \b Result of the operation will be a GEOM_Object (edge, face, shell, solid or compsolid). -\n Both Directions checkbox allows extruiding the source -object both forward and backward. -\n TUI Command: geompy.MakePrismVecH(Base, Vector, Height) +\n Both Directions checkbox allows extruding the source +object both forward and backward. With this option scaling is not possible. +\n TUI Command: geompy.MakePrismVecH(Base, Vector, Height, theScaleFactor = -1.0) \n Arguments: Name + one or several shapes (vertex, edge, planar wire, face or shell) serving as base objects + 1 vector (for direction of the -extrusion) + 1 value (dimension). +extrusion) + 1 value (dimension) + 1 optional value (scale factor for +the opposite base). \image html extrusion1.png \n Secondly, you can define the \b Extrusion by the Base Shape(s) and the \b Start and End Point of the \b Vector (in this way -you don't need to create it in advance). -\n Both Directions checkbox allows extruiding the source -object both forward and backward. -\n TUI Command: geompy.MakePrism(Base, Point1, Point2) +you don't need to create it in advance). Optionally you can define the +Scale Factor to build extrusion with scaled opposite +base. Scaling is possible only with 1D and 2D bases. +\n Both Directions checkbox allows extruding the source +object both forward and backward. With this option scaling is not possible. +\n TUI Command: geompy.MakePrism(Base, Point1, Point2, theScaleFactor = -1.0) \n Arguments: Name + one or several shapes (vertex, edge, planar wire, face or -shell) serving as base objects + 2 vertices. +shell) serving as base objects + 2 vertices + 1 optional value (scale factor for +the opposite base). \image html extrusion2.png \n Finally, you can define the \b Extrusion by the Base Shape(s) -and the DX, DY, DZ Vector\n +and the DX, DY, DZ Vector. Optionally you can define the +Scale Factor to build extrusion with scaled opposite +base. Scaling is possible only with 1D and 2D bases.\n Both Directions checkbox allows extruding the -source objects both forward and backward. -\n TUI Command: geompy.MakePrismDXDYDZ(Base, dx, dy, dz) +source objects both forward and backward. With this option scaling is not possible. +\n TUI Command: geompy.MakePrismDXDYDZ(Base, dx, dy, dz, theScaleFactor = -1.0) \n Arguments: Name + one or several shapes (vertex, edge, planar wire, face or -shell) serving as base objects + 3 axis directions. +shell) serving as base objects + 3 axis directions + 1 optional value (scale factor for +the opposite base). \image html extrusion3.png diff --git a/src/GenerationGUI/GenerationGUI_PrismDlg.cxx b/src/GenerationGUI/GenerationGUI_PrismDlg.cxx index bc2b10168..d51cdd648 100644 --- a/src/GenerationGUI/GenerationGUI_PrismDlg.cxx +++ b/src/GenerationGUI/GenerationGUI_PrismDlg.cxx @@ -41,6 +41,7 @@ #include #include #include +#include #include @@ -142,6 +143,7 @@ void GenerationGUI_PrismDlg::Init() // min, max, step and decimals for spin boxes & initial values double aScaleFactor = 2.0; double aScaleStep = 0.5; + double aScaleMin = Precision::Confusion() * 10.0; initSpinBox(GroupVecH->SpinBox_DX, COORD_MIN, COORD_MAX, step, "length_precision" ); GroupVecH->SpinBox_DX->setValue(100.0); @@ -153,9 +155,9 @@ void GenerationGUI_PrismDlg::Init() GroupDXDYDZ->SpinBox_DY->setValue(0.0); GroupDXDYDZ->SpinBox_DZ->setValue(0.0); - initSpinBox(GroupVecH->SpinBox_DY, 0.0, COORD_MAX, aScaleStep, "parametric_precision" ); - initSpinBox(Group2Points->SpinBox1, 0.0, COORD_MAX, aScaleStep, "parametric_precision" ); - initSpinBox(GroupDXDYDZ->SpinBox_SC, 0.0, COORD_MAX, aScaleStep, "parametric_precision" ); + initSpinBox(GroupVecH->SpinBox_DY, aScaleMin, COORD_MAX, aScaleStep, "parametric_precision" ); + initSpinBox(Group2Points->SpinBox1, aScaleMin, COORD_MAX, aScaleStep, "parametric_precision" ); + initSpinBox(GroupDXDYDZ->SpinBox_SC, aScaleMin, COORD_MAX, aScaleStep, "parametric_precision" ); GroupVecH->SpinBox_DY->setValue(aScaleFactor); Group2Points->SpinBox1->setValue(aScaleFactor); -- 2.39.2