Commit Graph

77 Commits

Author SHA1 Message Date
WandererFan 45a1d6c906 Fix Exception when Source Shape IsNull 2018-01-22 19:10:28 -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 4b9f43b467 Allow GroupExtension as Source for Views
- DrawViewPart had special case logic for App::Part.
  It now handles DocumentObjectGroup and any other
  GroupExtensions as Source.
2018-01-20 14:07:31 +01:00
WandererFan 79dff6b8cc Fix crash when deleting View with Dimensions
- if a Dimension has multiple references to a
  DrawViewPart (ex vertex-vertex) the Dimension
  will appear twice in the DVP's InList.  This
  commit ensures that the Dimension is only
  deleted once when deleting the DVP.
2018-01-12 10:30:42 -02: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 55f050e0f5 Fix crash when Source.Shape is Null 2017-12-31 14:54:05 +01:00
WandererFan e163ae1746 Allow multiple sources for all View types 2017-12-31 14:54:05 +01:00
WandererFan 7588081afd Implement option for perspective drawing views 2017-12-03 19:17:53 -02:00
WandererFan 15b509db25 Implement LineGroups for default weights
- Add ability to control default weight for visible,
  hidden and decorative lines from a configuration
  file. Diffent sets of defaults can be specified as
  a preference.
2017-12-02 13:51:25 +01:00
WandererFan 44fd200166 Rotate DrawViewPart around part centroid 2017-11-12 19:08:32 -05:00
WandererFan d6a5672f89 Allow Views of App::Parts 2017-10-02 13:48:45 -03:00
WandererFan 6b922acdd5 Change links to Global scope 2017-10-02 13:48:45 -03:00
WandererFan 4b8d04f528 change isDeleting to isUnsetting
- DocumentObject::isDeleting was changed to isRemoving.
  This commit just prevents future confusion.
2017-10-02 13:48:45 -03:00
WandererFan 4b3ab9e74e Allow Section based on ViewMulti 2017-10-02 13:48:45 -03:00
WandererFan d27b8387e8 Eliminate superfluous DPG executes 2017-09-10 15:22:49 +02:00
WandererFan e8f2c68b5c Allow DrawPage updates to be suspended 2017-09-10 15:21:54 +02:00
wmayer 949c86d364 Port to occ7.2:
+ Standard_Failure::Caught() is now marked as deprecated and should be replaced with standard C++ exception handling
2017-09-01 16:27:46 +02:00
WandererFan f60464e545 implement detail view highlight in base view 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
WandererFan 513decf8c8 Cleanup orphan features on DVP delete 2017-02-09 15:45:04 -05:00
WandererFan 7cb3e93686 Preferences for GeomHatch 2017-01-29 19:40:34 -05:00
WandererFan 84b858a142 fix naming conflicts 2017-01-29 19:40:34 -05:00
WandererFan 299ac94c9f Geometric hatch for Section face 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 3ce9c48c64 Clean up children on Page delete 2017-01-29 19:40:33 -05:00
WandererFan 16ce8d40f5 Section directions from rotated DPGI's 2016-12-29 14:43:37 +01: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 429eb0f727 DPG improvements
eliminate orientation matrix
remove appl logic from dialog
add 3D/Front buttons
2016-12-04 15:25:47 +01:00
WandererFan bcb1534391 Add 2nd page of preferences 2016-11-24 14:44:37 -02:00
WandererFan 1f0899ef3d Improve handling of duplicate edges in projection 2016-11-18 10:14:29 +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 70b5c241d1 AutoScaling Fixes for non-DVP objects 2016-10-31 11:06:15 -02:00
WandererFan a5a20701a7 Fix ProjectionGroup Automatic scaling 2016-10-31 11:06:15 -02:00
WandererFan a662cad5be Section Rebuild subproject
new dialog
new Section/SectionLine logic
remove 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 ae5798434a Add options for face detection and cut face edge display 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
wmayer c457fc468c fix -Wextra & -Wdeprecated in TechDraw 2016-09-22 19:32:16 +02:00
WandererFan 4d7f00860e reduce use of "execute" on cosmetic changes. 2016-09-11 13:12:24 -04:00
WandererFan 6c937e1bbe Protect EdgeWalker against bad input 2016-09-11 13:12:24 -04:00
WandererFan 5fd19bb5f4 Break up try/catch blocks for easier debugging 2016-09-08 16:18:52 +02:00
WandererFan cebe2faee1 Handle degenerate edges in face detection 2016-09-08 16:18:52 +02:00
WandererFan 7e04c17bdd Fix part/section handling of Face OuterWire 2016-09-01 12:14:43 -04:00
WandererFan 0ba0351666 Minor performance improvements 2016-09-01 12:14:42 -04:00
WandererFan 34644e9d71 Fix Section arrows,xDir,label 2016-09-01 12:14:42 -04:00