Commit Graph

57 Commits

Author SHA1 Message Date
Chris Hennes
215e966c3e Merge pull request #19753 from benj5378/tag
TechDraw: centralize tag functionality
2025-03-03 10:36:24 -06:00
Benjamin Bræstrup Sayoc
2bbf6c7f6e Move Tag to separate translation unit
- Avoid code duplication
- Reduces compile time
2025-02-21 13:01:28 +01:00
Benjamin Bræstrup Sayoc
22058b2c82 Remove unused function assignTag 2025-02-21 11:25:52 +01:00
Kacper Donat
a72a63232a 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
b71c2a3278 [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
0c1f6138b4 [TD]use standard lines & LineFormat in extensions 2023-12-27 19:46:34 -05:00
wandererfan
e6517089df [TD]fix location of CV on rotated views 2023-12-24 12:27:25 -05:00
wandererfan
8a7e8effb3 [TD]Standard Line Styles - App components 2023-12-01 11:27:29 -05:00
wandererfan
8e52a0baf8 [TD]Rotate CosmeticEdge with View 2023-08-19 17:18:42 -04:00
Benjamin Bræstrup Sayoc
5cb05ce3c1 [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
a207822ee8 [TechDraw] Move CenterLine into own file 2023-04-06 13:51:35 -04:00
Benjamin Bræstrup Sayoc
124bbcdeb9 [TechDraw] Move CosmeticVertex into own file 2023-04-06 13:51:35 -04:00
Uwe
76ec5de64b [TD] A* - C*: remove unused includes
- also sort includes
- also sort PreCompiled.h
2022-10-03 23:05:36 +02:00
wandererfan
86f61834ce [TD]default LineFormat ctor 2022-09-07 16:06:54 -04:00
wandererfan
acf17905ed [TD]CI clang warnings 2022-09-05 17:48:38 -04:00
berniev
6953310116 Mod: Single arg ctors must be explicit 2022-08-24 16:55:20 +02:00
Wanderer Fan
6677cd4d8f [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
2f49a93292 [TD]fix LineFormat ctor line color 2022-08-12 13:00:21 -04:00
wmayer
2062f9ce87 clang: fix warnings [-Winconsistent-missing-override] 2022-08-09 17:36:25 +02:00
berniev
ddafb98813 Mod: Use override etc 2 2022-08-09 12:52:26 +02:00
berniev
da9ebc572f Mod: redundant void 2 2022-08-08 10:27:50 +02:00
Benjamin Bræstrup Sayoc
127af5bea4 [TechDraw] Remove deprecated replaceCosmeticVertex 2022-08-02 16:09:54 -04:00
Uwe
a4ec6d4f83 [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
0421d7cc5d [TechDraw] Gather rotation calculations in a single function 2022-07-16 16:00:10 -04:00
Benjamin Bræstrup Sayoc
568cc79186 [TechDraw] Refactor CosmeticEdge constructors
Use constructor delegation and default parameters for CosmeticEdge
2022-07-16 16:00:10 -04:00
Benjamin Bræstrup Sayoc
fac4e72ea4 [TechDraw] Use constructor delegation for CosmeticEdge 2022-07-16 16:00:10 -04:00
Benjamin Bræstrup Sayoc
eb3a04f30e [TechDraw] Use default parameters for LineFormat constructor 2022-07-16 16:00:10 -04:00
Wanderer Fan
d36cbb522a [TD]fix ExtendShorten handling of CenterLine 2022-04-23 18:43:27 -04:00
Uwe
f1a4c703b4 [TD] App Headers: remove unused header - part 1 2022-03-24 23:06:08 +01:00
edi271
c46a4f776b [TD] Move Circulation method to DrawUtil 2022-01-21 11:22:40 -05:00
Wanderer Fan
e91cc8e329 [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
b981f9056c [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
4183594039 [TD]CosmeticEdge setters and getters 2020-06-09 18:40:59 -04:00
wandererfan
1533ea01ba [TD]Simplify Cosmetic List & PyObject handling 2020-05-16 07:42:45 -04:00
wandererfan
96e8f752be [TD]Landmark Dims initial impl 2020-02-25 17:21:00 -05:00
wandererfan
a04d0f2574 [TD]Py routines for CenterLines 2019-12-16 20:36:10 -05:00
wandererfan
1ad2d35bce [TD]Python routines and extension for line formating 2019-12-16 20:36:10 -05:00
wandererfan
08f23b84f7 [TD]Python routines and extension for Cosmetic Edges 2019-12-16 20:36:10 -05:00
wandererfan
d9e0c2e452 [TD]Python routines & extension for CosmeticVertex 2019-12-16 20:36:10 -05:00
wandererfan
a7ad04ba4a [TD]const-ness for dump function parameter 2019-11-10 15:58:45 -05:00
wandererfan
805d701aa7 [TD]Allow skip restore cosmetics
- temporary work around due to format changes during v019
  devl
2019-11-06 20:31:02 -05:00
wandererfan
fcf5435b43 [TD]Save geometry and tag with centerline 2019-11-06 20:31:02 -05:00
wandererfan
900a7c6bdd [TD]use UUID for CosmeticEdges instead of indices 2019-11-06 20:31:02 -05:00
wandererfan
5cab111a65 [TD]Implement unique tags for Cosmetic Vertex 2019-11-02 14:59:32 -04:00
wandererfan
a7d9661b1d [TD]Extent Dimensions 2019-11-02 14:59:32 -04:00
wandererfan
b5464ccf4d [TD]Add uuid tags for cosmetics 2019-08-22 17:11:55 -04:00
wandererfan
517b11ee3b [TD]Fix crash on same end points 2019-07-19 20:17:20 -04:00
wandererfan
3aa6fa19c6 [TD]Py functions for CenterLines and formatting 2019-07-19 20:17:20 -04:00
wandererfan
941968b37c [TD]Edge and Vertex center lines 2019-07-15 12:36:48 -04:00
wandererfan
621b66be17 [TD]Add Properties for Cosmetic persistence 2019-07-15 12:36:48 -04:00