MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0023044Open CASCADE[OCCT] OCCT:Visualizationpublic2012-03-28 17:402012-10-02 15:02
Reportersan 
Assigned Tosan 
PriorityurgentSeveritymajor 
StatusclosedResolutionfixed 
PlatformAOSLOS VersionL
Product Version[OCCT] 6.5.3 
Target Version[OCCT] 6.5.3Fixed in Version[OCCT] 6.5.3 
Summary0023044: Regression: 3D views are not invalidated by some modifications of OpenGl_Structure
DescriptionSome modifications of OpenGl_Structure do not cause invalidation of the views that contain this structure.

This is a regression with respect to OCCT 6.5.2, where TsmInitUpdateState() was called each time when TsmOpenStructure() was called.

The problem has been discovered for OpenGl_GraphicDriver::TransformStructure() method called as a result of AIS_InteractiveContext::SetLocation(iobj, location) call. The visible effect is that calling V3d_View::Update() has no effect after changing the object's location.

The quickest solution is to identify all cases when TsmInitUpdateState() was called in OCCT 6.5.2 and call OpenGl_GraphicDriver::InvalidateAllWorkspaces() accordingly.

The final decision is to make 3D view redrawing unconditional, thus "update" procedure becomes identical to "redraw".
Steps To Reproducepload ALL
vinit
vanimation CrankArmFile CylinderHeadFile PropellerFile EngineBlockFile
Additional information
and documentation updates
Conditional updates of V3d_View instances are no more supported. Update() methods in V3d_View and V3d_Viewer classes are now deprecated and equivalent to Redraw() methods. The latter should be used instead.

If an application expects series of view update events while the 3D scene content is not changed, and multiple redrawing of the scene might have significant negative impact on application performance, then the application itself should ensure necessary protection.

Modified files:

V3d package

  V3d_View.cdl
    V3d_View::Update() method documentation changed

  V3d_Viewer.cdl
    V3d_Viewer::Update() method documentation changed
TagsNo tags attached.
Test case numberchl 934 X5
Attached Files? file icon X5 (822 bytes) 2012-03-30 12:43

- Relationships
related to 0022819closedbugmaster Open CASCADE Redesign of OpenGl driver 

-  Notes
(0020198)
san (developer)
2012-03-29 16:32

CR23044 branch contains the fix, please review
(0020201)
kgv (developer)
2012-03-29 16:47

No remarks. Please test patch.
(0020217)
apn (administrator)
2012-03-30 09:45

Dear BugMaster,
     Workbench KAS:dev:mkv-23044-occt was created from git branch CR23044 (and mkv-23044-products from svn trunk) and compiled on Linux platform.
   
     There are not regressions in mkv-23044-products regarding to KAS:dev:products-20120326-opt
     
     See results in /QADisk/occttests/results/KAS/dev/mkv-23044-products_29032012/lin
     See reference results in /QADisk/occttests/results/KAS/dev/products-20120326-opt_26032012/lin
     See test cases in /QADisk/occttests/tests/ED

- Related Changesets
occt: master 298f9ad7
Timestamp: 2012-03-30 13:29:19
Author: san
Details ] Diff ]
0023044: Regression: 3D views are not invalidated by some modifications of OpenGl_Structure

myIsUpdated flag and Invalidate() method removed from OpenGl_Workspace class.
View redrawing is made unconditional.
V3d_View::Update() becomes deprecated and should be replaced with V3d_View::Redraw().
V3d_Viewer::Update() becomes deprecated and equivalent to Redraw()
mod - src/OpenGl/OpenGl_GraphicDriver.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_GraphicDriver.hxx Diff ] File ]
mod - src/OpenGl/OpenGl_GraphicDriver_4.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_GraphicDriver_7.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_GraphicDriver_9.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_Workspace.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_Workspace.hxx Diff ] File ]
mod - src/OpenGl/OpenGl_Workspace_1.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_Workspace_2.cxx Diff ] File ]
mod - src/V3d/V3d_View.cdl Diff ] File ]
mod - src/V3d/V3d_Viewer.cdl Diff ] File ]

- Issue History
Date Modified Username Field Change
2012-03-28 17:40 san New Issue
2012-03-28 17:40 san Assigned To => san
2012-03-28 17:54 san Status new => assigned
2012-03-29 16:31 san Description Updated View Revisions
2012-03-29 16:31 san Steps to Reproduce Updated View Revisions
2012-03-29 16:31 san Additional Information Updated View Revisions
2012-03-29 16:32 san Note Added: 0020198
2012-03-29 16:32 san Assigned To san => kgv
2012-03-29 16:32 san Status assigned => resolved
2012-03-29 16:39 san Relationship added related to 0022763
2012-03-29 16:47 kgv Note Added: 0020201
2012-03-29 16:47 kgv Assigned To kgv => bugmaster
2012-03-29 16:47 kgv Status resolved => reviewed
2012-03-29 17:05 san Additional Information Updated View Revisions
2012-03-29 17:07 san Additional Information Updated View Revisions
2012-03-29 18:22 mkv Assigned To bugmaster => mkv
2012-03-29 20:49 mkv Test case number => chl 934 X5
2012-03-30 09:45 apn Note Added: 0020217
2012-03-30 12:04 mkv Assigned To mkv => bugmaster
2012-03-30 12:04 mkv Status reviewed => tested
2012-03-30 12:43 mkv File Added: X5
2012-04-02 12:34 san Changeset attached => occt master 298f9ad7
2012-04-02 12:34 san Assigned To bugmaster => san
2012-04-02 12:34 san Status tested => verified
2012-04-02 12:34 san Resolution open => fixed
2012-04-03 10:04 abv Relationship added related to 0022819
2012-10-02 15:02 bugmaster Project Internal => Open CASCADE


Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker