Commit Graph

31 Commits

Author SHA1 Message Date
wandererfan
ffd3f9b1a2 [TD]fix unwanted inversion in edge scrubbing 2023-04-16 16:34:09 -04:00
Benjamin Bræstrup Sayoc
468c3b3afb [TechDraw] Improve readability of DrawProjectSplit.cpp 2023-04-05 14:35:30 -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
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
wandererfan
0ff473a9b6 [TD]Complex Section - initial implementation 2022-10-28 08:47:45 -04:00
Uwe
4d73bd5a50 [TD] DrawD* - DrawT*: remove unused includes - part 2/2
- also sort includes
- also additions to precompiled header
2022-10-08 17:21:26 +02:00
Uwe
c8b51fb79c [TD] DrawUtil: remove unused includes
- also sort includes
- also move a definition to it
- also adapt two Gui files accordingly
2022-10-08 03:35:59 +02:00
wandererfan
f99ff1b429 [TD]fix missing "= true" 2022-09-12 19:20:07 -04: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
f4ffd15864 Mod: redundant void 2 2022-08-08 10:27:50 +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
Wanderer Fan
855941d5bb [TD]fix misplaced section line
- BRepBndLib::Add results in wrong bbox center.
- replaced with BRepBndLib::AddOptimal
2022-03-03 09:31:29 -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
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
9d9d41bcd0 [TD]correct alignment of Section & Detail with Base 2019-11-27 07:31:45 -05:00
wandererfan
fbfdb69c20 [TD]Py Cosmetic Vertex, Line, Circle Arc 2019-07-15 12:36:48 -04:00
Markus Lampert
e13c09235f Changed all catch types to references for polymorphic exceptions. 2018-08-08 15:45:30 +02:00
Dmitrii Starostin
89a11dcf0d IMHO it looks like a bug... 2018-07-03 17:53:43 -03:00
TeroK
61b202992c TechDraw: Add option to use polygonal HLR algorithm
Now on property panel there is option 'Coarse View' which allows to set
selected drawing view's Hidden Line Removal to utilize polygonal algorithm.
This should be faster on same cases (complex models).

When this option is set for a view there is known limitation with dimensions not
working on this experimental mode. At least currently this is best utilized on
view with no dimensions.

Also the vertices' 'black dots' are not drawn on this mode view to avoid
cluttering.  Face hilite is avoided, to gain speed. All curves are represented
by short linesegments in this mode.

Previously TechDraw always used OCC's exact HLR algorithm to generate views,
which produces good quality and continous shape lines but is sometimes
slower to generate than with polygonal approach.

Additionally now there is bool 'CoarseView' Parameter Editor setting, if anyone
wants to set this as their default.
2018-01-22 19:31:30 +01:00
Peter Lama
fa4bebf2e0 Use OCCT Handle macro for Handle_ classes
This is the result of running OCCT's upgrade script provided
with OCCT 7.0. See
https://www.opencascade.com/content/freecad-occt710-and-windows-rtti-data-missing#comment-form
and
https://www.forum.freecadweb.org/viewtopic.php?f=4&t=21405&start=120#p169019
for why this is necessary for OCCT >= 7.1
2017-04-20 12:27:34 +02:00
WandererFan
c3fd7a8c12 Prevent DetailView crop circle marker 2017-01-29 19:40:33 -05:00
WandererFan
324171dbe4 Use contour area for wire size instead of bounding box 2017-01-20 00:09:38 -02:00
WandererFan
5874a83409 Replace Vector3D ==/!= with difference < Precision::Confusion() 2017-01-20 00:09:38 -02:00
WandererFan
1a58733227 Revise edge & vector compare function for clarity 2017-01-14 16:56:30 +01:00
wmayer
68367e1efc fix build failure 2016-12-29 15:01:57 +01:00
WandererFan
d14cfa415f getViewAxis -> DVP virtual method 2016-12-29 14:42:46 +01:00
WandererFan
dd13cb2534 Fix handling of BezierCurves
Replace custom bbox code with OCC/Base code
Refactor duplicate code Geometry/DrawProjectSplit
2016-11-20 10:06:00 +01:00
WandererFan
5295f1e2e2 Improve handling of duplicate edges in projection 2016-11-18 10:14:29 +01:00
wmayer
d2d927e760 performance improvements
+ use const-reference as argument to avoid tmp. copy
+ use prefix incremation operator instead of postfix increment operator
2016-11-08 13:51:22 +01:00
WandererFan
9ad177915d Create outline of 3D shape 2016-11-07 17:20:19 -05:00