Commit Graph

80 Commits

Author SHA1 Message Date
Benjamin Bræstrup Sayoc
c53679422b Remove magic numbers and hard type enums in DimensionFormatter.h.h
- Remove currently present magic numbers
- Hard type enums, so magic numbers can no longer be introduced. We don't want people to introduce magic numbers.
2025-02-17 12:16:49 -05:00
Max Wilfinger
5925c7a560 Merge pull request #19097 from hyarion/refactor/template-based-is-derived-from
Simplify code by using BaseClass' isDerivedFrom<> and is<>
2025-01-27 20:40:08 +01:00
Dan Taylor
3ac01778f7 TechDraw: Fix finding outlines consisting of a single closed edge 2025-01-27 17:55:50 +01:00
Benjamin Nauck
6f535f19fb Prefer to use BaseClass's isDerivedFrom<T> over non template or Base::Type's
Regex based changes, manually verified
2025-01-27 16:08:18 +01:00
Benjamin Bræstrup Sayoc
52fe0eec53 [TechDraw] Return logic simplification (#16504)
* [TechDraw] AppTechDrawPy.cpp return logic simplification

* [TechDraw] CosmeticExtension.cpp return logic simplification

* [TechDraw] DrawBrokenView.cpp return logic simplification

* [TechDraw] HatchLine.cpp return logic simplification

* [TechDraw] LineGenerator.cpp return logic simplification

* [TechDraw] Preferences.cpp return logic simplification

* [TechDraw] ShapeExtractor.cpp return logic simplification

* [TechDraw] MDIViewPage.cpp return logic simplification

* [TechDraw] QGILeaderLine.cpp return logic simplification

* [TechDraw] QGIRichAnno.cpp return logic simplification

* [TechDraw] QGTracker.cpp return logic simplification
2024-11-18 16:14:47 -03: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
edi271
fe9927f466 [TD]Expose DimExtent in Python 2024-05-17 10:55:56 +02:00
wandererfan
023dd8ed8a [TD]fix location of CV on rotated views 2023-12-24 12:27:25 -05:00
Chris Hennes
cfd41683a5 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
776649be06 TechDraw: Expose two functions for SVG export 2023-09-20 09:27:17 -04:00
Chris Hennes
c60e03741a TD: Wrap PyArg_ParseTupleAndKeywords 2023-08-25 15:34:26 -05:00
wandererfan
41817c188f [TD]split GeometryObject 2023-08-18 15:18:42 -04:00
wandererfan
8a11528a7e [TD]corrupt dim reference detect and correct 2023-03-22 20:09:35 -04:00
wandererfan
704fb894a5 [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
437457e996 [TD]remove obsolete log messages 2023-01-13 12:15:33 -05:00
Uwe
864ef31d81 [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
79ae9b8280 [TD] attempt to fix compilation with PCH after #8141
- also resort includes
2023-01-09 11:26:51 +01:00
wandererfan
208104e9e0 [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
6c7c001618 TD: [skip ci] fix build failure with boost >= 1.78 on Windows 2022-12-08 22:11:33 +01:00
wmayer
77bae9c9a0 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
01c7df9f4f [TD] A* - C*: remove unused includes
- also sort includes
- also sort PreCompiled.h
2022-10-03 23:05:36 +02:00
wandererfan
a88d4730d8 [TD]New face finder algo 2022-09-05 19:52:34 -04:00
wandererfan
aa2b1b8392 [TD]CI clang warnings 2022-09-05 17:48:38 -04:00
berniev
71dc5ead2f Mod: Use override etc 2 2022-08-09 12:52:26 +02:00
berniev
5fa05ab83d Mod: Redundant_string_initialization 2022-08-08 16:52:42 +02:00
berniev
53ba98d636 Mod: use empty 2022-08-06 19:30:13 +02:00
wmayer
c5910c1530 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
7b4e5d7522 [TD] remove more superfluous nullptr checks 2022-07-20 02:32:52 +02:00
Uwe
36add10c86 [TD] App: remove some superfluous nullptr checks 2022-07-19 02:03:50 +02:00
Benjamin Alterauge
fead475d64 Group dxf relevant files in one folder 2022-07-16 10:55:24 +02:00
Wanderer Fan
60b79e0d72 [TD]fix Dimension export to DXF 2022-06-30 08:50:07 -04:00
Wanderer Fan
75486e930b [TD]Include CosmeticLines in Dxf 2022-06-30 08:50:07 -04:00
Wanderer Fan
1bf7803b15 [TD]fix diameter dim alignment in DXF 2022-03-24 15:22:23 -04:00
wmayer
e8f9c8a1d3 TD: modernize C++11
* use nullptr
2022-03-23 19:26:14 +01:00
Wanderer Fan
bb779f8ee2 [TD]fix double units in dxf page export 2022-03-22 08:41:36 -04:00
Uwe
f8191d1899 [TD] remove Python.h and Xerces
seems not to be necessary anymore
2022-03-21 02:53:47 +01:00
wmayer
1f12dca2b4 Py: replace BaseExceptionFreeCADError with more suitable exception types 2022-03-17 13:54:23 +01:00
wmayer
0f9768fb33 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
1f1012f7a9 [TD]correct retrieval of dim text for DXF export 2022-02-11 16:24:35 -05:00
marioalexis
9801f76e2f TechDraw: Call PyMem_Free() to free allocated buffer 2022-02-09 16:04:59 +01:00
Wanderer Fan
aa6f8c4b14 [TD]migrate DrawingWB projection functions to TechDrawWB 2022-01-29 14:49:15 -05:00
luz paz
738a697d94 [TD] remove Py2 code from TD 2021-04-22 13:08:56 +02:00
Yorik van Havre
e947b9bb3b TechDraw: Exposed GeomHatch functionality to Python in TechDraw.makeGeomHatch() 2021-02-02 17:49:44 +01:00
wmayer
b3cd06afe8 Py: fix memory leaks by incorrect use of PyList_Append 2020-12-13 16:30:04 +01:00
Aapo
e7b4d9ed99 [TD] Refactor DrawViewDimension getFormatedValue() into two functions. 2020-12-02 16:38:21 +01:00
wmayer
7224fe8e8f Coverity: Explicit null dereferenced 2020-07-20 17:34:27 +02:00
wandererfan
d7659c7741 [TD]Dimension Py Routine fixes 2020-05-10 18:06:40 -04:00
wandererfan
ac8e653e0e [TD]support Horiz/Vert Dims in Dxf export 2020-01-23 13:46:51 -05:00
luz.paz
d1dc813a80 TD: fix header uniformity
This PR fixes header uniformity across all TechDraw WB.
2019-12-21 09:57:45 -05:00
wandererfan
b9035c8ad7 [TD]fix py2 unicode/string handling 2019-11-02 14:59:32 -04:00