DiscussionsIssue archiveOCCT:Visualization

Archived issue #0025027

Visualization - 2D layer viewport is updated incorrectly on resize

Open CASCADEOCCT:Visualizationclosed2 public notes

Search issues

Description

After resizing viewer to irregular quadrangle and updating it (e.g. displaying object, highlighting object etc.) ColorScale changes it position and in case of flattened viewer exceed its bounds.

The reason is misprint in Visual3d_ViewManager::Redraw() method
      anIter.Value()->Window()->Size (aWidth, aHeight);
      aWidthMax  = Max (aWidthMax,  aWidth);
      aHeightMax = Max (aHeightMax, aWidth);

Steps to reproduce

- create colorscale
- flatten the viewer (change aspect ratio)
- create any object (e.g. box)

pload MODELING VISUALIZATION
box b 1 2 3
vinit w=1024 h=512
vsetdispmode 1
vdisplay b
vfit
vcolorscale 10 20 100 16 2 0 0
vmoveto 512 250

Note that the problem does not appear on screenshot - only during interactive execution.

Public activity

2 archived notes

Participants are labeled by their role within this record.

01Commenter 2
Dear Commenter 3,

please test patch in branch CR25027.
Please move bug to Open CASCADE project.
02Commenter 2
Dear Commenter 3,

Branch CR25027 (and products from GIT master) was compiled on Linux, MacOS and Windows platforms and tested.
[revision removed]

Number of compiler warnings:

occt component :
Linux: 16 (16 on master)
Windows: 0 (0 on master)
MacOS: 200 (203 on master)

products component :
Linux: 11 (11 on master)
Windows: 2 (2 on master)

Regressions/Differences:
No regressions/differences

Testing cases:
http://occt-tests/CR25027-master-occt/Debian60-64/bugs/vis/bug25027.html
bugs vis(004) bug25027: OK

Testing on Linux:
Total MEMORY difference: 348472780 / 348636364
Total CPU difference: 50711.62000000006 / 51365.12000000003

Testing on Windows:

Total MEMORY difference: 376292496 / 376872500
Total CPU difference: 37757.015625 / 38774.78125
There are no differences in images found by testdiff.