Commit Graph

21550 Commits

Author SHA1 Message Date
wandererfan
6bc2d5ac2d [TD]hide Symbol property in Editor 2020-06-09 16:12:14 -04:00
wmayer
27b6066beb clang/gcc/cmake: move handling of suppressed deprecated-copy warnings from source file to CMake file to more easily support gcc 10 2020-06-09 15:30:42 +02:00
Yorik van Havre
9a06fdf223 Arch: Fixed wrong structural node generation 2020-06-09 15:16:34 +02:00
donovaly
86655f067e [TD] add scale settings to detail task dialog 2020-06-09 08:51:46 -04:00
wandererfan
c974387120 [TD]Fix editable field in template 2020-06-09 07:22:00 -04:00
wandererfan
cda235aba0 [TD]Fix geometric hatch in Pdf 2020-06-09 07:22:00 -04:00
donovaly
fe6dfabbb4 [App] fix a typo 2020-06-09 12:03:07 +02:00
vocx-fc
327b306307 Draft: add some explanation on the properties of PathArray
The use of `App::PropertyLinkSubList` for `'PathSubelements'`
is a mistake because we could use a single `App::PropertyLinkSub`
to handle both `'PathObject'` and `'PathSubelements'` properties.

This commit doesn't change any code, it just adds comments
explaining the situation so that it is not forgotten,
and we remember to address it in the future.

Ideally we should migrate the objects, but we may also decide
to break compatibility with older `PathArrays` if both properties
can't be migrated easily.
2020-06-09 12:02:25 +02:00
carlopav
904f3408bc Draft: fixed wrong QT_TRANSLATE_NOOP usage in Draft Objects
.
2020-06-09 11:55:46 +02:00
Reinier Heeres
c0971eb5c1 Fix saving of DXF files (python3)
- Python3 does not allow to write strings to a file opened as "wb"; it
  expects bytes instead. Since ASCII DXF files are written using strings,
  the file should be opened as "w". Should be ok for python2 as well.
- See also issue 003862, https://tracker.freecadweb.org/view.php?id=3862
2020-06-09 11:53:02 +02:00
vocx-fc
c8c579b0d5 Draft: clean up draftgeoutil modules 2020-06-09 11:51:17 +02:00
vocx-fc
9271c9f84b Draft: clean up the order of the submodules in DraftGeomUtils
Import the modules inside `DraftGeomUtils.py` in increasing order
of complexity. For example, the basic module is `general`,
and `geometry`, `edges`, `faces`, `arcs`, and `cuboids`
after it.

On the other hand the `circles_apollonius` module requires
various of those dependencies, so we import it at the end.

We don't import any of the `circles_incomplete` functions
because these are incomplete and we need to implement
the dependency functions first.
2020-06-09 11:51:17 +02:00
Ryo KOYAMA
8f646d9316 Arch: Fix bug of exporting into collada file #4362
Enable to export mirrored part into collada file.

This is discussed in:
https://forum.freecadweb.org/viewtopic.php?f=3&t=30785

The issue is:
https://tracker.freecadweb.org/view.php?id=4362
2020-06-09 11:50:48 +02:00
Bernd Hahnebach
86a6757061 FEM: constraint transform, fix round by improving coordinate calculation 2020-06-09 06:45:01 +02:00
Bernd Hahnebach
7c7275cfb0 FEM: constraint transfrom, coordinate transformation 2020-06-09 06:21:54 +02:00
sliptonic
9daeaba394 Merge pull request #3581 from gwicke/optimizeLinearSegments_fix
Path: Fix for optimizeLinearSegments
2020-06-08 10:13:31 -05:00
Abdullah Tahiri
11f5500716 PartDesign: closing task dialog when exiting edit mode for Primitives
=====================================================================

fixes #4241

Problem:

PartDesignGui::ViewProvider is responsible for closing the tasks for most of PD features when exiting edit mode
(i.e. unsetEdit()).

For primitives, PartDesignGui::ViewProviderPrimitive is responsible, and neither does it or relies on its parent
VP to do it when calling unsetEdit().

Solution:

Make PartDesignGui::ViewProviderPrimitive::unsetEdit() rely on parent PartDesignGui::ViewProvider to tidy up,
including closing the task dialog.

Reference:

This is the default stack call when closing a document while a PD task using PartDesignGui::Viewprovider is active:
2020-06-08 15:12:26 +02:00
donovaly
652d965d54 [TD] use new keyboardTracking feature for Detail dialog
Werner finally implemented that FC's spinboxes accept Qt's keyboardTracking. So we can use it now for dialogs like the Detail dialog.
2020-06-08 09:07:14 -04:00
wmayer
fdc07cb6c9 Py3.8: [skip ci] missing initializer for member '_typeobject::tp_vectorcall' [-Wmissing-field-initializers] 2020-06-08 14:40:00 +02:00
wmayer
e4d531bb8b Py3.8: missing initializer for member '_typeobject::tp_vectorcall' [-Wmissing-field-initializers] 2020-06-08 14:32:21 +02:00
wmayer
42fcda5d39 gcc: [skip ci] suppress gcc 10 warnings in smesh code 2020-06-08 11:40:16 +02:00
Bernd Hahnebach
f68f44311f FEM: fem examples manager, fix ccx tools solver 2020-06-08 10:29:45 +02:00
Gabriel Wicke
bec4afa368 Merge branch 'master' into optimizeLinearSegments_fix 2020-06-07 21:38:53 -07:00
wandererfan
8311b1e66d [Part]Fix bad shape from Fillet
- see #4285 for similar fix on Chamfer
2020-06-07 22:08:41 -04:00
Gabriel Wicke
f6ae7c2764 Merge branch 'master' into optimizeLinearSegments_fix 2020-06-07 16:04:51 -07:00
Gabriel Wicke
7c654878d0 Path: Fix for optimizeLinearSegments
Reduce cumulative error by holding onto the original point in a sequence
of linear optimizations. In testing, this fixes artifacts I have seen on
very finely sampled paths with very gradual curvature.

Further improvements are needed for this optimization, but at least this
change avoids a regression over the status quo.
2020-06-07 15:59:51 -07:00
wmayer
c8ce12832e PartDesign: [skip ci] fix typo 2020-06-08 00:59:46 +02:00
wmayer
9a67154e73 Gui: [skip ci] fix bug when keyboard tracking for QuantitySpinBox is disabled and value is changed by mouse wheel or the spin buttons 2020-06-07 23:38:03 +02:00
sliptonic
07d40a3140 Merge pull request #3564 from gwicke/more_ambitious_stepover
Path: More ambitious step-over and break optimizations
2020-06-07 16:03:49 -05:00
WandererFan
b7ba72bf8f Merge pull request #3579 from WandererFan/prefDirs
[Part]Fix #4285 Bad Shape from Chamfer
2020-06-07 15:41:52 -04:00
wmayer
1e117647ff [skip ci] include missing boost header 2020-06-07 20:58:45 +02:00
WandererFan
102e9e5cd4 Merge branch 'master' into prefDirs 2020-06-07 13:33:56 -04:00
wmayer
89ddab33f6 Expression: move handling of invalid quantities (NaN) from FunctionExpression to DlgExpressionInput 2020-06-07 18:00:35 +02:00
wandererfan
73f086f73d [Part]Fix #4285 Bad Shape from Chamfer
- chamfer was producing invalid shape as output.
  fix uses shapefix to correct invalid surface/face.
2020-06-07 11:26:56 -04:00
wandererfan
d693ff13db [TD]Fix preference directory pickers 2020-06-07 11:26:56 -04:00
wmayer
200c7c7e00 [skip ci] include missing boost header 2020-06-07 17:21:37 +02:00
wmayer
0a8c6e36a1 [skip ci] include missing boost header 2020-06-07 15:54:34 +02:00
wmayer
e911974159 App: [skip ci] handle XMLAttributeError in Document::readObjects 2020-06-07 14:25:32 +02:00
wmayer
b0e92abcb5 Base: [skip ci] in XMLReader class replace assert(0) calls with throwing an XMLAttributeError exception 2020-06-07 14:24:46 +02:00
wmayer
ae641dc527 Python: [skip ci] tp_print slot has been replaced with tp_vectorcall_offset in Py3.8 2020-06-07 12:53:47 +02:00
wmayer
03113405fc Gui: [skip ci] fix bug when keyboard tracking for QuantitySpinBox is disabled and value is changed by mouse wheel or the spin buttons 2020-06-07 11:30:56 +02:00
wmayer
f98b948866 Revert "App: [skip ci] avoid that Origin makes persistent any properties of its extension"
This reverts commit 457dba4fee.
2020-06-07 10:44:12 +02:00
Abdullah Tahiri
ac4196fb66 Expressions: Avoid multiline error messages
===========================================

fixes #4324

A multiline error message produces poor visualisation when used in the UI, while
there is no need for it to be multiline.
2020-06-06 20:20:10 +02:00
wmayer
9801519409 App: [skip ci] correctly mapping of sub-feature name to role name of an Origin feature 2020-06-06 15:46:48 +02:00
wmayer
b7f56e43be App: [skip ci] in dependency graph make sure that an Origin stays inside the Body or Part container 2020-06-06 13:48:25 +02:00
wmayer
45c2e5cb21 App: [skip ci] throw an exception if the expression gives NaN 2020-06-06 13:04:01 +02:00
wmayer
5b5ea24b63 App: [skip ci] suppress false warning 2020-06-06 10:54:16 +02:00
Gabriel Wicke
0c69eebda4 Path: Use _optimizeLinearSegments utility in _planarSinglePassProcess
Slightly clean up the code by separating linear segment optimization
from gcode generation. While the current optimization is not very
effective once there is any kind of meshing noise, having a single
method performing the optimization will make it easier to tweak
tolerances or strategies.
2020-06-05 18:21:24 -07:00
Gabriel Wicke
84113fbd17 Path: More ambitious step-over and break optimizations
Extend the work from #3496 to allow the safe optimization of more
complex step transitions.

- Use the actual safePDC path for short step transitions and breaks,
  currently up to 2 cutter diameters. This value is chosen to cover
  basically all typical end step-overs, including those with heavy skew.
  Extending this much further (up to the break even point for a retract &
  rapid) will need some careful thinking for multi pass paths.
- Coordinate offset tolerances with per-operation tessellation
  tolerances, to avoid tessellation artifacts messing up paths by
  causing false retracts.  Such retracts can cause entire steps near
  vertical areas to be falsely skipped, which would cause a major
  deviation from the target model.  By considering per-job tolerances, we
  allow users to safely save computational resources by computing roughing
  operations with lower precision, or selectively increase precision for
  finish passes.
- Refine the default tessellation tolerance to GeometryTolerance / 4.
  This makes sure that the job GeometryTolerance is respected by
  operation defaults.
2020-06-05 18:21:24 -07:00
wmayer
457dba4fee App: [skip ci] avoid that Origin makes persistent any properties of its extension 2020-06-05 18:27:56 +02:00