DiscussionsIssue archiveOCCT:Visualization

Archived issue #0027137

Visualization - handle shadow structures within V3d_View::Gravity()

Open CASCADEOCCT:Visualizationclosed6 public notes

Search issues

Description

There are several issues within current state of this method:
- Usage of shadow structures for dynamic highlighting breaks the improvement introduced by #0025723 because Shadow Structures return empty bounding box.
- The bounding box of presentations with transformation persistence flags are handled incorrectly.

Steps to reproduce

test bugs vis bug26719_1 1

Test case A (transformation persistence):
1. Move mouse to dynamically highlight the surface.
2. Start rotation by mouse
Result: the camera jumps very far.

Test case B (gravity center by highlighted object)
1. Activate local selection for vertices.
2. Move mouse to highlight the vertex.
3. Start rotation by mouse.
Result: the camera does not ration around the vertex.

Public activity

6 archived notes

Participants are labeled by their role within this record.

01Commenter 2
Branch [archived branch] has been created by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Fri Feb 5 16:15:35 2016 +0300

    0027137: Visualization - handle shadow structures within V3d_View::Gravity()
    
    OpenGl_StructureShadow - copy bounding box from parent structure.
    Prs3d_PresentationShadow::CalculateBoundBox() - do nothing.
    
    V3d_View::Gravity() - skip presentations with transformation persistence flags.
    Use cached presentation bounding box.
02Author
Patch is ready for review.
03Commenter 2
Branch [archived branch] has been updated forcibly by Author.

[revision removed]
04Author
Please test the patch, test case is not needed.
05Commenter 5
Dear Commenter 1,

Branch CR27137 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested.
[revision removed]

Number of compiler warnings:
occt component:
   Linux: 0 (0 on master)
   Windows: 0 (0 on master)
   MacOS: 1 (1 on master)
products component:
   Linux: 36 (36 on master)
   Windows: 0 (0 on master)

Regressions/Differences:
Not detected

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 90282871 / 89920324 [+0.40%]
Total CPU difference: 18998.74999999985 / 19072.539999999924 [-0.39%]

Testing on Windows:
Total MEMORY difference: 57303572 / 57306429 [-0.00%]
Total CPU difference: 18195.64463799878 / 18107.114070498843 [+0.49%]
06Commenter 2
Branch [archived branch] has been deleted by Author.

[revision removed]

Related records