Abdullah Tahiri
feba33a9b8
Sketcher: Create GeoList class
...
==============================
Class for managing internal and external geometry as a single object. This is a light-weight alternative to
passing the whole SketchObject.
It reflects the format used in getCompleteGeometry of SketchObject and Sketch solver facade class, while providing
several convenient conversion functions to map indices.
Internal and external geometries are present in a single geometry vector one after the other.
The index of the geomlist (all layers) and the GeoId can be converted from each other at needed
using the member fuctions (and sometimes the static member functions).
Internal implementation is as a template GeoListModel<T>.
The following types are instantiated. Specialisation is provided where necessary.
GeoList = GeoListModel<Part::Geometry *>;
GeoListFacade = GeoListModel<std::unique_ptr<const Sketcher::GeometryFacade>>;
This enables to use the lighter GeoList were sufficient, while enabling off-the-shelf replacement
when switching to a GeoListFacade is necessary.
2021-12-07 16:30:53 +01:00
Abdullah Tahiri
cc94820a06
Sketcher: GeometryFacade Improvements
...
===============================================
1. Correct GeometryFacade getGeometry for const objects.
2. Modifications to avoid exceptions on the constructors.
3. Add default move constructor and move assignment operator.
4. Delete default copy constructor and copy assigment operator.
2021-12-07 16:30:53 +01:00
Abdullah Tahiri
a16cbdc7a4
Part: Geometry - Curve member to calculate the normal at Point
...
==============================================================
Convenience member function combining closestParameter and normalAt using parameter.
2021-12-07 16:30:53 +01:00
Abdullah Tahiri
80f9793344
Part: Geometry - Extend Geometry Curve to query the value at parameter point directly from D0
...
=============================================================================================
Use the geometry specific D0 to calculate value at parameter point.
2021-12-07 16:30:53 +01:00
Abdullah Tahiri
70757f8ae3
Sketcher: Constraint.h - add underlying type to PointPos enum
...
==============================================================
This enables forward declarations.
2021-12-07 16:30:53 +01:00
wmayer
a6838cf58f
Gui: rename methods of SelectionObserver to clarify intention in client code
2021-12-07 14:17:07 +01:00
wmayer
8424c9323b
PD: enable selection only on request and disable it after selecting an object
2021-12-07 13:06:48 +01:00
wmayer
90db4c885b
PD: eliminate the boolean argument from TaskSketchBasedParameters::onSelectReference
2021-12-07 11:04:22 +01:00
wmayer
c1289a0d6f
PD: 0004759: Bad error message when creating pad with 0 length
2021-12-07 10:09:11 +01:00
Uwe
242531b1c2
[PD] improve selection mode exit for Helix
...
exit the selection mode if selection was got - like we do it for all other PD features
2021-12-07 04:18:33 +01:00
Uwe
31abf0a3e6
[PD] fix calculation of possible Helix intersections
...
the current routine fails for the growth mode.
This PR fixes this by handling this case separately from the other modes.
2021-12-07 03:19:35 +01:00
wmayer
a20383af34
Part: 0004742: Editing features by context menu may not be undoable
2021-12-06 19:34:52 +01:00
wmayer
a12695e44f
Gui: move methods startDefaultEditMode() and addDefaultAction() to ViewProviderDocumentObject
2021-12-06 19:24:26 +01:00
wmayer
d360917583
PD: 0004742: Editing features by context menu may not be undoable
2021-12-06 14:11:10 +01:00
Peter Roß
35d29b5174
Merge branch 'FreeCAD:master' into RRF-PP-for-Path
2021-12-06 12:33:23 +01:00
Uwe
dd639cbe8d
[PD] fix division by zero in Helix
...
- when a helix is defined in the growth mode it can have a pitch of zero
This commit fixes the resulting division by zero by directly setting the known turns
2021-12-06 02:40:34 +01:00
Uwe
9abe56741a
[PD] Helix: improve variable naming
...
use unique variable names
2021-12-05 21:59:06 +01:00
Uwe
6dc5358a2e
[PD] rewrite a Helix function
...
rewrite the function to check if helix might intersect itself to make it better readable/understandable
2021-12-05 21:28:52 +01:00
Uwe
45db2195d3
[PD] add missing tooltips for Helix dialog
2021-12-05 19:21:27 +01:00
wmayer
45de32c4e1
Spreadsheet: fix format of table cells when used for printing, by default use landscape orientation
2021-12-05 12:16:54 +01:00
wmayer
1d3822822d
Spreadsheet: issue 0002957: spreadsheet direct printing
2021-12-04 23:36:11 +01:00
Roy-043
a62ffdf93d
Draft: fix task panel_issues (gui_texts.py)
2021-12-04 22:01:29 +01:00
Roy-043
6684196c81
Draft: fix task panel issues (gui_polygons.py)
2021-12-04 22:00:43 +01:00
Roy-043
4f8094baec
Draft: fix task panel issues (gui_points.py)
2021-12-04 21:59:47 +01:00
Roy-043
d97ba3c622
Draft: fix task panel issues (gui_edit.py)
2021-12-04 21:58:50 +01:00
Roy-043
aec803fe8d
Draft: fix task panel issues (DraftGui.py)
2021-12-04 21:57:31 +01:00
wmayer
b9d2aca09f
PD: refactor ReferenceSelection
2021-12-03 21:38:28 +01:00
wmayer
0579052cbc
PD: comment out dead code
2021-12-03 20:18:46 +01:00
0penBrain
2f8f4d6a7f
[Gui] UserEditMode : fix operating on PartDesignObject
2021-12-03 16:53:30 +01:00
wmayer
945028847a
PD: avoid include generated .ui file in header file
2021-12-03 15:59:15 +01:00
wmayer
e9c4f4acc1
PD: minor cleanup in view provider headers
2021-12-03 15:58:23 +01:00
wmayer
b165947625
PD: cleanup the mess with boolean arguments and replace them with a bitmask
2021-12-03 14:46:19 +01:00
Yorik van Havre
9135b5ec90
Merge pull request #5219 from luzpaz/gender-neutral-fixes
...
Make source code comments use gender neutral pronouns
2021-12-03 13:36:17 +01:00
wmayer
0711f6003b
PD: use button group to make mid-plane and reversed option mutual exclusive
2021-12-03 00:01:49 +01:00
sliptonic
8a5aaf35a3
Merge pull request #5217 from sliptonic/feature/rotationgenerator
...
[PATH] rotation generator and tests
2021-12-02 15:40:06 -06:00
luz paz
d877ee4d47
Make source code comments use gender neutral pronouns
...
The changes also include some grammatical fixes as well.
2021-12-02 16:18:04 -05:00
wmayer
d4f0eb5bfb
PD: fix ProfileBased::getAxis
...
Introduce an enum to verify the axis depending on the used context.
* For helix no restriction is needed
* For Pad/Pocket the axis must not be parallel with the sketch plane
* For Revolve/Groove the axis must not be perpendicular with the sketch plane
2021-12-02 17:24:18 +01:00
wmayer
74c4d17695
TD: fix C++20 warning: bitwise operation between different enumeration types [-Wdeprecated-enum-enum-conversion]
2021-12-02 10:12:35 +01:00
wmayer
5e66475757
PD: fix build failure with C++20
2021-12-01 23:24:16 +01:00
sliptonic
4c31c729c0
draft generator and tests
2021-12-01 13:15:09 -06:00
0penBrain
f568cc6d96
[Sketcher][Bugfix] Slot: fix segfault accessing empty vector
2021-12-01 18:48:05 +01:00
Yorik van Havre
ea195ab2be
Merge pull request #5178 from Roy-043/Draft-housekeeping-import-is_group-get_windows
...
Draft housekeeping: import is_group and get_windows in Draft.py
2021-12-01 15:02:54 +01:00
Yorik van Havre
f938c74929
Merge pull request #5202 from Roy-043/Draft-fix-3-snap-issues
...
Draft: fix 3 snap issues
2021-12-01 15:01:27 +01:00
Yorik van Havre
c40f919d43
Merge pull request #5206 from Roy-043/Draft-fix-layer-and-style-handling-of-point-color-and-point-size
...
Draft: Draft_SetStyle and Draft_Layer did not handle PointColor and PointSize.
2021-12-01 14:57:09 +01:00
wmayer
1a96fa60ce
Part: add exception handling to Face.makeEvolved/Wire.makeEvolved
2021-11-30 20:04:31 +01:00
wmayer
c5ffdd4318
Part: add module with enums
2021-11-30 20:03:26 +01:00
wmayer
d41a9a1e5c
Part: implement Part.Wire.makeEvolved and Part.Face.makeEvolved
2021-11-30 18:17:29 +01:00
wmayer
d56b05678f
PD: refactoring of TaskHelixParameters
2021-11-30 11:47:06 +01:00
wmayer
1ecc59d6a4
PD: fix crash in TaskHelixParameters::updateStatus()
2021-11-30 10:36:36 +01:00
wmayer
0cd9ed7429
PD: refactoring of TaskHelixParameters, update status after each recompute
2021-11-29 22:14:14 +01:00