Commit Graph

21430 Commits

Author SHA1 Message Date
Bernd Hahnebach
c74e2a6378 FEM: move task panel in separate module, result mechanical 2020-06-03 23:48:34 +02:00
Bernd Hahnebach
6d17c2451a FEM: prepare separation of task panels 2020-06-03 23:48:34 +02:00
Bernd Hahnebach
3df9bf5407 FEM: ccx writer, newline because of pep8 2020-06-03 23:48:32 +02:00
sliptonic
ddc7f43934 Merge pull request #3501 from gwicke/mesh_deflections
Path: Respect meshing tolerance settings for 3d surfaces
2020-06-03 15:46:08 -05:00
Zheng, Lei
1f41f6f088 App: improve FunctionExpression forward compatibility
Remove runtime check when constructing FunctionExpression, in order to
support future built-in function. Exception will be thrown when
evaluating the expression to inform user about the error.
2020-06-03 22:18:39 +02:00
ebrahimraeyat
8cf8989802 FEM: ccx writer, changes in element sections 2020-06-03 22:00:24 +02:00
Abdullah Tahiri
c2c0428e99 Sketcher: Fix solver failure when setting datum results in wrong solver information
===================================================================================

fixes:
https://forum.freecadweb.org/viewtopic.php?p=404945#p405014
2020-06-03 19:07:50 +02:00
0penBrain
f70fdcadb5 [Sketcher] Solver message updated when toggling driving in datum dialog 2020-06-03 18:30:37 +02:00
Bernd Hahnebach
268d2984ac FEM: add missing cmake entry 2020-06-03 17:59:13 +02:00
Bernd Hahnebach
e4ea86cfd1 FEM: code conventions small updates 2020-06-03 17:58:54 +02:00
wmayer
9cbdd03b80 Gui: [skip ci] automatically save & load settings of PrefFontBox widgets 2020-06-03 17:53:10 +02:00
vocx-fc
c6bac1e58e Draft: move functions to draftgeoutils.cuboids 2020-06-03 15:22:09 +02:00
vocx-fc
3a572d50ca Draft: move more functions to draftgeoutils.faces 2020-06-03 15:22:09 +02:00
vocx-fc
5e25517c37 Draft: move more functions to draftgeoutils.intersections 2020-06-03 15:22:09 +02:00
vocx-fc
ae9850175a Draft: move more functions to draftgeoutils.geometry 2020-06-03 15:22:09 +02:00
vocx-fc
5622da6b90 Draft: move more functions to draftgeoutils.wires 2020-06-03 15:22:09 +02:00
vocx-fc
910ce96aed Draft: move more functions to draftgeoutils.edges 2020-06-03 15:22:09 +02:00
vocx-fc
538327995d Draft: move more functions to draftgeoutils.general 2020-06-03 15:22:09 +02:00
vocx-fc
b8dd14b01d PartDesign: replace unicode characters with simple hyphens 2020-06-03 14:51:01 +02:00
hlg
1da75f6971 Arch/Draft: minor fixes 2020-06-03 14:50:17 +02:00
vocx-fc
f40d0efee1 Draft: separate the placement functions from the Array class
This way they can be tested individually in the Python console
without needing the `Array` class at all. In the future these
methods could be moved to `DraftGeomUtils` or to `draftfunctions`.
2020-06-03 14:47:44 +02:00
vocx-fc
2ee20d1a7a Draft: hide properties of other array types in Array class
Leave only the corresponding properties by examining
the value of `ArrayType`.
2020-06-03 14:47:44 +02:00
vocx-fc
1c480fd5dc Draft: set the properties of the Array through functions
Since the `Array` class handles three different types, they
have different sets of properties. We add them to specific functions
so that they are clearly identified.
2020-06-03 14:47:44 +02:00
vocx-fc
ca9cfc6804 Draft: clean up code, PEP8, and docstrings for Array class
Added author of the `CircularArray` array type, "M. G. Berberich"
(berberic2) or "rynn" in the forum.
2020-06-03 14:47:44 +02:00
vocx-fc
d93e8518b0 Draft: clean up code, PEP8, and docstrings for DraftLink
This class was created by realthunder during the `LinkMerge`,
in 8cd9339b8c, to demonstrate how to use the `App::Link`
objects to create Link aware arrays.

It is used by `draftobject.array` (ortho, polar, circular)
and `draftobject.patharray` to create respective Link arrays.

This class is a bit mysterious. We need more documentation
on how the properties are being set, and how the code interacts
with the arrays that use it.
2020-06-03 14:47:44 +02:00
vocx-fc
3e67b469d4 Draft: clean up CircularArray code
Avoid `Draft.py` in the `make_circular_array` function because
it creates a circular dependency.

Use function to find the object in `make_circular_array`.

Now the make function accepts as input a `"String"` which must be
the `Label` of an object in the document, so it is easier to create
arrays interactively from the Python console.

Clean up the GuiCommand and task panel code, and avoid printing
messages to the terminal, as this is already done
by the make function.
2020-06-03 14:46:15 +02:00
vocx-fc
1ad8b16a81 Draft: clean up PolarArray code
Avoid `Draft.py` in the `make_polar_array` function because
it creates a circular dependency.

Use function to find the object in `make_polar_rarray`.

Now the make function accepts as input a `"String"` which must be
the `Label` of an object in the document, so it is easier to create
arrays interactively from the Python console.

Clean up the GuiCommand and task panel code, and avoid printing
messages to the terminal, as this is already done
by the make function.
2020-06-03 14:46:15 +02:00
vocx-fc
604e70fd20 Draft: clean up OrthoArray code
Avoid `Draft.py` in the `make_ortho_array` function because
it creates a circular dependency.

Use internal functions to abstract the orthogonal arrays.
The `_make_ortho_array` is a simple wrapper over the general
`make_array` function.

The result is four variants:
- `make_ortho_array`
- `make_ortho_array2d`, without the Z component
- `make_rect_array`, strictly rectangular components
- `make_rect_array2d`, strictly rectangular without the Z component

Also use functions to perform checking of the inputs,
whether these are vectors, numbers (integer and floats)
or integers.

Now the make function accepts as input a `"String"` which must be
the `Label` of an object in the document, so it is easier to create
arrays quickly from the Python console.

Clean up the GuiCommand and task panel code, and avoid printing
messages to the terminal, as this is already done
by the make function.
2020-06-03 14:46:15 +02:00
vocx-fc
6d1fdebca3 Draft: clean up make_array function 2020-06-03 14:46:15 +02:00
sgrogan
315dc8ba52 Update digital ocean citation 2020-06-03 14:44:44 +02:00
sgrogan
bc70d338a0 [DON'T MERGE]read.me digitalocean
todo better 'This project receives support from:'
2020-06-03 14:44:44 +02:00
donovaly
7f429e4bb6 [Gui] DlgSettings3DView.ui: fix a tooltip 2020-06-03 14:44:27 +02:00
vocx-fc
22c9f9a762 Draft: migrate PointList property to PointObject in PointArray
Use the `onDocumentRestored` method to check for the old
property.

Also modify the position of the base object in the draft test
script.
2020-06-03 14:44:00 +02:00
vocx-fc
96736db93a Draft: add new options to the make_point_array function
It supports a new parameter `extra` that is used
to provide `ExtraPlacement` for the copies of the array.

Adjust the GuiCommand properly.
2020-06-03 14:44:00 +02:00
vocx-fc
eaea9bed6f Draft: add additional displacement property for PointArray
The displacement is added to the position already defined by
the point, in order to impart an additional shift in the copy.

The rotation is also added to the original shape's rotation
by multiplying the quaternions.

Implement `onDocumentRestore` to add the new property
to older objects.
2020-06-03 14:44:00 +02:00
vocx-fc
62d5df3508 Draft: clean up code, PEP8, and docstrings for PointArray
Test the inputs to the `make_point_array` function
and return `None` if there is a problem.

Now the make function accepts as input a `"String"` which must be
the `Label` of an object in the document, so it is easier to create
arrays quickly from the Python console.

Add a message deprecating the older call `makePointArray`.

Adjust the GuiCommand accordingly. Now it uses the commit
mechanism of the parent `Modifier` class so that the executed
functions are recorded in the Python console.

Clean up the `PointArray` class as well.
2020-06-03 14:44:00 +02:00
Zheng, Lei
ace07249f4 Gui: fix qt5 ProgressBar modal checking 2020-06-03 14:42:52 +02:00
Zheng, Lei
7a47c54ad8 App: fix PropertyXLinkList/SubList::getValues() 2020-06-03 14:34:20 +02:00
Zheng, Lei
e55f5be44b App: fix PropertyXLink(Sub) python input/output 2020-06-03 14:34:20 +02:00
Zheng, Lei
3961f2d96d Gui: fix property link editor for PropertyLinkSubList 2020-06-03 14:34:20 +02:00
wmayer
caa7d4fb5b Gui: [skip ci] avoid that scrolling over a spin box steals the focus 2020-06-03 14:07:55 +02:00
wmayer
ebb8987455 Gui: [skip ci] do not superfluously call StdCmdStatusBar::activated at start 2020-06-03 13:26:21 +02:00
Bernd Hahnebach
8e3938e5a4 FEM: ccx writer, add comment 2020-06-03 13:17:18 +02:00
WandererFan
670b2f3c2c Merge pull request #3551 from WandererFan/PAAngle
[Draft]Path Array tangent rotation direction
2020-06-03 07:14:11 -04:00
Bernd Hahnebach
7148485b91 FEM: ccx writer, fix output number formating 2020-06-03 13:13:34 +02:00
wmayer
5fc0702d06 Gui: [skip ci] add font combo box class to widget factory 2020-06-03 11:41:38 +02:00
Gabriel Wicke
29b136815f Path: Respect meshing tolerance settings for 3d surfaces
Meshing tolerance settings for 3d surface operations were ignored since
switching to directly using facets from the view tesselation. On complex
3d shapes, this could cause serious meshing artifacts in the generated
paths, serious enough to show up even in path previews.

Additionally, there were occasionally segfaults when a model was not
viewed and thus implicitly tessellated before starting an OCL operation.

This patch switches from using view tessellations to explicitly calling
`tessellate()`. While this is usually more expensive than using the
existing view tessellation, recent changes to parallelize tessellation
have reduced this additional cost significantly.

Note that this diff only restores the use of LinearDeflection, since
that is the main thing we care about in OCL use cases. Angular
deflection is still ignored, but I think this is a good thing for this
case since a highly refined mesh in tiny but heavily curved areas below
the linear deflection threshold just adds unnecessary cost. If there is
agreement on this point, then we can remove the preference for
AngularDeflection from the UI in a follow-up.
2020-06-02 20:54:20 -07:00
sliptonic
0625716966 Merge pull request #3552 from Russ4262/BaseGeometry_Label_Fix
Path: Fix reference to label in UI panel in PathPocketBaseGui module
2020-06-02 22:52:33 -05:00
Russell Johnson
e9f511e4e6 Path: Fix reference to label in UI panel 2020-06-02 19:59:27 -05:00
sliptonic
acdbf74d56 Merge pull request #3537 from Russ4262/Reuse_Base_Geometry
Path: New feature - import base geometry from existing operations in Job
2020-06-02 18:28:19 -05:00