Commit Graph

22720 Commits

Author SHA1 Message Date
vocx-fc
048da48080 Part: activate Part_ColorPerFace in the menu and toolbar
According to the source this command was deactivated until issue #0477
and hence #1954 could be solved. However, since those issues
haven't been addressed the command has remained hidden for a long time.
This command does not work with objects that reimplement
their edit modes, meaning that it may work with Part and PartDesign
created objects but not with Draft and Arch objects.

The command is added to the standard `View` menu,
and to one `Part tools` toolbar so that it is no longer hidden.
The limitations of the command can be described in the documentation,
and then somebody else can help solve the problem
with the edit modes.

A new icon for the command is also provided.
2020-10-13 12:59:16 +02:00
Priit Laes
e755238456 build: boost: Clean up branches requiring boost-1.55 2020-10-13 12:56:28 +02:00
Priit Laes
6a6a6f3d25 build: boost: Drop branches requiring boost-1.46 2020-10-13 12:56:28 +02:00
Priit Laes
95ed01728e build: boost: Drop boost-1.44-specific checks 2020-10-13 12:56:28 +02:00
Priit Laes
a56b6730d0 build: boost: Drop boost <= 1.41 dependent-code branches 2020-10-13 12:56:28 +02:00
Priit Laes
06d87e4003 build: Bump boost requirement to 1.55 and drop bundled boost::any
Based on the information from bunch of the latest supported distros:
Debian Jessie: 1.55
Debian Stretch: 1.62
Ubuntu 16.04: 1.58
Ubuntu 18.04: 1.65
Fedora 31 and 32: 1.69
Redhat Enterprise Linux 8: 1.66 (1.53 for EL-7, though)
openSuse Leap 15.1: 1.66
2020-10-13 12:56:28 +02:00
vocx-fc
74abbfde02 Part: fix the mixed newlines of DlgPrimitives.h
My editor, Spyder, detected a mix of Windows and Unix newlines,
and offered to fix the file.
2020-10-13 12:51:51 +02:00
vocx-fc
d54cdff9e5 Part: improve tooltip of measure commands
Also update the text of the buttons in the `TaskDimension` task panel.

Remove tabs in the source code, as there was a mix of tabs
and spaces. Further cleaning is necessary as the indentation
is inconsistent and mostly 2 spaces instead of 4 spaces.
2020-10-13 12:50:50 +02:00
vocx-fc
5d1d8d800b Part: clean up spacing of lines in BOP JoinFeatures 2020-10-13 12:49:54 +02:00
vocx-fc
d603136821 Part: update object and commands for BOP SplitFeatures
This includes `BooleanFragments`, `Slice to compound`,
`Slice apart`, and `Boolean XOR`.

Clean up the tooltips of properties and commands.

Clean up the spacing of the code so that lines aren't very long.
2020-10-13 12:49:54 +02:00
vocx-fc
0eafaa3031 Part: update icon, object and command for CompoundFilter
The previous icon did not follow the general style and colors
of other icons in the workbench.

If there is no `Stencil` in the `CompoundFilter` object, raise
a `ValueError` exception when the `FilterType` is `'collision-pass'`
or `'window-distance'`.

Raise an exception when `items` is empty, or has a malformed string,
when `Filtertype` is `'specific items'`.

Fix the `getNullShapeShape` function to return a simple
`Part.Shape`, so that there is no error raised if `_nullShapeShape`
doesn't exist. This function doesn't work at all. It was probably
a prototype which was never fully developed; it may be removed
completely in the future.

The docstrings for the commands `CompoundFilter` and `ExplodeCompound`
were revised.

Clean up the spacing of the code so that lines aren't very long.
2020-10-13 12:49:54 +02:00
vocx-fc
f439384ccb Part: small cleanup of Python modules and InitGui.py
Add empty newline at the end of the file.
2020-10-13 12:49:54 +02:00
sliptonic
68ad4f2f1d Merge pull request #3941 from sliptonic/bug/deburr
[Path] Deburr bug fixes
2020-10-12 16:04:55 -05:00
vocx-fc
5a07d7dd46 Part: update icon for ProjectionOnSurface
The previous icon was improperly trimmed. The new icon
shows the projection more clearly as one object imprinting itself
over another.

Also update the tooltip, fix the indentation of the code,
and the title of the taskpanel `DlgProjectionOnSurface.ui`.
2020-10-12 19:54:11 +02:00
vocx-fc
c3994535d9 Part: move more icons to tools subdirectory 2020-10-12 19:54:11 +02:00
vocx-fc
9177eae0bb Part: move icons to measure subdirectory
The path to the icons is added to `AppPartGui.cpp`
using `Gui::BitmapFactory().addPath()`, so the icons are found
automatically in their new directories.
2020-10-12 19:54:11 +02:00
vocx-fc
e6dd1df7a3 Part: move icons to parametric subdirectory
The path to the icons is added to `AppPartGui.cpp`
using `Gui::BitmapFactory().addPath()`, so the icons are found
automatically in their new directories.
2020-10-12 19:54:11 +02:00
vocx-fc
3b671bf4a5 Part: move icons to booleans subdirectory
The path to the icons is added to `AppPartGui.cpp`
using `Gui::BitmapFactory().addPath()`, so the icons are found
automatically in their new directories.
2020-10-12 19:54:11 +02:00
vocx-fc
db91c6f424 Part: move icons to tools subdirectory
The path to the icons is added to `AppPartGui.cpp`
using `Gui::BitmapFactory().addPath()`, so the icons are found
automatically in their new directories.
2020-10-12 19:54:11 +02:00
vocx-fc
2fa40f4060 Part: move icons to create subdirectory
The path to the icons is added to `AppPartGui.cpp`
using `Gui::BitmapFactory().addPath()`, so the icons are found
automatically in their new directories.

Rename icon `Part_CreatePrimitives.svg` to `Part_Primitives.svg`.
2020-10-12 19:54:11 +02:00
sliptonic
63a244f01e Merge pull request #3938 from sliptonic/feature/dragknifepanel
[PATH]  Task panel for dragknife and axismap dressups.  fixes #2840
2020-10-12 12:50:44 -05:00
sliptonic
ffd7693815 Fix deburr CW/CCW calculation 2020-10-12 12:39:14 -05:00
Chrismettal
f82532ddbf Seed randomizer on application init 2020-10-12 19:10:06 +02:00
wmayer
7825eef62e PartDesign: [skip ci] Prevent crash when pressing delete key without feature selected to remove in mirror and scale pattern dialog 2020-10-12 18:56:12 +02:00
marioalexis
08edc39a50 [PartDesign] Prevent crash when pressing delete key without feature selected to remove in linear and polar pattern dialog 2020-10-12 16:37:46 +02:00
marioalexis
5dfc061d49 [PartDesign] Prevent crash when pressing delete key without feature selected to remove in linear and polar pattern dialog 2020-10-12 16:37:46 +02:00
mwganson
432ac985e7 [PartDesign Multitransform] prevent crash when pressing delete key without feature selected to remove in multitransform dialog 2020-10-12 16:36:11 +02:00
Neinei0k
90f2314b1e [Sketcher] Fix merged constraint preselection bug
Constraint icons that located close to each other get merged into a single icon. If you zoom in, individual constraints on these icons can't be selected anymore because their relative positions, which must depend on the zoom, don't change. The problem is solved by multiplying relative position by the scale factor which depends on the magnification.
2020-10-12 16:22:56 +02:00
Yorik van Havre
4134315434 Draft: Fixed translation of construction group 2020-10-12 16:11:31 +02:00
Yorik van Havre
dd51cbccb2 Arch: Fixed translation of wall (better version) 2020-10-12 15:58:41 +02:00
Yorik van Havre
a0114ac41a Arch: Fixed translation of wall 2020-10-12 15:57:15 +02:00
sliptonic
69963f3fe2 Merge pull request #3949 from mlampert/bugfix/path-voronoi-32bit-python-build
PATH: 32bit build bugfix - Using python type conversion to return voronoi element color
2020-10-12 08:25:59 -05:00
Yorik van Havre
5609b38e9a Draft: Fixed patterns + added default pattern size pref option 2020-10-12 15:12:50 +02:00
wmayer
e3c30e7481 Gui: [skip ci] support to remap motion data array of space mouse 2020-10-12 14:11:53 +02:00
luz paz
da7f105ef1 Arch: fix typo in ArchBuildingPart.py [skip-ci]
Found by user PMac in https://forum.freecadweb.org/viewtopic.php?f=3&t=51049
2020-10-12 11:51:13 +02:00
Jean-Marie Verdun
357a6c3b29 Update MacAppBundle to work properly with Qt5 and updated homebrew
Add WebEngine required file to the bundle

Signed-off-by: Jean-Marie Verdun <jmverdun3@gmail.com>
2020-10-12 11:50:48 +02:00
vocx-fc
9be9620ae2 Show: add argument to NotAContainerError class constructor
The class `NotAContainerError` is used as an exception.
Where it is used it is initialized with an argument,
but the definition didn't accept one; now we accept an argument
in the constructor.
2020-10-12 11:49:11 +02:00
vocx-fc
f54761510c Draft: fix mismatch of argument in get_dxf function
The name of the argument, `projection`, in the old function
is incorrect; it should be `direction`, which was the original
argument's name when this method was split into its own module
(c79f890).
2020-10-12 11:48:26 +02:00
vocx-fc
f799717f4d Arch: consider DraftText objects in the section plane for compatibility
After the reorganization of the Draft Workbench,
the `'DraftText'` objects are now of Proxy.Type `'Text'`.
In the `DraftAnnotation` class the `__setstate__` method
was defined to automatically migrate the Type.

The `Arch SectionPlane` only handles `'Text'` objects. If for
some reason there is still an old `'DraftText'` object
which has not been migrated to the new Type, it won't be found.
This is corrected by adding `'DraftText'` to the list of objects
to process.
2020-10-12 11:43:37 +02:00
Roy-043
611bcdd4c4 Arch: 4 additional tests for ArchRoof (bug fix)
ArchRoof bug fix:
* Removed unnecessary use of FreeCAD.Vector. Renamed some functions and variables for clarity (in this description the new names are used). Reformatted the code. Moved imports to the top of the file. Updated the tooltips. Tweaked the title text "Parameters ...".
* Fixed the length of list properties bug.
* Flip direction did not work properly. The adopted solution is to reverse the edges the roof is based on.
* Added support for consecutive parallel edges.
* Added support for zero angle roof segments.
* The code now handles zero length runs without throwing an error.
* To handle triangular roofs with a zero length eave, "eave" (egde) has been turned into "eavePtLst" (list of points).
* The ridges of opposite parallel roof segments (if they do not use a relative profile) are recalculated if the sum of their runs is larger than the distance between their edges. The old version of the command would do this only if segments connected to gables and only properly if the corners between the edges of the segments and the gable were 90 degrees.
* Revised backGable and nextGable. They now call helperGable.
* Revised the 6 other back/next functions. They now call helperSloped. This also fixes several cases where cookie-cutter outlines (profilCurr["points"]) were wrong. In nextHigher, backHigher, nextLower and backLower a point was wrongly projected on the X-axis. In nextHigher the point on the higher ridge was wrongly included.
* Improved the cookie-cutter outlines for roof segments with lower overhangs and higher ridges in corners.
* Data from a relative profile is no longer used if it in turn references a relative profile.
* Changed the default idrel to -1 and changed calcMissingData to not process this value. This avoids confusion for users who are unaware of the relative profile feature.
* Introduced find_inters as a workaround for DraftGeomUtils.findIntersection. The latter finds intersections for parallel lines that share a point. Find_inters uses a modified version of getLineIntersections from DraftGeomUtils.findIntersection.
* Calling DraftVecUtils.removeDoubles later in the program flow as it does not compares the first and the last vector.
* Avoided the QTreeWidget scrolling to the top on every change, by not clearing it but updating existing items instead.
* Added self.tree.setRootIsDecorated(False). This gets rid of the 1st column's extra left margin. Removed item.setTextAlignment(0,QtCore.Qt.AlignLeft) as this did not work.
2020-10-12 11:43:04 +02:00
Roy-043
aff5da530e Arch: ArchRoof bug fix
* Removed unnecessary use of FreeCAD.Vector. Renamed some functions and variables for clarity (in this description the new names are used). Reformatted the code. Moved imports to the top of the file. Updated the tooltips. Tweaked the title text "Parameters ...".
* Fixed the length of list properties bug.
* Flip direction did not work properly. The adopted solution is to reverse the edges the roof is based on.
* Added support for consecutive parallel edges.
* Added support for zero angle roof segments.
* The code now handles zero length runs without throwing an error.
* To handle triangular roofs with a zero length eave, "eave" (egde) has been turned into "eavePtLst" (list of points).
* The ridges of opposite parallel roof segments (if they do not use a relative profile) are recalculated if the sum of their runs is larger than the distance between their edges. The old version of the command would do this only if segments connected to gables and only properly if the corners between the edges of the segments and the gable were 90 degrees.
* Revised backGable and nextGable. They now call helperGable.
* Revised the 6 other back/next functions. They now call helperSloped. This also fixes several cases where cookie-cutter outlines (profilCurr["points"]) were wrong. In nextHigher, backHigher, nextLower and backLower a point was wrongly projected on the X-axis. In nextHigher the point on the higher ridge was wrongly included.
* Improved the cookie-cutter outlines for roof segments with lower overhangs and higher ridges in corners.
* Data from a relative profile is no longer used if it in turn references a relative profile.
* Changed the default idrel to -1 and changed calcMissingData to not process this value. This avoids confusion for users who are unaware of the relative profile feature.
* Introduced find_inters as a workaround for DraftGeomUtils.findIntersection. The latter finds intersections for parallel lines that share a point. Find_inters uses a modified version of getLineIntersections from DraftGeomUtils.findIntersection.
* Calling DraftVecUtils.removeDoubles later in the program flow as it does not compares the first and the last vector.
* Avoided the QTreeWidget scrolling to the top on every change, by not clearing it but updating existing items instead.
* Added self.tree.setRootIsDecorated(False). This gets rid of the 1st column's extra left margin. Removed item.setTextAlignment(0,QtCore.Qt.AlignLeft) as this did not work.
2020-10-12 11:43:04 +02:00
sliptonic
87a2015338 Merge pull request #3951 from dubstar-04/PathTurnBase
[Path] - Add Turning / Lathe Base Support
2020-10-11 11:19:21 -05:00
Daniel Wood
61dc5dea04 Add a task panel page for controlling turning diameters 2020-10-11 07:57:59 +01:00
Daniel Wood
66afbc36a8 Add turning selection gate 2020-10-11 07:57:59 +01:00
Markus Lampert
101a0e00ec Using python type conversion to return voronoi element color 2020-10-10 18:10:06 -07:00
wmayer
12155f4aab Part: [skip ci] harmonizing the way to add sub-modules to Part module 2020-10-10 11:44:51 +02:00
sliptonic
ed61873b2c make deburr ignore non-vertical faces
fixes #4327
2020-10-09 12:50:06 -05:00
sliptonic
b5f37f06aa make deburr check for tool attributes fixes #4327 2020-10-09 12:50:06 -05:00
wmayer
d76124b61e Part: [skip ci] fix crash when trying to convert null shape to nurbs 2020-10-09 18:54:57 +02:00
wmayer
11afaaea68 Part: [skip ci] port class TaskCheckGeometryResults to OCCT 7.5 2020-10-09 08:39:42 +02:00