Commit Graph

75 Commits

Author SHA1 Message Date
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
edi271
082092c51b [TD]Expose DimExtent in Python 2024-05-17 10:55:56 +02:00
wandererfan
e6517089df [TD]fix location of CV on rotated views 2023-12-24 12:27:25 -05:00
Chris Hennes
fa65438556 Core: Enable compiling with MSVC /permissive- (#11014)
* Base: Fixes for MSVC permissive-

* App: Fixes for MSVC permissive-

* Gui: Fixes for MSVC permissive-

* Main: Fixes for MSVC permissive-

* Fem: Fixes for MSVC permissive-

* Material: Fixes for MSVC permissive-

* Part: Fixes for MSVC permissive-

* Mesh: Fixes for MSVC permissive-

* Points: Fixes for MSVC permissive-

* Robot: Fixes for MSVC permissive-

* TechDraw: Fixes for MSVC permissive-

* Path: Fixes for MSVC permissive-

* Core; Changes per review comments

* TD: Revision from wandererfan

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2023-11-27 17:37:29 +01:00
Pieter Hijma
1fc5dea14c TechDraw: Expose two functions for SVG export 2023-09-20 09:27:17 -04:00
Chris Hennes
c60944ed62 TD: Wrap PyArg_ParseTupleAndKeywords 2023-08-25 15:34:26 -05:00
wandererfan
3e164a5700 [TD]split GeometryObject 2023-08-18 15:18:42 -04:00
wandererfan
b9fa9cb33e [TD]corrupt dim reference detect and correct 2023-03-22 20:09:35 -04:00
wandererfan
01641433c1 [TD]getters and setters for geometry
- make attributes private (or protected) and use
  getters and setters instead of accessing attributes
  directly.
2023-02-28 08:15:06 -05:00
wandererfan
12db3618df [TD]remove obsolete log messages 2023-01-13 12:15:33 -05:00
Uwe
ce4a916875 [TD] minor fixes
- typos and code formatting as reported by the CI
- some more re-sorting
2023-01-09 12:02:50 +01:00
Uwe
e42f46a47b [TD] attempt to fix compilation with PCH after #8141
- also resort includes
2023-01-09 11:26:51 +01:00
wandererfan
1b547dff72 [TD]Refactor Dimensions for 3d upgrade
- separate validation, geometry and reference handling into
  individual files
- improve 3d reference geometry handling
- eliminate duplicate dim creation code

- add Dimension reference repair dialog

- Refactor formatting out of DrawViewDimension

- move dimension repaint control to ViewProvider
2023-01-07 16:32:03 -05:00
wmayer
3c4375986e TD: [skip ci] fix build failure with boost >= 1.78 on Windows 2022-12-08 22:11:33 +01:00
wmayer
9e9c784041 TD: fix memory leaks with raw pointers of GeometryObject
Replacing the use of raw pointers of GeometryObject with shared pointers fixes the observed memory leaks when running the unit tests of TechDraw
2022-11-15 16:16:08 -05: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
2f363e4f17 [TD]New face finder algo 2022-09-05 19:52:34 -04:00
wandererfan
acf17905ed [TD]CI clang warnings 2022-09-05 17:48:38 -04:00
berniev
ddafb98813 Mod: Use override etc 2 2022-08-09 12:52:26 +02:00
berniev
915369d8a2 Mod: Redundant_string_initialization 2022-08-08 16:52:42 +02:00
berniev
b796a0d376 Mod: use empty 2022-08-06 19:30:13 +02:00
wmayer
e7edda9679 TD: [skip ci] Fix several clazy issues:
* Using copy-ctor but class TechDraw::anglePoints has a trivial copy-ctor but non trivial assign operator [-Wclazy-rule-of-two-soft]
* Using copy-ctor but class TechDraw::arcPoints has a trivial copy-ctor but non trivial assign operator [-Wclazy-rule-of-two-soft]
* Missing reference in range-for with non trivial type [-Wclazy-range-loop-reference]
* C++11 range-loop might detach Qt container (QList) [-Wclazy-range-loop-detach]
* signal arguments need to be fully-qualified (TechDrawGui::QGIView instead of QGIView) [-Wclazy-fully-qualified-moc-types]
* Use multi-arg instead [-Wclazy-qstring-arg]
* Use midRef() instead [-Wclazy-qstring-ref]
2022-07-25 17:00:48 +02:00
Uwe
8304a0942e [TD] remove more superfluous nullptr checks 2022-07-20 02:32:52 +02:00
Uwe
93796e2d92 [TD] App: remove some superfluous nullptr checks 2022-07-19 02:03:50 +02:00
Benjamin Alterauge
83203153cd Group dxf relevant files in one folder 2022-07-16 10:55:24 +02:00
Wanderer Fan
866da5980c [TD]fix Dimension export to DXF 2022-06-30 08:50:07 -04:00
Wanderer Fan
460d153d6c [TD]Include CosmeticLines in Dxf 2022-06-30 08:50:07 -04:00
Wanderer Fan
36a46f0cb6 [TD]fix diameter dim alignment in DXF 2022-03-24 15:22:23 -04:00
wmayer
a99be14233 TD: modernize C++11
* use nullptr
2022-03-23 19:26:14 +01:00
Wanderer Fan
1620fd5a69 [TD]fix double units in dxf page export 2022-03-22 08:41:36 -04:00
Uwe
5e6699e48d [TD] remove Python.h and Xerces
seems not to be necessary anymore
2022-03-21 02:53:47 +01:00
wmayer
d69defaa3c Py: replace BaseExceptionFreeCADError with more suitable exception types 2022-03-17 13:54:23 +01:00
wmayer
0054cbddaa Fix coverity issue:
* CID 332682: Resource leak
* CID 350607: Resource leak
* CID 332677: Resource leak
2022-03-14 11:35:04 +01:00
Wanderer Fan
88004e8dc9 [TD]correct retrieval of dim text for DXF export 2022-02-11 16:24:35 -05:00
marioalexis
7895af1822 TechDraw: Call PyMem_Free() to free allocated buffer 2022-02-09 16:04:59 +01:00
Wanderer Fan
cc770208ea [TD]migrate DrawingWB projection functions to TechDrawWB 2022-01-29 14:49:15 -05:00
luz paz
1d60dbdc85 [TD] remove Py2 code from TD 2021-04-22 13:08:56 +02:00
Yorik van Havre
078160ea70 TechDraw: Exposed GeomHatch functionality to Python in TechDraw.makeGeomHatch() 2021-02-02 17:49:44 +01:00
wmayer
aec9d5f07a Py: fix memory leaks by incorrect use of PyList_Append 2020-12-13 16:30:04 +01:00
Aapo
c695b4009b [TD] Refactor DrawViewDimension getFormatedValue() into two functions. 2020-12-02 16:38:21 +01:00
wmayer
60b4918333 Coverity: Explicit null dereferenced 2020-07-20 17:34:27 +02:00
wandererfan
37340eef0f [TD]Dimension Py Routine fixes 2020-05-10 18:06:40 -04:00
wandererfan
91f91f458d [TD]support Horiz/Vert Dims in Dxf export 2020-01-23 13:46:51 -05:00
luz.paz
cbdba0b5bb TD: fix header uniformity
This PR fixes header uniformity across all TechDraw WB.
2019-12-21 09:57:45 -05:00
wandererfan
f1e9c1967a [TD]fix py2 unicode/string handling 2019-11-02 14:59:32 -04:00
wandererfan
a7d9661b1d [TD]Extent Dimensions 2019-11-02 14:59:32 -04:00
Zheng, Lei
d26f772035 TechDraw: Link related changes
* Support link and group objects

* Support view sync by implementing view provider API getMDIView()

* Use handleChangedPropertyType() for object migration instead of
  reimplementing Restore() because of a lots of changes in
  PropertyContainer::Restore().

* Various other small fixes.
2019-08-17 15:15:46 +02:00
wandererfan
5970e91ef2 [TD]Py Cosmetic Vertex, Line, Circle Arc 2019-07-15 12:36:48 -04:00
wandererfan
7028da17b5 Expose findCentroid to Python 2018-08-11 11:24:12 +02:00
wandererfan
0790e3c920 Add support for Dxf Export R14 spec 2018-07-18 10:52:03 -03:00