Commit Graph

57 Commits

Author SHA1 Message Date
Chris Hennes
d9ab6c1645 Merge pull request #19753 from benj5378/tag
TechDraw: centralize tag functionality
2025-03-03 10:36:24 -06:00
Benjamin Bræstrup Sayoc
b7f56a219f Move Tag to separate translation unit
- Avoid code duplication
- Reduces compile time
2025-02-21 13:01:28 +01:00
Benjamin Bræstrup Sayoc
934e9fb683 Remove unused function assignTag 2025-02-21 11:25:52 +01:00
Kacper Donat
13fbab9e42 Base: Move App::Color to Base
Every basic data type is stored in Base module, color is standing out as
one that does not. Moving it to Base opens possibilities to integrate it
better with the rest of FreeCAD.
2025-02-17 21:10:26 +01:00
WandererFan
50f970efd7 [TD]Cosmetic function overhaul (#14216)
* [TD]Cosmetic geometry and tools update

- all cosmetics to store geometry in same form
- all cosmetics to survive scaling and rotation
- extension functions to survive scaling and rotation

* [TD]overhaul leader point storage and editing

- add py routine makeLeader(points)

* [TD]add leader conversion utility

* [TD]Set Leader RotateWithView default to true

* [TD]fix intersection vertex position

* [TD]add CosmeticEdge::makeLineFromCanonicalPoints

* [TD]fix 2 Extension tools

- positioning in DrawCosmeticCircle
- mishandling of points in execLineParallelPerpendicular

* [TD]Remove duplicate constexpr

* [TD]fix 2x Cosmetic arc tools

* [TD]refactor LineFormat out of Cosmetic

* [TD]move cosmetic appearance settings to LineFormat

* [TD]remove 2 unused methods

* [TD]apply format to blue line & circle tools

* [TD]fix ballon arrowhead does not rotate with view

* [TD]fix CosmeticCircle3Points

* [TD]allow multiple cosmetic object deletions

* [TD]fix extend/shorten centerline
2024-05-23 09:41:42 -04:00
wandererfan
de320363c9 [TD]use standard lines & LineFormat in extensions 2023-12-27 19:46:34 -05:00
wandererfan
023dd8ed8a [TD]fix location of CV on rotated views 2023-12-24 12:27:25 -05:00
wandererfan
70d89b7437 [TD]Standard Line Styles - App components 2023-12-01 11:27:29 -05:00
wandererfan
9084bfd81a [TD]Rotate CosmeticEdge with View 2023-08-19 17:18:42 -04:00
Benjamin Bræstrup Sayoc
576aba95a2 [TechDraw] Improve Cosmetic.cpp typing
Make type safe by using const keywords when appropriate and improve memory handling by using references when appropriate.
2023-08-19 13:28:53 -04:00
Benjamin Bræstrup Sayoc
0bfae905d9 [TechDraw] Move CenterLine into own file 2023-04-06 13:51:35 -04:00
Benjamin Bræstrup Sayoc
1f0ba98de5 [TechDraw] Move CosmeticVertex into own file 2023-04-06 13:51:35 -04:00
Uwe
01c7df9f4f [TD] A* - C*: remove unused includes
- also sort includes
- also sort PreCompiled.h
2022-10-03 23:05:36 +02:00
wandererfan
2dfc8667b6 [TD]default LineFormat ctor 2022-09-07 16:06:54 -04:00
wandererfan
aa2b1b8392 [TD]CI clang warnings 2022-09-05 17:48:38 -04:00
berniev
180edfa3cc Mod: Single arg ctors must be explicit 2022-08-24 16:55:20 +02:00
Wanderer Fan
aa1193559b [TD]clazy warnings and duplicate setter/getter
- clazy warning re missing Q_OBJECT

- include TechDrawGlobal.h in headers

- resolve duplicate setter/getters
2022-08-18 09:34:32 -04:00
Wanderer Fan
93fb6b999c [TD]fix LineFormat ctor line color 2022-08-12 13:00:21 -04:00
wmayer
c87e1cc1c2 clang: fix warnings [-Winconsistent-missing-override] 2022-08-09 17:36:25 +02:00
berniev
71dc5ead2f Mod: Use override etc 2 2022-08-09 12:52:26 +02:00
berniev
f4ffd15864 Mod: redundant void 2 2022-08-08 10:27:50 +02:00
Benjamin Bræstrup Sayoc
a017cb41bc [TechDraw] Remove deprecated replaceCosmeticVertex 2022-08-02 16:09:54 -04:00
Uwe
22fb8ed337 [TD] fix compilation on MSVC
- CLMODE was used before its declaration, therefore it did not compile
forum thread: https://forum.freecadweb.org/viewtopic.php?f=10&t=70316
2022-07-17 00:26:13 +02:00
Benjamin Bræstrup Sayoc
f7c236a071 [TechDraw] Gather rotation calculations in a single function 2022-07-16 16:00:10 -04:00
Benjamin Bræstrup Sayoc
6356459ab6 [TechDraw] Refactor CosmeticEdge constructors
Use constructor delegation and default parameters for CosmeticEdge
2022-07-16 16:00:10 -04:00
Benjamin Bræstrup Sayoc
a5e10cc49b [TechDraw] Use constructor delegation for CosmeticEdge 2022-07-16 16:00:10 -04:00
Benjamin Bræstrup Sayoc
95f1c6f240 [TechDraw] Use default parameters for LineFormat constructor 2022-07-16 16:00:10 -04:00
Wanderer Fan
1c97b3d5df [TD]fix ExtendShorten handling of CenterLine 2022-04-23 18:43:27 -04:00
Uwe
0c1172c58e [TD] App Headers: remove unused header - part 1 2022-03-24 23:06:08 +01:00
edi271
1a8e88eeec [TD] Move Circulation method to DrawUtil 2022-01-21 11:22:40 -05:00
Wanderer Fan
28c5890bc9 [TD] avoid memory leaks by using shared_ptr
TD geometry objects are sometimes double deleted.  This
change uses shared_ptr instead of raw pointers to manage
deletions.
2022-01-07 13:34:20 -05:00
donovaly
2bc5ac2e4b [TD] fix centerline crashes and bugs
the PR fixes the following things:
- change the way centerlines between 2 lines are calculated. The current implementation leads to many bugs and even crashes (e.g. when the 2 selected lines are parallel ones of a square). There are different forum threads from the last 1.5 years.
The new endpoint line sorting is the one described here: https://forum.freecadweb.org/viewtopic.php?f=35&start=20&t=44255&sid=989a668890f954c13ef81e4a04ee6912#p501179

- as consequence the erroneous and misleading line end flipping can go and is removed (only used internally)

- when creating a new centerline, you see it immediately

- when creating a new or editing an existing centerline and press Cancel, the creation/editing is aborted

- fix crash when the 2 selected lines are bot horizontal and one tries to create a vertical centerline

- fix crash when changing the orientation  of an existing centerline and the result would be invalid

- cleanup the code a bit
2021-05-15 05:21:29 +02:00
WandererFan
64a96e2216 [TD]CosmeticEdge setters and getters 2020-06-09 18:40:59 -04:00
wandererfan
eaf2f0e8a4 [TD]Simplify Cosmetic List & PyObject handling 2020-05-16 07:42:45 -04:00
wandererfan
cb2a3d529c [TD]Landmark Dims initial impl 2020-02-25 17:21:00 -05:00
wandererfan
8cbcd243e6 [TD]Py routines for CenterLines 2019-12-16 20:36:10 -05:00
wandererfan
b54212f82c [TD]Python routines and extension for line formating 2019-12-16 20:36:10 -05:00
wandererfan
a71bc8f734 [TD]Python routines and extension for Cosmetic Edges 2019-12-16 20:36:10 -05:00
wandererfan
f63cd9255a [TD]Python routines & extension for CosmeticVertex 2019-12-16 20:36:10 -05:00
wandererfan
e64929de14 [TD]const-ness for dump function parameter 2019-11-10 15:58:45 -05:00
wandererfan
44b1f46858 [TD]Allow skip restore cosmetics
- temporary work around due to format changes during v019
  devl
2019-11-06 20:31:02 -05:00
wandererfan
cf94e56905 [TD]Save geometry and tag with centerline 2019-11-06 20:31:02 -05:00
wandererfan
f539a0ea8c [TD]use UUID for CosmeticEdges instead of indices 2019-11-06 20:31:02 -05:00
wandererfan
b34eb9de77 [TD]Implement unique tags for Cosmetic Vertex 2019-11-02 14:59:32 -04:00
wandererfan
88b07896e6 [TD]Extent Dimensions 2019-11-02 14:59:32 -04:00
wandererfan
ffcafaf1a5 [TD]Add uuid tags for cosmetics 2019-08-22 17:11:55 -04:00
wandererfan
ee3abc840b [TD]Fix crash on same end points 2019-07-19 20:17:20 -04:00
wandererfan
cb10b651ea [TD]Py functions for CenterLines and formatting 2019-07-19 20:17:20 -04:00
wandererfan
a4577a1e5b [TD]Edge and Vertex center lines 2019-07-15 12:36:48 -04:00
wandererfan
9828655f48 [TD]Add Properties for Cosmetic persistence 2019-07-15 12:36:48 -04:00