Commit Graph

3597 Commits

Author SHA1 Message Date
Abdullah Tahiri
c438a9a093 Sketcher: Construction Mode Icons 2015-05-30 16:39:28 +02:00
Abdullah Tahiri
83dfb0277a Sketcher new Feature: Creation Mode of geometry
===============================================

It allows to select whether the geometry will be created as construction geometry or normal geometry.

This commit includes an important bug fix to reduce the number of times the sketcher solver is called when toggling
geometry. It makes an important difference in the creation during construction mode and InternalAligment geometry like the ellipse.

This commit does not include icons.

You have a button next to toggle that after having been clicked, switches from Normal to Construction geometry and vice versa
2015-05-30 16:39:28 +02:00
Abdullah Tahiri
c47e29c54c Sketcher: New Feature: External Geometry Linking improvement
============================================================

It lifts the need of clicking on the external geometry icon upon importing each external geometry element.

All the elements on which the user clicks are imported until the user right clicks with the mouse or presses ESC, like the Trim or Fillet tools.
2015-05-30 16:39:27 +02:00
Abdullah Tahiri
213b9e2dda Sketcher: New Feature: Continuous creation mode
===============================================

When creating a type of geometric element, the user can create as many elements of that type he wishes without having to click the button before each insertion.

The insertion of that type of elements ends by pressing ESC or clicking the right button of the mouse.

This mode is by default disabled and can be enabled in Preferences->Display->Sketch->Geometry Creation "Continue Mode".
2015-05-30 16:39:26 +02:00
Abdullah Tahiri
18e5aed762 Sketcher bug fixes: Non-driving constraints editable on double click and color settings not working
===================================================================================================

This fixes a bug in the original implementation, that a non-driving constraint value could be
edited by double clicking on it in the 3D view.

It also includes minimal documentation on some functions.

It also includes:
- Color setting for non-driving constraints was not working.
- Settle UI terminology dispute:
  * Driving Constraint (normal red constraint)
  * Reference Constraint (non-driving constraint)
2015-05-30 16:39:26 +02:00
Abdullah Tahiri
79c7c4fdf4 Sketcher New Feature: Non-driving constraints Icons by bejant
=============================================================

Nice icons to differentiate driving from non-driving constraints by bejant
2015-05-30 16:39:25 +02:00
Abdullah Tahiri
f59ef75cfa Sketcher new Feature: Non-driving constraints (aka Driven constraints or dimensions)
====================================================================================

It allows to enable and disable a constraint in the constraint list.

When disabled, the constraints current value is shown, but its value is not enforced (it is driven by the other constraints and user interaction).

A disabled constraint can be enabled (as far as it is enforceable, see non-driving constraints to external geometry below).

The sketcher functionality has been extended to support non-driving constraints to external geometry elements. This were previously excluded from
the possibility of creating a constraint on them (as their values depend on other sketches and would be redundant with the unchanged value or conflicting when value is changed).
Now these constraints are created as non-driving, but as they are not enforceable, the UI does not allow you to make them driving.

The constraint filter has been extended to include a Non-Driving constraints category.

Thanks again to Werner for his continuous support, and specially in this case to DeepSOIC, as he pointed towards a much better implementation solution than my original idea.
2015-05-30 16:39:25 +02:00
Abdullah Tahiri
277cd14f1f Bug fix: Sketcher Polygon autoconstraints
=========================================

The autoconstraints on creation of an hexagon were not working.

How to reproduce?
1. In a sketch make a couple of lines
2. Create an hexagon (or other polygon of your choice) with center in one end of a line and with side coincident with the end point of the other line

Result:
Neither the center nor the side autoconstraints are properly created.

Fix:
Straightforward. Just correct the indexes. Last is always the circle. Last but one is always a side.
2015-05-27 16:22:31 +02:00
wmayer
a996650a1d + fix whitespaces 2015-05-26 17:55:38 +02:00
Przemo Firszt
d51d1df63e FEM: fix white spaces in ccxInpWriter.py
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-26 14:33:43 +01:00
Przemo Firszt
1dd7e5925a FEM: Add ConstraintPressure
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-26 14:17:45 +01:00
Bernd Hahnebach
c6e112b865 FEM: CLOAD, mesh face area is used for surface loads on volume faces 2015-05-26 13:50:38 +02:00
Abdullah Tahiri
ea2cc64b91 Bug fix: Sketcher: "Ask for value after creating distance constraint" setting not working
========================================================================================

How to replicate:
1. Go to Preferences->Display->Sketch and disable that checkbox.
2. Create a distance constraint (radius, distance, ...)

It will ask for the value regardless of whether the checkbox is clicked or not.

Why?
In SketcherSettings.ui the prefpath is "Mod/Sketcher"
The code refered to ParameterGrp::handle hGrp = App::GetApplication().GetParameterGroupByPath("User parameter:BaseApp/Preferences/Mod/Sketcher/General");
2015-05-26 13:45:24 +02:00
wmayer
f2f0889d25 + make sure that Sketch.clear() doesn't allow any arguments 2015-05-26 13:11:48 +02:00
Abdullah Tahiri
4ec0e27cae Sketcher Bug fix: Python function clear() contains wrong code
=============================================================

This function is like this from 2011 according to git blame.

The original code makes no sense. I assume that what is intended in this
function (in accordance with SketchPy.xml) is call the method clear in
Sketch.cpp.
2015-05-26 13:08:22 +02:00
wood-galaxy
e13db78219 Arch : Arch Section take current WorkingPlane Placement 2015-05-24 17:03:45 -03:00
Przemo Firszt
e06de7f6cf Part: PartDesign: Fine tune chamfer, fillet and draft icons
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-24 10:52:26 +01:00
Yorik van Havre
4721aeda21 Draft: Removed the 'Hide Draft Workbench' Draft preference since we now have full WB customization 2015-05-23 13:17:50 -03:00
wmayer
e12854af50 + raise error message when trying to mesh without netgen support 2015-05-22 16:15:18 +02:00
wmayer
6e0287ff17 + remove SoFCSelection from ViewProviderGeometryObject 2015-05-20 21:44:27 +02:00
wmayer
cab441cf2a + remove references to SoFCSelection where not needed 2015-05-20 19:24:12 +02:00
wmayer
9c6e26d974 + fix text in drawing dialog 2015-05-20 18:16:49 +02:00
jriegel
0ce20ceaaa add shell and beam support to FEM mesh ViewProvider 2015-05-19 21:42:36 +02:00
Yorik van Havre
1d769d182f Arch: Fixed materials merge in IFC import 2015-05-19 10:15:07 -03:00
Przemo Firszt
09652a0f46 FEM: Fix crash on missing unit when editing material second time
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-18 17:09:30 +01:00
Yorik van Havre
9a9a5afb42 Arch: Added pref option to IFC import to treat materials with same name as one 2015-05-17 14:22:24 -03:00
wmayer
cebbbe6d86 + prepare OCAF document to keep placement 2015-05-16 21:41:53 +02:00
wmayer
73aedf7f6c + prepare OCAF document to keep placement 2015-05-16 18:01:57 +02:00
wmayer
ff624aefca + Pad type UpToFirst and UpToFace doesn't produce expected results. 2015-05-16 14:19:20 +02:00
wmayer
7957a7fb00 + fixes #0001655: Pocket type UpToFirst and UpToFace doesn't produce expected results. 2015-05-16 12:44:07 +02:00
wmayer
24f41d9ab7 + raise exceptions in TopoShape::makeOffsetShape if needed 2015-05-15 20:20:37 +02:00
wmayer
72fd1d2677 + whitespace improvement 2015-05-15 20:07:55 +02:00
blobfish
408cbdea1b Part: Offset: fill rework. 2015-05-15 20:00:47 +02:00
blobfish
ca4510c939 Part: ModelRefine: fix for bug# 2097 2015-05-15 18:06:33 +02:00
Yorik van Havre
b153d9919b Arch: small bugfix in IFC importer 2015-05-15 11:27:15 -03:00
wmayer
7eb2ab64cb + FEM: replace set with list to preserve order 2015-05-15 13:48:29 +02:00
wmayer
b0391a7f29 Merge branch 'master' of ssh://git.code.sf.net/p/free-cad/code 2015-05-13 12:01:23 +02:00
Yorik van Havre
12d0355fe0 Arch: small bugfix in windows 2015-05-12 23:26:41 -03:00
Yorik van Havre
cd2bed70e5 Draft: fixed typo 2015-05-12 22:14:06 -03:00
Przemo Firszt
ed32dae143 FEM: Fix Von Mises equation
Reported-by: sgrogan and confirmed by drei

Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-12 15:58:49 +01:00
Yorik van Havre
79c55a12db Arch: Added MDF presets to panel 2015-05-10 11:30:01 -03:00
Sebastian Hoogen
80056b0f4d use transformGeometry in importSVG
partly reverts f045df1ef3 as workaround
for issue #2062
2015-05-09 19:57:36 +02:00
Yorik van Havre
4c3b8bdc21 Draft: Added archang's patch to importDWG 2015-05-09 12:39:53 -03:00
wmayer
02a23ba86f + use list of pairs instead of map for getVolumesByFace 2015-05-09 12:02:25 +02:00
wmayer
e01fc4cb18 + add method getPolesAndWeights() to NURBS surfaces and curves 2015-05-09 00:58:07 +02:00
wmayer
a538d3c29d + FEM: add a couple of methods to Python interface 2015-05-09 00:15:05 +02:00
wmayer
d3029657f0 + implement FemMesh::getVolumesByFace, replace inner list by tuple 2015-05-08 21:45:13 +02:00
Przemo Firszt
29205f7f4d FEM: Fix invalid CLOAD formatting
Existing code was producing invalid results:

a = 9876543212346789864323456.9543234578986432345678
>>> print "{:.13}".format(repr(a))
9.87654321234
>>> a
9.87654321234679e+24
The new converision should work fine:
>>> print "{:.13E}".format(a)
9.8765432123468E+24

Reported & fixed by ulrich1a
2015-05-08 20:59:32 +02:00
Przemo Firszt
09921c9bb7 FEM: inp file formatting/typos
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-08 20:59:14 +02:00
Przemo Firszt
92124ac084 FEM: Add getccxVolumesByFace and write_face_load functions
getccxVolumesByFace returns std::map<int, int> with ID of volume
and a number of face as per CalculiX definition. The same function is
accessible for python and returns list with the same information, like
this: [[229, 3], [230, 3], [233, 2], [238, 2]]

write_face_load produces something like this in the .inp file:

***********************************************************
** element + CalculiX face + load in [MPa]
** written by write_face_load function
*DLOAD
** Load on face Face2
229,P3,10.0
230,P3,10.0
233,P2,10.0
238,P2,10.0

Optimised by wmayer

Signed-off-by: wmayer
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2015-05-08 20:58:59 +02:00