Commit Graph

42 Commits

Author SHA1 Message Date
Kevin Martin
39bee92bea Replace deprecated escapes with valid ones 2024-02-02 08:58:49 -05:00
Roy-043
0eb8f1f750 Draft: Avoid draftToolBar.getDefaultColor outside DraftGui.py
The draftToolBar.getDefaultColor() function is an indirect way of retreiving a parameter. It is better to avoid it where possible.
2024-02-01 18:02:10 +01:00
Roy-043
3d9c520b0d Draft: implement new get_param functions (step 2)
See #11677
2023-12-12 14:48:09 +01:00
Roy-043
a6cd89f746 Draft: use MarkerSize for snap and tracker markers 2023-12-08 21:17:34 +01:00
Roy-043
6c015072eb Draft: implement DefaultAnnoLineWidth and DefaultAnnoLineColor prefs
The format_object function in gui_utils.py still requires some work (in connection with the Draft_SetStyle command). This will be done later.
2023-11-29 23:06:17 +01:00
Roy-043
94a649b128 Draft: improved handling of snap prefs
* Some trackers had 2 color nodes.
* Added a setColor function to some trackers.
* Added a set_snap_style function to the Snapper class.
2023-11-21 17:14:17 +01:00
Roy-043
9563a40e32 Draft: gridShowHuman did not work
* The gridBorder pref was ignored.
* BimProject has been renamed to BimProjectManager.
2023-11-20 19:54:24 +01:00
Roy-043
0f76aaab86 Draft: cleanup related to PR11336
See #11336
2023-11-14 11:51:34 +01:00
Roy-043
453c099873 Draft: Improve grid behavior
This PR improves the behavior of the Draft grid:
* Options in the preferences: "Always show the grid" and "Show the grid during commands".
* The parameters are used for new views. In existing views the grid can be toggled either during a command or when no command is active.
* When switching to a different workbench all grids are hidden unless GridHideInOtherWorkbenches is set to `False`. This can be a Fine-tuning parameter IMO.

Notes:
* The defaultCameraHeight parameter becomes obsolete. It was only used in very specific circumstances.
* The code of PR #8818 becomes obsolete. It makes more sense to use `App.activeDraftCommand` instead of adding a `tool` argument to some functions. Will do some related cleanup later.
* Improved alignment for the related preference ui. The checkbox interaction has been fixed as well.
2023-11-10 14:02:38 +01:00
Roy-043
a2e85a4ae1 Draft: Updates related to the PlaneGui class (step 4)
Related issue:
#5603.

For gui_snapper.py and gui_trackers.py an intermediate solution has been adopted. They still rely on App.DraftWorkingPlane, but now use a small function to retreive it.

Simply switching to the PlaneGui class is problematic for the trackers as this results in an endless recursion (wp->grid->wp->...). Using the old App.DraftWorkingPlane (which is kept up-to-date by PlaneGui) solves this for now. I will try to return to this later (which may be after the next release though).
2023-10-31 15:41:21 +01:00
Roy-043
fd609b4e37 Draft: Fix angular dimension issue caused by #10556
Forum topic:
https://forum.freecad.org/viewtopic.php?t=81956

This PR basically reverts PR #10556.

The angular offset required for the Draft_Arc command is handled in the gui_arc.py file instead. Also removed the unused `urotated` variable from that file.
2023-10-17 15:05:12 +02:00
Roy-043
65cd8adca8 Draft: arcTracker did not take Working Plane rotation into account
Steps to verify the issue:
1. Open FreeCAD.
2. Switch to Std_ViewTop.
3. Click one of the curved arrows of the Navigation Cube.
4. Switch to the Draft WB.
5. Make sure Draft_SelectPlane is set to "Auto".
6. Start Draft_Arc and click 2 points (for the radius and the start angle).
7. Result: The displayed arc does not match the start angle or the current point.

Additonally:
* Removed the normal argument from `__init__`. The tracker does not work properly with just a normal. AFAICT there is no code that specifies this normal.
* Minor improvement to `getAngle`: Switched the vectors.
2023-09-05 15:39:17 +02:00
Roy-043
a205ee549f Draft: Fix Draft_Mirror preview 2023-08-29 16:25:42 +02:00
Roy-043
5c4d8730d9 Draft: Add placement_from_points to geometry.py
Changed getPlacementFromPoints function in WorkingPlane.py to a compatibility function that calls placement_from_points.
2023-08-23 11:17:17 +02:00
luzpaz
129d5882a7 Migrate domain name from freecadweb to freecad (#9352)
* Migrate domain name from freecadweb to freecad
* Migrate src/Mod/Material files
* Migrate Stylesheet related files
* Migrate *.svg files
* Migrate miscellaneous files
* Migrate some build files
* Migrate recently added TD AR_IRAM template files

Closes #6415
2023-04-24 15:19:20 -05:00
luzpaz
78bdc34996 Draft: linting bad indentations, superflous markup (#9313) 2023-04-19 09:48:57 +02:00
alafr
7a13209a32 Draft: avoid precision loss of SoCoordinate3 (#9202) 2023-04-12 15:32:14 +02:00
Yorik van Havre
3585ed46e3 Draft: Fixes grid on/off behaviour - fixes #5878
- If grid is on and auto grid on: Grid always appears
- If grid is on and auto grid off: Grid off at start, on when using a tool, off afterwards
- If grid is off: Grid never appears
2023-03-10 12:19:27 +01:00
Roy-043
a891d5c766 Draft: fix normal calculation for angular dims 2023-02-03 15:44:27 +01:00
0penBrain
ccdbf99341 Draft: fix issues with grid spacing parameter 2022-05-25 09:02:12 +02:00
Roy-043
0b12cba3b5 Draft: Fix grid update issue
If the grid spacing was updated in this sequence: 1 -> 0 -> 1 (or any sequence where the first and last value are equal), the grid would not be redrawn.
2022-05-18 22:49:05 +02:00
Yorik van Havre
06515cd340 Draft: Prevented error when grid size is zero - issue #5427 2022-05-17 10:58:10 +02:00
marioalexis
e62496b636 Draft: Fix orientWP method used by in Draft_Line command 2022-04-20 14:12:26 -03:00
flachyjoe
e6f3f4ba57 Don't take grid into account when View_FitAll 2022-03-16 17:30:25 +01:00
Roy
c81ce5dea1 Draft: fix task panel related issues
This PR fixes several task panel related issues for Draft modifier commands.
2022-01-15 18:23:05 +01:00
marioalexis
68439aa831 Draft: Use super() to call base class methods 2022-01-07 22:24:21 +01:00
Mariwan
122deb98fb Draft: change static to non-static declared variables (#5292)
* Draft: change static to non-static declared variables

* Change variable name and add some comment
2022-01-05 16:39:28 +01:00
carlopav
dfd8b82fa2 Draft: updated working plane BIM figure
Display the human figure at the grid corner.
        The silhouette is displayed only if:
        - BIM Workbench is available;
        - preference BaseApp/Preferences/Mod/Draft/gridShowHuman is True;
        - the working plane normal is vertical.
2021-09-26 12:12:51 +02:00
carlopav
5810bde0de Draft: Grid added option to disable human figure representation
The "gridShowHuman" preference was introduced to disable the human figure representation in the grid.
2021-09-26 09:59:34 +02:00
Chris Hennes
fe7e45a7de [DRAFT] Catch only Exception, not BaseException 2021-02-11 11:52:45 +01:00
Yorik van Havre
f13c8974b5 Draft: Colored grid axes 2020-12-03 15:15:15 +01:00
marioalexis
31f30747ac Draft: Change archDimTracker text position depending on distance and scale values 2020-11-23 16:25:21 -03:00
Yorik van Havre
88f5fc20b1 Draft: Condensed the Draft toolbar style buttons into one with more options 2020-11-10 14:14:18 +01:00
marioalexis
a36fb60653 Draft: Improve archDimTracker class 2020-11-09 12:39:19 +01:00
vocx-fc
e3da572072 Draft: add modules of draftguitools to the proper Doxygen group
This includes `gui_annotationstyleeditor`, `gui_arcs`, `gui_array_simple`,
`gui_arrays`, `gui_base`, `gui_base_original`, `gui_beziers`,
`gui_circles`, `gui_circulararray`, `gui_clone`, `gui_circulararray`,
`gui_clone`, `gui_dimension_ops`, `gui_dimensions`, `gui_downgrade`,
`gui_draft2sketch`, `gui_drawing`, `gui_edit`, `gui_edit_arch_objects`,
`gui_edit_draft_objects`, `gui_edit_part_objects`, `gui_edit_sketcher_objects`,
`gui_ellipses`, `gui_facebinders`, `gui_fillets`, `gui_grid`,
`gui_groups`, `gui_heal`, `gui_join`, `gui_labels`, `gui_line_add_delete`,
`gui_lineops`, `gui_lines`, `gui_lineslope`, `gui_mirror`,
`gui_move`, `gui_offset`, `gui_orthoarray`, `gui_patharray`,
`gui_planeproxy`, `gui_pointarray`, `gui_points`, `gui_polararray`,
`gui_polygons`, `gui_rectangles`, `gui_rotate`, `gui_scale`,
`gui_selectplane`, `gui_shape2dview`, `gui_shapestrings`, `gui_snapper`,
`gui_snaps`, `gui_splines`, `gui_split`, `gui_stretch`, `gui_styles`,
`gui_subeleemnts`, `gui_texts`, `gui_togglemodes`, `gui_tools_utils`,
`gui_trackers`, `gui_trimex`, `gui_upgrade`, `gui_wire2spline`.

These are added to the `draftguitools` Doxygen group
so that the functions and classes contained in each module
are listed appropriately in the automatically generated
documentation.
2020-07-17 13:01:45 +02:00
Yorik van Havre
593831e056 Draft: Add human figure to the grid if the BIM WB is installed 2020-07-10 14:44:24 +02:00
Yorik van Havre
43c4f9af3d Draft: Added a border around the Draft grid (can be disabled in prefs) 2020-05-27 18:02:04 +02:00
vocx-fc
ec5dcdc087 Draft: gui_trackers clean up docstrings and spaces (3)
Many small spacing fixes in the code, to improve the Pythonic
style according to PEP8.
Also add many docstrings in triple quotes.
2020-04-07 18:12:06 +02:00
vocx-fc
da1f71dfc0 Draft: gui_trackers clean up docstrings and spaces (2)
Many small spacing fixes in the code, to improve the Pythonic
style according to PEP8.
Also add many docstrings in triple quotes.
2020-04-07 18:12:06 +02:00
vocx-fc
1cde3156b0 Draft: gui_trackers clean up docstrings and spaces
Many small spacing fixes in the code, to improve the Pythonic
style according to PEP8.
Also add many docstrings in triple quotes.
2020-04-07 18:12:06 +02:00
vocx-fc
046be91982 Draft: gui_trackers.py clean up imports and spaces
Small spacing fixes like imports in separate lines
for more clarity, and the position of the license.
Also use the `ToDo` class with this new name
following Python guidelines.
2020-04-07 18:12:06 +02:00
vocx-fc
b38dcd9ff6 Draft: move DraftTrackers to another module.
Properly import the tracker classes. Avoid star imports,
and use the classes prefixed with the name of the module.
The BIM Workbench also has to be updated to use the new
module.
```
import draftguitools.gui_trackers as DraftTrackers
```
2020-03-23 12:14:33 +01:00