Commit Graph

20474 Commits

Author SHA1 Message Date
Yorik van Havre
31adf238e7 Merge pull request #4313 from donovaly/TD-center-marks
[TD] show by default center marks
2021-01-25 12:15:26 +01:00
J-Dunn
a16bdcaba6 add comment about clearing Py::Dict when changing C++ data 2021-01-25 11:01:37 +01:00
J-Dunn
097cf2bc64 Path: fix unnecessary copy on read for Command.parameters dict
Contents of underlying c++ std::map data is copied to a new PyDict on every read. This is contrary to expected python behaviour which would normally just return the pointer to a python object and increment the reference counter for it.  This was leading to massive redundant deletion and copying in all post processors which reference this variable in a nested loop. This PR adds a permanent dict member to the class and keeps track of changes to avoid unnecessary copying.
2021-01-25 11:01:36 +01:00
Markus Lampert
1697f97f33 Removed unused BaseObjects property from vcarve 2021-01-24 21:15:31 -08:00
Markus Lampert
b7c041f774 Process BaseShapes in vcarve and only fall back to the model if nothing was found to engrave. 2021-01-24 21:10:39 -08:00
Markus Lampert
0c9d54bab2 Properly calling base logic for adding a base object if special handling did not apply. 2021-01-24 21:09:35 -08:00
Markus Lampert
ee5bfd5a3f Disabled base geometry-list resizing since it makes the list unusable on HDP monitors. 2021-01-24 20:52:43 -08:00
Chris Hennes
475f7049c5 Add the standard-defined "xml" namespace if it is not specified
The XML standard stipulates:
The prefix xml is by definition bound to the namespace name http://www.w3.org/XML/1998/namespace. It MAY, but need not, be declared, and MUST NOT be bound to any other namespace name. Other prefixes MUST NOT be bound to this namespace name, and it MUST NOT be declared as the default namespace.

If the document does not explicitly include this namespace, it is added. This prevents errors due to the use of the namespace in some imported SVG files. In debug builds those errors emit warning messages, and in Windows debug builds those errors cause an abort() to be called.
2021-01-24 22:35:27 -06:00
donovaly
9ec0cddfde [TD] show by default center marks
as requested here: https://forum.freecadweb.org/viewtopic.php?f=35&t=54718#p470334
2021-01-25 04:29:45 +01:00
Markus Lampert
5b384d26e7 Add support for multiple models to vcarve op. 2021-01-24 18:41:09 -08:00
Markus Lampert
f2f552b4d6 Make PathOp rebust(er) against manual Base assignment 2021-01-24 18:35:36 -08:00
donovaly
150d03d7fd [TD] add Arch paper size Templates
thanks to the recently merged PR #4292 one can use custom page sizes such as the templates in https://wiki.freecadweb.org/Arch_templates

This PR add them to be directly provided by FC.
2021-01-25 02:58:41 +01:00
donovaly
d1071026e7 [PD] fix blind hole depth handling
as reported in https://tracker.freecadweb.org/view.php?id=3818
we treat the blind hole depth not according to the conventions. The size of the drill point due to the angle is normally not taken into account but FC does this in any case.

This PR adds therefore an option, that is by default off, to take the drill point size into account.
Without the option, (the new default) the depth is calculated according to the conventions.

The PR also removes unused widgets and restored the tab order in the .ui file. The thread parameters were never used. In case we made in future the decision to carve into holes real (modeled) threads, we need a special UI for that solution anyway so having the dead code in is not helpful at all.
2021-01-25 01:10:23 +01:00
three_d
6b14368e65 Merge branch 'master' into archstairs_connections_flight_landing 2021-01-24 21:00:07 +01:00
Abdullah Tahiri
05ccc95cde App/Gui: New restoreError Document status and Gui pop-up
========================================================

If the restore of Document.xml results in invalid Document.xml (because unhandled exceptions occurred), the
document status Document::restoreError is set. The GUI or Mod/Web if a link was clicked, show a pop-up indicating
this situation.

This commit also shows an appropriate pop-up for the partialRestore when opening from the menu, that before only
appeared when opening by clicking a link.
2021-01-24 16:43:20 +01:00
wmayer
e2c4d5f86e Fem: [skip ci] fix FemMesh::addGroup() for smesh 9 2021-01-24 15:29:56 +01:00
Abdullah Tahiri
0ecddc5e33 Sketcher: Invalid Sketch geometry color in preferences 2021-01-23 07:53:28 +01:00
Abdullah Tahiri
6e30d05a12 Sketcher: New geometry color to indicate invalid sketch 2021-01-23 07:53:28 +01:00
Abdullah Tahiri
b9640eec63 GCS: convenience diagnosis functions 2021-01-23 07:53:28 +01:00
Abdullah Tahiri
e87c01590f GCS/Sketcher: Add equal length line constraint using the new single constraint 2021-01-23 07:53:28 +01:00
Abdullah Tahiri
1c2e7d74b5 GCS: New Constraint for equal size lines, avoiding to use an extra parameter
============================================================================

This specific constraint removes the free parameter of the previous implementation. This solves:
https://tracker.freecadweb.org/view.php?id=4501

fixes #4501

However, this implementation of equal size produces zero gradients when coordinates of lines are aligned,
e.g. vertical or horizontal. These zero gradients, which are mathematically right ruin the diagnosis, which
regards corresponding elements as fully constraint (because they are locked from a solver point of view), when
they are simply locked, but are movable and constrainable. For this, when the rightful gradient is small enough
(<1e-10) it is substituted by a surrogate gradient of 1e-10, which solves the problem with the diagnose, which
treats as zero only values under 1e-13 (pivot threshold used in QR decomposition).

This special behaviour fixes the wrong detection here:
https://forum.freecadweb.org/viewtopic.php?f=8&t=53466&start=40#p464168

It also fixes this one:
https://forum.freecadweb.org/viewtopic.php?p=468585#p468587
2021-01-23 07:53:28 +01:00
Abdullah Tahiri
57a4f3e47c Sketcher: Update solver partially redundant constraint information in the solver messages 2021-01-23 07:53:28 +01:00
Abdullah Tahiri
436a807c87 Sketcher: command to select partially redundant constraints 2021-01-23 07:53:28 +01:00
Abdullah Tahiri
5a5ed565a8 Sketcher: SketchObject partially redundant status 2021-01-23 07:53:28 +01:00
Abdullah Tahiri
dd0fb0c791 Sketcher: Sketch retrieve partially redundant constraints 2021-01-23 07:53:28 +01:00
Abdullah Tahiri
567c80fb67 GCS: report partially redundant constraints 2021-01-23 07:53:28 +01:00
Roy-043
90e0e616b1 Fixed typo in Arch_Schedule
Typo
2021-01-22 20:17:47 +01:00
three_d
10ec3016ef Update ArchStairs.py 2021-01-22 19:09:18 +01:00
three_d
fd5bb8b47b Merge branch 'master' into archstairs_connections_flight_landing 2021-01-22 19:06:55 +01:00
marioalexis
875c0d8612 Draft: Prevent Draft_Wire from setting a single-edge wire as closed 2021-01-22 01:16:40 -03:00
Tyler Colbert
7cc080b55b Merge branch 'master' into fanuc-1st-pass 2021-01-21 18:24:19 -07:00
sliptonic
a7d371b8a5 Merge pull request #4284 from sliptonic/bug/fixturetemplate
[Path] fix persistence of fixtures, split, and orderby to templates
2021-01-21 17:12:56 -06:00
three_d
193caf07f7 Arch: connections between stair flight and landing
Added some features to allow the user to change the types of connections between the flight of stairs and landing.
This issue is discussed in the forum thread: https://forum.freecadweb.org/viewtopic.php?f=22&t=53018
2021-01-21 18:41:23 +01:00
Yorik van Havre
1ea0275102 Merge pull request #4285 from bitacovir/OpensCAD_Icon_replacement
[UI] Replacement of 2 SVG icons for OpenSCAD commands
2021-01-21 13:34:30 +01:00
Yorik van Havre
33c719a382 Merge pull request #4287 from bitacovir/PartDesign_Icons
[UI] Add SVG icons for three PartDesign commands
2021-01-21 13:33:41 +01:00
Yorik van Havre
9de4841d0f Merge pull request #4291 from aapo-aapo/TD-US-MultiValueSchema-fix
[TD] Fix Dimension unit printing problem for US building units …
2021-01-21 13:32:48 +01:00
Yorik van Havre
6ded863f7d Merge pull request #4292 from aapo-aapo/TD-MDIViewPage-papersizes
[TD] MDIViewPage: Add support for Qt5 automatic paper size handling …
2021-01-21 13:21:56 +01:00
wmayer
50a6c5ec9e FEM: make FemMesh::getVolumesByFace() working for SMESH >= 7 2021-01-21 13:00:31 +01:00
Yorik van Havre
3a0a989d08 Merge pull request #4298 from Roy-043/ArchRoof_FixSelfRefRelProfile
ArchRoof.py: Fix for self referencing relative profile issue
2021-01-21 12:51:27 +01:00
Tyler Colbert
98c2861864 [PATH] First pass at a post processor for Fanuc controllers 2021-01-20 14:18:47 -07:00
wmayer
b431987ea3 smesh: port to version 9.6 2021-01-20 19:49:56 +01:00
Roy-043
b31667dbc7 Update ArchRoof.py
A relative profile can now be used if it references itself. This fixes a compatibility issue with the V0.18 version of ArchRoof, where the first profile initially always references itself.
2021-01-20 19:17:30 +01:00
Benjamin Nauck
8589c4e782 Spreadsheet: make setContent use unique_ptr and cleanup
Make `Cell::setContent` use `unique_ptr` and
`make_unique` for expressions to avoid potential memory
leaks.
Also renames `expo` to `newExpr` to avoid mixup with the
member variable `expression`.

Both changes was made at the request of @chennes.
2021-01-20 18:55:27 +01:00
Benjamin Nauck
991e8bfb2b [Spreadsheet] Add unit tests for new input behaviour 2021-01-20 18:55:27 +01:00
Benjamin Nauck
7fdbd87b13 [Spreadsheet] Only evaluate cell values when prefixed with '='
This commit only changes the user interaction with spreadsheet and does
not affect backwards compatibility (as valid cell expressions are
prefixed with '=' when serialized).

This fixes [#4156](https://tracker.freecadweb.org/view.php?id=4156),
which is discussed in the forum thread:
https://forum.freecadweb.org/viewtopic.php?f=3&t=39665

There has been additional logic added to handle numbers and simple
fractions without using '='.
The behaviour is what is expected by the spreadsheet test cases
and in line with how other spreadsheet software works.
The '-prefix can still be used to force the input to be handled as
as string instead.

Example of numbers and fractions handled are:
  3
  2mm
  1/8
  1mm/2
  1/2mm
  2/m
  1mm/2s

More complex expressions are not handled without '=' and will be stored
as strings instead, for example:
  2 / 3 / 2
  1 + 1/3
2021-01-20 18:55:27 +01:00
bitacovir
67f6353046 Add SVG icons for two Part commands 2021-01-19 19:26:10 +01:00
donovaly
691eaa6e8f [TD] make pointers to the UI std::unique_ptr
as noted in https://github.com/FreeCAD/FreeCAD/pull/4271#discussion_r554673632
the pointer to the UI should be a unique pointer.

This PR does this for all TD dialogs that don't already use a unique_ptr.
2021-01-19 19:24:27 +01:00
wmayer
49f4454ed3 Mesh: [skip ci] fix hot spot of mesh selection cursor 2021-01-19 19:17:54 +01:00
Aapo
ff18dec065 [TD] MDIViewPage: Support printing/exporting arbitrary custom paper sizes for Qt5. 2021-01-19 11:03:24 +02:00
Aapo
7339646638 [TD] MDIViewPage: Add support for Qt5 automatic paper size handling with many new paper sizes possible. 2021-01-19 00:49:57 +02:00