MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0030675Open CASCADE[OCCT] OCCT:Visualizationpublic2019-04-24 19:532019-05-28 08:36
Reporterkgv 
Assigned Tobugmaster 
PrioritynormalSeverityintegration request 
StatusverifiedResolutionfixed 
PlatformOSOS Version
Product Version 
Target Version[OCCT] 7.4.0Fixed in Version 
Summary0030675: Visualization - remove redundant proxy classes in hierarchy of PrsMgr_Presentation
DescriptionClass PrsMgr_ModedPresentation does nothing but stores display mode index and PrsMgr_Presentation instance.

It is suggested removing dummy class.
Steps To ReproduceN/A
TagsNo tags attached.
Test case numberNot required
Attached Files

- Relationships
related to 0030674verifiedbugmaster Visualization, AIS_InteractiveObject - fix accessibility of several properties 
related to 0025341testedbugmaster Visualization - disallow displaying object as part of connected one and as a free one at the same time 
related to 0030687verifiedkgv Visualization - remove redundant interfaces SelectBasics_EntityOwner and SelectBasics_SensitiveEntity 

-  Notes
(0083972)
git (administrator)
2019-04-24 19:59

Branch CR30675 has been created by kgv.

SHA-1: 8529f71038b866e10effb6d73fe5ea3fb8e60fb8


Detailed log of new commits:

Author: kgv
Date: Wed Apr 24 19:53:17 2019 +0300

    0030675: Visualization - remove redundant class PrsMgr_ModedPresentation

Author: kgv
Date: Wed Apr 24 18:50:29 2019 +0300

    0030669: Visualization - AIS_Manipulator ignores parent transformation
    
    AIS_Manipulator::Transform() now considers object parent transformation.
    
    Added new command vchild for easier testing of low-level connections between presentations.

Author: kgv
Date: Thu Apr 4 09:44:16 2019 +0300

    0030674: Visualization, AIS_InteractiveObject - fix accessibility of several properties
    
    AIS_InteractiveObject/SelectMgr_SelectableObject/PrsMgr_PresentableObject
    - added missing getters;
    - removed redundant private sections;
    - improved documentation;
    - AIS_InteractiveObject::Compute() marked as pure interface;
    - methods within this hierarchy have been moved to the base class, when reasonable.
    
    Removed redundant typedefs to pointers (PrsMgr_PresentationPointer, PrsMgr_PresentableObjectPointer).
(0083974)
git (administrator)
2019-04-24 20:48

Branch CR30675 has been updated by kgv.

SHA-1: 4ef91599ef488f73ef6903904994c9b62f37f117


Detailed log of new commits:

Author: kgv
Date: Wed Apr 24 20:42:15 2019 +0300

    PrsMgr_Prs proxy class has been removed and PrsMgr_Presentation now inherits Prs3d_Presentation.

(0083978)
git (administrator)
2019-04-24 21:58

Branch CR30675 has been updated forcibly by kgv.

SHA-1: 725b0a0b759b708bacde2ff7d47c7357a4778217
(0083980)
git (administrator)
2019-04-25 01:19

Branch CR30675 has been updated forcibly by kgv.

SHA-1: 8446ed4016d85a3dce5fa2a98c79ec5bf783ea9a
(0083985)
git (administrator)
2019-04-25 13:14

Branch CR30675 has been updated forcibly by kgv.

SHA-1: 2971c3c8fa576dde0b31203f4a1c0bd1d33a6d8b
(0083986)
git (administrator)
2019-04-25 13:23

Branch CR30675 has been updated by kgv.

SHA-1: 3e2c9369a291c007409e622eae5c57b878071270


Detailed log of new commits:

Author: kgv
Date: Thu Apr 25 13:16:49 2019 +0300

    Graphic3d_Structure - avoid redundant casts

(0083991)
git (administrator)
2019-04-25 18:26

Branch CR30675 has been updated forcibly by kgv.

SHA-1: 1593a53cf6b9585ebfd1158950649c52f36990d7
(0083992)
git (administrator)
2019-04-25 18:26

Branch CR30675 has been updated by kgv.

SHA-1: 82d9305b9a97674a90712a2ef3a2eefdf79b678e


Detailed log of new commits:

Author: kgv
Date: Thu Apr 25 18:19:57 2019 +0300

    Avoid forward declaration of Prs3d_Presentation class.

(0083993)
git (administrator)
2019-04-25 18:29

Branch CR30675 has been updated forcibly by kgv.

SHA-1: 330a3c6d27bc465b22d95474fc2987cdc9b87e63
(0083994)
git (administrator)
2019-04-25 18:49

Branch CR30675 has been updated by kgv.

SHA-1: 8de7b42a106cb451f58cf8d41003fe063d92f848


Detailed log of new commits:

Author: kgv
Date: Thu Apr 25 18:42:56 2019 +0300

    Remove redundant proxy class Prs3d_Presentation.

(0083998)
git (administrator)
2019-04-25 21:16

Branch CR30675 has been updated by kgv.

SHA-1: 4bd0da7d091f58679e3f4ae4243f19758007c644


Detailed log of new commits:

Author: kgv
Date: Thu Apr 25 21:10:00 2019 +0300

    # workaround crash

(0084001)
git (administrator)
2019-04-25 23:52

Branch CR30675 has been updated forcibly by kgv.

SHA-1: 7f6f5685c7d2ecb2ba0dbb7d701864b89ae40220
(0084002)
git (administrator)
2019-04-26 02:11

Branch CR30675_1 has been created by kgv.

SHA-1: 42da91c536f88fbd2fa93ebb666b910bda25cec1


Detailed log of new commits:

Author: kgv
Date: Wed Apr 24 19:53:17 2019 +0300

    0030675: Visualization - remove redundant proxy classes in hierarchy of PrsMgr_Presentation
    
    Removed redundant proxy class Prs3d_Presentation - Graphic3d_Structure now should be used directly.
    Removed auxiliary class PrsMgr_ModedPresentation holding Structure and Display Mode index (field has been moved to Structure itself),
    so that PrsMgr_Presentations (AIS_InteractiveObject::Presentations()) now holds Structures directly.
    PrsMgr_Prs proxy class has been removed, and PrsMgr_Presentation now inherits Graphic3d_Structure.
    
    Graphic3d_Structure, maps declarations have been corrected to use class instead of void*, which allowed to avoid redundant casts.
    Several methods have been also modified to avoid creating Handle from this pointer.
    AIS package headers have been cleaned up from forward declaration of Prs3d_Presentation class.
    
    Fixed dereference of destroyed presentations within connected and HLR computed objects:
    - AIS_InteractiveContext::Disconnect() now erases connected presentation.
    - Graphic3d_CView::Clear() now removes destructed structures from Computed list.
(0084003)
kgv (developer)
2019-04-26 02:12

Patch is ready for review.

http://jenkins-test-12.nnov.opencascade.com:8080/view/CR30675-CR30675-2-KGV/ [^]
(0084055)
san (developer)
2019-04-29 20:23

Branch CR30675_1 in occt and branch CR30675 in occt-products reviewed without remarks.
(0084070)
bugmaster (administrator)
2019-04-30 14:02

Combination -
OCCT branch : CR30675
master SHA - 7f6f5685c7d2ecb2ba0dbb7d701864b89ae40220
d67d4b811012eef8913d3c535c29654d0acf3c4c
Products branch : CR30675 SHA - 97dbf29f29d1c384199547002bb8af7375776740
was compiled on Linux, MacOS and Windows platforms and tested in optimize mode.

Number of compiler warnings:
No new/fixed warnings

Regressions/Differences/Improvements:
No regressions/differences

CPU differences:
Debian80-64:
OCCT
Total CPU difference: 16530.159999999938 / 16536.609999999906 [-0.04%]
Products
Total CPU difference: 10554.980000000041 / 10546.95000000005 [+0.08%]
Windows-64-VC14:
OCCT
Total CPU difference: 18076.59375 / 17960.6875 [+0.65%]
Products
Total CPU difference: 12145.296875 / 12065.3125 [+0.66%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention
(0084071)
git (administrator)
2019-04-30 14:12

Branch CR30675_1 has been updated by kgv.

SHA-1: 7d0057a4423b7eff3a9e15c40a4f2c5f72d91c22


Detailed log of new commits:

Author: kgv
Date: Tue Apr 30 14:05:45 2019 +0300

    # remarks: make Graphic3d_StructureManager::Connect() definition symmetric to Disconnect()
    # passing structure by pointer.

(0084072)
git (administrator)
2019-04-30 14:23

Branch CR30675_2 has been created by kgv.

SHA-1: 46d46e24785337b24f04e096981025930597eba4


Detailed log of new commits:

Author: kgv
Date: Wed Apr 24 19:53:17 2019 +0300

    0030675: Visualization - remove redundant proxy classes in hierarchy of PrsMgr_Presentation
    
    Removed redundant proxy class Prs3d_Presentation - Graphic3d_Structure now should be used directly.
    Removed auxiliary class PrsMgr_ModedPresentation holding Structure and Display Mode index (field has been moved to Structure itself),
    so that PrsMgr_Presentations (AIS_InteractiveObject::Presentations()) now holds Structures directly.
    PrsMgr_Prs proxy class has been removed, and PrsMgr_Presentation now inherits Graphic3d_Structure.
    
    Graphic3d_Structure, maps declarations have been corrected to use class instead of void*, which allowed to avoid redundant casts.
    Several methods have been also modified to avoid creating Handle from this pointer.
    AIS package headers have been cleaned up from forward declaration of Prs3d_Presentation class.
    
    Fixed dereference of destroyed presentations within connected and HLR computed objects:
    - AIS_InteractiveContext::Disconnect() now erases connected presentation.
    - Graphic3d_CView::Clear() now removes destructed structures from Computed list.
(0084129)
git (administrator)
2019-05-04 13:32

Branch CR30675_3 has been created by kgv.

SHA-1: 9309fc6da27ba137f014021a45dabe9cfc625379


Detailed log of new commits:

Author: kgv
Date: Sat May 4 13:25:10 2019 +0300

    # 0030675 - fix inaccessibility of PrsMgr_Presentation methods
(0084130)
kgv (developer)
2019-05-04 13:34

Dear bugmaster,

please amend a correction pushed to CR30675_3 branch (based on IR-WEEK18).
(0084245)
git (administrator)
2019-05-08 13:41

Branch CR30675_3 has been deleted by inv.

SHA-1: 9309fc6da27ba137f014021a45dabe9cfc625379
(0084248)
git (administrator)
2019-05-08 13:41

Branch CR30675_2 has been deleted by inv.

SHA-1: 46d46e24785337b24f04e096981025930597eba4
(0084249)
git (administrator)
2019-05-08 13:41

Branch CR30675_1 has been deleted by inv.

SHA-1: 7d0057a4423b7eff3a9e15c40a4f2c5f72d91c22
(0084254)
git (administrator)
2019-05-08 13:42

Branch CR30675 has been deleted by inv.

SHA-1: 7f6f5685c7d2ecb2ba0dbb7d701864b89ae40220

- Related Changesets
occt: master 7dd7c146
Timestamp: 2019-04-24 16:53:17
Author: kgv
Committer: bugmaster
Details ] Diff ]
0030675: Visualization - remove redundant proxy classes in hierarchy of PrsMgr_Presentation

Removed redundant proxy class Prs3d_Presentation - Graphic3d_Structure now should be used directly.
Removed auxiliary class PrsMgr_ModedPresentation holding Structure and Display Mode index (field has been moved to Structure itself),
so that PrsMgr_Presentations (AIS_InteractiveObject::Presentations()) now holds Structures directly.
PrsMgr_Prs proxy class has been removed, and PrsMgr_Presentation now inherits Graphic3d_Structure.

Graphic3d_Structure, maps declarations have been corrected to use class instead of void*, which allowed to avoid redundant casts.
Several methods have been also modified to avoid creating Handle from this pointer.
AIS package headers have been cleaned up from forward declaration of Prs3d_Presentation class.

Fixed dereference of destroyed presentations within connected and HLR computed objects:
- AIS_InteractiveContext::Disconnect() now erases connected presentation.
- Graphic3d_CView::Clear() now removes destructed structures from Computed list.

- fix inaccessibility of PrsMgr_Presentation methods
mod - dox/dev_guides/upgrade/upgrade.md Diff ] File ]
mod - src/AIS/AIS.cxx Diff ] File ]
mod - src/AIS/AIS.hxx Diff ] File ]
mod - src/AIS/AIS_Chamf2dDimension.hxx Diff ] File ]
mod - src/AIS/AIS_Chamf3dDimension.hxx Diff ] File ]
mod - src/AIS/AIS_ConcentricRelation.hxx Diff ] File ]
mod - src/AIS/AIS_ConnectedInteractive.cxx Diff ] File ]
mod - src/AIS/AIS_EqualDistanceRelation.hxx Diff ] File ]
mod - src/AIS/AIS_EqualRadiusRelation.hxx Diff ] File ]
mod - src/AIS/AIS_FixRelation.hxx Diff ] File ]
mod - src/AIS/AIS_InteractiveContext.cxx Diff ] File ]
mod - src/AIS/AIS_InteractiveContext_2.cxx Diff ] File ]
mod - src/AIS/AIS_InteractiveObject.cxx Diff ] File ]
mod - src/AIS/AIS_InteractiveObject.hxx Diff ] File ]
mod - src/AIS/AIS_LengthDimension.hxx Diff ] File ]
mod - src/AIS/AIS_MaxRadiusDimension.hxx Diff ] File ]
mod - src/AIS/AIS_MidPointRelation.hxx Diff ] File ]
mod - src/AIS/AIS_MinRadiusDimension.hxx Diff ] File ]
mod - src/AIS/AIS_MultipleConnectedInteractive.cxx Diff ] File ]
mod - src/AIS/AIS_OffsetDimension.hxx Diff ] File ]
mod - src/AIS/AIS_ParallelRelation.hxx Diff ] File ]
mod - src/AIS/AIS_PerpendicularRelation.hxx Diff ] File ]
mod - src/AIS/AIS_PointCloud.cxx Diff ] File ]
mod - src/AIS/AIS_Relation.hxx Diff ] File ]
mod - src/AIS/AIS_Shape.cxx Diff ] File ]
mod - src/AIS/AIS_SymmetricRelation.hxx Diff ] File ]
mod - src/AIS/AIS_TangentRelation.hxx Diff ] File ]
mod - src/AIS/AIS_TexturedShape.cxx Diff ] File ]
mod - src/AIS/AIS_Triangulation.cxx Diff ] File ]
mod - src/AIS/AIS_Triangulation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs.cxx Diff ] File ]
mod - src/DsgPrs/DsgPrs.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_AnglePresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_Chamf2dPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_ConcentricPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_DiameterPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_EllipseRadiusPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_EqualDistancePresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_EqualRadiusPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_FilletRadiusPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_FixPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_IdenticPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_LengthPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_MidPointPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_OffsetPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_ParalPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_PerpenPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_RadiusPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_ShadedPlanePresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_ShapeDirPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_SymbPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_SymmetricPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_TangentPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_XYZAxisPresentation.hxx Diff ] File ]
mod - src/DsgPrs/DsgPrs_XYZPlanePresentation.hxx Diff ] File ]
mod - src/Graphic3d/FILES Diff ] File ]
mod - src/Graphic3d/Graphic3d_CView.cxx Diff ] File ]
mod - src/Graphic3d/Graphic3d_CView.hxx Diff ] File ]
rm - src/Graphic3d/Graphic3d_IndexedMapOfAddress.hxx Diff ] File ]
mod - src/Graphic3d/Graphic3d_Structure.cxx Diff ] File ]
mod - src/Graphic3d/Graphic3d_Structure.hxx Diff ] File ]
mod - src/Graphic3d/Graphic3d_StructureManager.cxx Diff ] File ]
mod - src/Graphic3d/Graphic3d_StructureManager.hxx Diff ] File ]
mod - src/MeshVS/MeshVS_ElementalColorPrsBuilder.hxx Diff ] File ]
mod - src/MeshVS/MeshVS_Mesh.cxx Diff ] File ]
mod - src/MeshVS/MeshVS_Mesh.hxx Diff ] File ]
mod - src/MeshVS/MeshVS_MeshPrsBuilder.hxx Diff ] File ]
mod - src/MeshVS/MeshVS_NodalColorPrsBuilder.hxx Diff ] File ]
mod - src/MeshVS/MeshVS_PrsBuilder.hxx Diff ] File ]
mod - src/MeshVS/MeshVS_TextPrsBuilder.hxx Diff ] File ]
mod - src/MeshVS/MeshVS_VectorPrsBuilder.hxx Diff ] File ]
mod - src/Prs3d/FILES Diff ] File ]
mod - src/Prs3d/Prs3d.hxx Diff ] File ]
rm - src/Prs3d/Prs3d_Presentation.cxx Diff ] File ]
mod - src/Prs3d/Prs3d_Presentation.hxx Diff ] File ]
mod - src/Prs3d/Prs3d_PresentationShadow.cxx Diff ] File ]
mod - src/Prs3d/Prs3d_PresentationShadow.hxx Diff ] File ]
mod - src/PrsMgr/FILES Diff ] File ]
rm - src/PrsMgr/PrsMgr_ModedPresentation.cxx Diff ] File ]
rm - src/PrsMgr/PrsMgr_ModedPresentation.hxx Diff ] File ]
mod - src/PrsMgr/PrsMgr_PresentableObject.cxx Diff ] File ]
mod - src/PrsMgr/PrsMgr_PresentableObject.hxx Diff ] File ]
mod - src/PrsMgr/PrsMgr_Presentation.cxx Diff ] File ]
mod - src/PrsMgr/PrsMgr_Presentation.hxx Diff ] File ]
mod - src/PrsMgr/PrsMgr_PresentationManager.cxx Diff ] File ]
mod - src/PrsMgr/PrsMgr_PresentationManager.hxx Diff ] File ]
mod - src/PrsMgr/PrsMgr_Presentations.hxx Diff ] File ]
rm - src/PrsMgr/PrsMgr_Prs.cxx Diff ] File ]
rm - src/PrsMgr/PrsMgr_Prs.hxx Diff ] File ]
mod - src/QABugs/QABugs_PresentableObject.hxx Diff ] File ]
mod - src/SelectMgr/SelectMgr_SelectableObject.hxx Diff ] File ]
mod - src/StdPrs/StdPrs_Curve.hxx Diff ] File ]
mod - src/StdPrs/StdPrs_DeflectionCurve.hxx Diff ] File ]
mod - src/StdPrs/StdPrs_HLRPolyShape.hxx Diff ] File ]
mod - src/StdPrs/StdPrs_Plane.hxx Diff ] File ]
mod - src/StdPrs/StdPrs_PoleCurve.hxx Diff ] File ]
mod - src/StdPrs/StdPrs_ShadedShape.hxx Diff ] File ]
mod - src/StdPrs/StdPrs_ShadedSurface.hxx Diff ] File ]
mod - src/StdPrs/StdPrs_WFDeflectionRestrictedFace.hxx Diff ] File ]
mod - src/StdPrs/StdPrs_WFDeflectionSurface.hxx Diff ] File ]
mod - src/StdPrs/StdPrs_WFPoleSurface.hxx Diff ] File ]
mod - src/StdPrs/StdPrs_WFSurface.hxx Diff ] File ]
mod - src/StdSelect/StdSelect_Shape.hxx Diff ] File ]
mod - src/ViewerTest/ViewerTest.cxx Diff ] File ]
mod - src/XCAFPrs/XCAFPrs_AISObject.cxx Diff ] File ]

- Issue History
Date Modified Username Field Change
2019-04-24 19:53 kgv New Issue
2019-04-24 19:53 kgv Assigned To => kgv
2019-04-24 19:53 kgv Relationship added related to 0030674
2019-04-24 19:59 git Note Added: 0083972
2019-04-24 20:48 git Note Added: 0083974
2019-04-24 21:58 git Note Added: 0083978
2019-04-25 01:19 git Note Added: 0083980
2019-04-25 13:14 git Note Added: 0083985
2019-04-25 13:23 git Note Added: 0083986
2019-04-25 18:26 git Note Added: 0083991
2019-04-25 18:26 git Note Added: 0083992
2019-04-25 18:29 git Note Added: 0083993
2019-04-25 18:49 git Note Added: 0083994
2019-04-25 21:16 git Note Added: 0083998
2019-04-25 23:52 git Note Added: 0084001
2019-04-26 02:09 kgv Summary Visualization - remove redundant class PrsMgr_ModedPresentation => Visualization - remove redundant proxy classes in hierarchy of PrsMgr_Presentation
2019-04-26 02:11 git Note Added: 0084002
2019-04-26 02:12 kgv Note Added: 0084003
2019-04-26 02:12 kgv Assigned To kgv => san
2019-04-26 02:12 kgv Status new => resolved
2019-04-26 12:23 kgv Relationship added related to 0025341
2019-04-29 20:23 san Note Added: 0084055
2019-04-29 20:23 san Assigned To san => bugmaster
2019-04-29 20:23 san Status resolved => reviewed
2019-04-30 13:59 bugmaster Test case number => Not required
2019-04-30 14:02 bugmaster Note Added: 0084070
2019-04-30 14:02 bugmaster Status reviewed => tested
2019-04-30 14:12 git Note Added: 0084071
2019-04-30 14:23 git Note Added: 0084072
2019-05-01 14:12 kgv Relationship added related to 0030687
2019-05-04 13:32 git Note Added: 0084129
2019-05-04 13:34 kgv Note Added: 0084130
2019-05-08 12:38 bugmaster Changeset attached => occt master 7dd7c146
2019-05-08 12:38 bugmaster Status tested => verified
2019-05-08 12:38 bugmaster Resolution open => fixed
2019-05-08 13:41 git Note Added: 0084245
2019-05-08 13:41 git Note Added: 0084248
2019-05-08 13:41 git Note Added: 0084249
2019-05-08 13:42 git Note Added: 0084254


Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker