Commit Graph

53 Commits

Author SHA1 Message Date
wandererfan
3e0452417b Cosmetic CL for Section and Detail 2019-06-06 19:58:15 -04:00
wandererfan
93431edfba Initial version of Cosmetic Eraser 2019-06-06 19:58:15 -04:00
wandererfan
656e1654ff Initial working version Face Centerline 2019-06-06 19:58:15 -04:00
wandererfan
59e47de506 Initial version addCosmeticVertex 2019-05-24 19:38:02 -04:00
wandererfan
fbc542738c Fix Error when OCC projection returns nothing 2019-04-25 08:02:28 -04:00
wandererfan
749e8aaf11 Fix OCC error handling
- GeometryObject.cpp used OCC "Raise" to signal error
  condition, but this is only caught in GuiDocument.cpp.
  Changed to catch exception locally.
2019-03-22 11:00:14 -03:00
wmayer
b0247d184e Replace Base::Exception with appropriate subclass 2018-11-14 19:42:10 +01:00
wandererfan
b2135da447 Workaround for #3332 2018-10-26 00:49:52 +02:00
wandererfan
a281832627 Change tool from cylinder to prism
- cutting with cylinder produced too many
  short bsplines from HLR.  Straight cut
  from prism reduces these and speeds up
  HLR significantly.
2018-10-17 11:25:49 +02:00
wandererfan
295bb8fa86 Fix Decoration positions on Views derived from DPG Base
- Section faces, detail highlights, center and section lines
  were wrong when the BaseView was a DPGI
2018-09-14 21:28:02 +02:00
wandererfan
aa8feb79d0 Use Face or 3D direction for View and ProjGroup
- use current 3D window direction as starting
  direction for DrawViewPart and ProjectionGroup
- if a Face is selected, use Face normal as
  starting direction.
2018-09-06 08:00:00 +02:00
wandererfan
7028da17b5 Expose findCentroid to Python 2018-08-11 11:24:12 +02:00
wandererfan
d48d014eb9 Fix Detail view orientation 2018-07-23 12:45:32 -03:00
WandererFan
356f879659 Prevent Loop in BRepBuilderAPI_Transform
- if a scale transform with scale = 0 is passed to
  BRepBuilderAPI_Transform, it will loop forever.
  If Page.keepUpdated is false, and Views have not yet
  been executed (ex at load time), Views will have a
  0.0 x 0.0 bbox and if Autoscale is true, a scale of
  0.0 will be used in fit-to-page.
2018-02-01 17:01:12 -05:00
TeroK
434bf4d3f3 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
WandererFan
861dc42d33 Fix Section Line Wrong Position
- Section cut line Y coord needs to be mirrored to
  be position correctly on Page.
2018-01-11 11:21:25 -02:00
WandererFan
7588081afd Implement option for perspective drawing views 2017-12-03 19:17:53 -02:00
WandererFan
44fd200166 Rotate DrawViewPart around part centroid 2017-11-12 19:08:32 -05:00
WandererFan
fc1c863034 Add viewPartAsDxf function in App 2017-06-23 08:14:46 +02:00
WandererFan
ae269dfc28 Prevent ghost centre marks in ViewDetail 2017-05-10 17:43:48 +02:00
Peter Lama
a75a98ef27 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
Kunda
dde52952f4 source typo fixes pt1 (only on py3 merged code)
issue 0002914
2017-02-27 11:32:47 +01:00
WandererFan
1d3a8a910f minor fixes: debug message/tooltips/etc 2017-01-29 19:40:34 -05:00
WandererFan
f51b5818cc Initial working version of geometric crosshatch/PAT files 2017-01-29 19:40:34 -05:00
WandererFan
afa8c9fece Prevent DetailView crop circle marker 2017-01-29 19:40:33 -05:00
WandererFan
93fb9273dd Working proof of concept for DPG rots & dirs 2016-12-29 14:43:00 +01:00
WandererFan
ca8adc3aab getViewAxis -> DVP virtual method 2016-12-29 14:42:46 +01:00
WandererFan
906bffba8f Initial DrawingViewDetail 2016-11-24 14:44:37 -02:00
wmayer
e54e9515fc rename 2d tool classes to be consistent with 3d classes 2016-11-21 14:29:51 +01:00
WandererFan
cf22852ee3 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
wmayer
17c8b2c813 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
dc66106683 Create outline of 3D shape 2016-11-07 17:20:19 -05:00
WandererFan
a662cad5be Section Rebuild subproject
new dialog
new Section/SectionLine logic
remove XAxisDirection property
2016-10-31 11:06:15 -02:00
WandererFan
ce9f4f199a Fix XAxis orientation
Remove need for XAxisDirection property
2016-10-31 11:06:15 -02:00
WandererFan
6b4352f79f Rename properties to fit PropertyEditor window 2016-10-06 11:00:35 -03:00
WandererFan
c8f4de5fbc Fix #2707 hidden seam/smooth lines 2016-10-06 11:00:35 -03:00
WandererFan
001bbf52d6 Performance Ph2 2016-10-06 11:00:35 -03:00
WandererFan
8459cdad5a Performance improvements Ph1 2016-09-29 17:37:20 -04:00
WandererFan
884a32fabf Coverty changes:
** CID 152490:  Control flow issues  (DEADCODE)
** CID 152492:  Null pointer dereferences  (FORWARD_NULL)
** CID 152493:  Null pointer dereferences  (FORWARD_NULL)
** CID 152494:  Null pointer dereferences  (FORWARD_NULL)
** CID 152495:  Null pointer dereferences  (FORWARD_NULL)
** CID 152496:  Null pointer dereferences  (FORWARD_NULL)
** CID 152497:  Null pointer dereferences  (FORWARD_NULL)
** CID 152502:  Null pointer dereferences  (REVERSE_INULL)
** CID 152507:  Uninitialized members  (UNINIT_CTOR)
** CID 152508:  Uninitialized members  (UNINIT_CTOR)
** CID 152508:  Uninitialized members  (UNINIT_CTOR)
** CID 152510:  Uninitialized members  (UNINIT_CTOR)
2016-09-11 13:12:24 -04:00
WandererFan
cebe2faee1 Handle degenerate edges in face detection 2016-09-08 16:18:52 +02:00
WandererFan
0ba0351666 Minor performance improvements 2016-09-01 12:14:42 -04:00
WandererFan
af7d257b91 Add centermarks for circles in Views 2016-08-16 14:29:15 +02:00
WandererFan
de76cd6b53 Remove superfluous OCC includes 2016-07-14 14:39:06 +02:00
WandererFan
19968205d2 Include file cleanup per cppclean analysis 2016-07-14 14:39:06 +02:00
WandererFan
f11e8ffa10 Basic Face detection using BGL 2016-07-11 15:32:16 +02:00
WandererFan
3b96cbbeb6 wmayer patch for Win & OCC7 compat 2016-07-11 15:32:16 +02:00
WandererFan
bd1c150930 remove obsolete 3D reference code 2016-07-11 15:32:16 +02:00
WandererFan
20de9af2c2 Fix Hatch path fp math
Fix section face painting
2016-07-11 15:32:16 +02:00
WandererFan
8cbd6d0b23 Section face positioning/display 2016-07-11 15:32:16 +02:00
WandererFan
8a9c708659 HLR looses Shape for some ProjGroupItems 2016-07-11 15:32:16 +02:00