MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0024307Open CASCADE[OCCT] OCCT:Visualizationpublic2013-11-01 15:542019-01-10 12:17
Reportersan 
Assigned Toapn 
PrioritynormalSeverityfeature 
StatusclosedResolutionfixed 
PlatformAOSLOS VersionL
Product Version[OCCT] 6.7.0 
Target Version[OCCT] 6.8.0Fixed in Version[OCCT] 6.8.0 
Summary0024307: TKOpenGl - efficient culling of large number of presentations
DescriptionIt is necessary to optimize TKOpenGl library for rendering of large number of presentations (up to 100K or even more).

One of ways to decrease the load on the graphic card is to apply viewing volume culling at the application level, at the beginning of frame redrawing process, and do not pass the structures outside of the volume to OpenGL.

An efficient algorithm of spatial search should be chosen: time needed for TKOpenGl to redraw a scene when the frustum culling algorithm is applied should be significantly less than time needed for TKOpenGl to redraw a scene without it for 100K structures (presentations). The result should be confirmed by corresponding time measurements.

Bounding spheres might give better results for early occlusion on CPU.
Hardware occlusion queries might be investigated as further improvement.

Notice that optimization of selection services should be also considered within the patch.
Steps To Reproduce
pload MODELING VISUALIZATION
vinit View1
vclear
vaxo
vsetdispmode 0
set aMem [vmemgpu f]
chrono t reset
chrono t start
set dim 20
for {set x 1} {$x < $dim} {incr x} { for {set y 1} {$y < $dim} {incr y} { for {set z 1} {$z < 
$dim} {incr z} { box b${x}_${y}_${z} $x $y $z 0.5 0.3 0.2 } } }
chrono t stop
chrono t show
set aSysMem [meminfo heap]
chrono t reset
chrono t start
for {set x 1} {$x < $dim} {incr x} { for {set y 1} {$y < $dim} {incr y} { for {set z 1} {$z < 
$dim} {incr z} { vdisplay  -noredraw b${x}_${y}_${z} } } }
chrono t stop
chrono t show
vfit
set aMem    [expr $aMem - [vmemgpu f]]
set aSysMem [expr [meminfo heap] - $aSysMem]
puts "GPU memory: $aMem"
puts "CPU memory: $aSysMem"
vfps
vzoom 2
vfps
vzoom 2
vfps
TagsNo tags attached.
Test case numberbugs vis(004) bug24307_1, bug24307_2
Attached Filesxls file icon performance_test_results.xls (15,872 bytes) 2013-11-22 16:33
xls file icon BVH_clipping_performance_optimized.xls (42,496 bytes) 2014-02-24 18:11
xls file icon BVH_clipping_performance_with_priorities.xls (42,496 bytes) 2014-03-14 19:03

- Relationships
related to 0024473closedbugmaster Open CASCADE TKMath, BVH - introduce template-based package for Bounding volume hierarchy structures and tools 
parent of 0029823verifiedbugmaster Open CASCADE Visualization, TKOpenGl - highlighting by Bounding Box mistreats Local Transformation 
parent of 0030223verifiedapn Open CASCADE Visualization, TKOpenGl - frustum culling does not clip objects within perspective camera 
parent of 0030434verifiedbugmaster Open CASCADE Visualization, TKV3d - add "NoUpdate" state of frustum culling optimization 
related to 0024704closedbugmaster Open CASCADE Visualization - inherit OpenGl_Structure from Graphic3d_CStructure 
related to 0024705closedbugmaster Open CASCADE Draw Harness - add -noupdate option to vdisplay command 
related to 0023519closedbugmaster Community Mixing wireframe and shaded visualization impacts performance 
related to 0024837closedbugmaster Open CASCADE Visualization - revise design and implementation of connected Interactive Objects 
related to 0024873closedbugmaster Open CASCADE Draw Harness, ViewerTest - add command vbounding to show presentation bounding box 
related to 0025063closedbugmaster Open CASCADE Visualization - 2D objects are not displayed at some camera positions 
related to 0024723closedbugmaster Open CASCADE Not implemented methods in Visual3d and V3d 
related to 0025675closedbugmaster Open CASCADE Visualization - Fix problems and inefficiencies with frustum culling 
related to 0026650closedbugmaster Open CASCADE Coding rules - fix misprint in NCollection_Vec3::operator/() 
related to 0028093closedapn Open CASCADE Visualization - access violation on removal of dynamic highlighting after device loss 
related to 0030412verifiedbugmaster Open CASCADE Visualization, TKV3d - add presentation of camera frustum 

-  Notes
(0026552)
san (developer)
2013-11-11 20:41
edited on: 2013-11-11 22:09

OpenGl_Structure.cxx: please, consider using NCollection_Mat4 and NCollection_Vec4 classes rather than implementing matrix operations anew.

PrsMgr_PresentationManager3d class: what is the logic of InitBoundingBox() method? How it is supposed to be used?

Graphic3d_CStructure.hxx: there is already BoundBox field, why it cannot be re-used for clipping purposes? Is ClippingBoundBox field really necessary?

Graphic3d_Structure class: is new method CalculateBoundBox() really needed? What is the purpose? MinMaxValues() is already called by existing logic, is not it possible just to store its result somewhere?

ViewerTest.cxx, PrsMgr_Presentation3d.cxx, Graphic3d_Structure.cxx, OpenGl_GraphicDriver.cxx: bad indentation.

(0026686)
kgv (developer)
2013-11-18 11:07

Dear vpa,

please implement new option "update=0" to vdisplay command to (optionally) eliminate delay during displaying big number of presentation objects.
vdisplay update=0 anObj1 anObj2
or
vdisplay redraw=0 anObj1 anObj2
(0026711)
vpa (developer)
2013-11-18 16:56

Dear kgv,

the branch was updated according to your remark. Please, review.
(0026713)
kgv (developer)
2013-11-18 17:30

Dear vpa,

please consider following remarks.

- New vdisplay argument should be documented within "help vdisplay" output.
- Patch should be squashed and re-based against current master before review.
- When patch is ready it should be switched to "resolved" state and assigned to reviewer.
- Push performance tests results to mantis.

+  if(argc >= 3)

Please process new argument within general loop through the arguments.
Use UpperCase() to make argument case insensitive and auxiliary function splitParameter (see VDefaults() as reference).

+wait 3

What for wait within the test script?

+unset aFpsInfo
+set aFpsInfo [vfps]
+puts "All boxes were displayed. FPS Info:"
+puts $aFpsInfo
+puts ""

These set/unset tricks look meaningless. Please just call vfps.

+puts "TEST CASE 2: 2/3 of boxes is out of the viewing area"

Please move out dedicated test cases into dedicated files.

+    set aCurrName "test_box"

Please consider 2-spaces indentation in tcl scripts

 void OpenGl_Structure::SetBoundingBox(CALL_DEF_BOUNDBOX theBoundBox)

CALL_DEF_BOUNDBOX is a structure, consider usage of const reference instead of redundant copies when possible.

+   //! Enables/disables objects clipping.
+  int IsClippingEnabled;

drunk indentation.

+  Standard_Real aMaxX = 0, aMaxY = 0, aMaxZ = 0;

Implicit casts.
(0026856)
vpa (developer)
2013-11-22 16:37
edited on: 2013-11-22 16:42

Dear kgv,

results of performance tests were attached to issue. The source code was corrected according to your remarks, patch is located at branch CR24307_1. Please, review.

(0026864)
kgv (developer)
2013-11-25 09:06

Current test case is insufficient for testing new functionality - there should be cases with high polygonal objects. And current implementation shows not good results.
(0027984)
vpa (developer)
2014-02-20 16:16

Dear dbp,

the code changes are ready for review in branch CR24307_4.
(0027999)
vpa (developer)
2014-02-21 17:22

Added performance test results for solid spheres, see in attachments.
(0028003)
kgv (developer)
2014-02-22 10:38

Dear vpa,

all source files should contain copyright header - please see other files as example. Also functions in *.cxx files should be marked with === blocks - please read OCCT coding rules.

@@ -421,6 +421,22 @@ void OpenGl_View::Render (const Handle(OpenGl_PrinterContext)& thePrintContext,
     
}
   }
 
+  Standard_Boolean isMtrUpdateNeeded = Standard_False;
+  static Standard_Size aProjectionState = 0;
+  static Standard_Size anOrientationState = 0;

Please don't forget about these temporary variables.

+  const OpenGl_AABB GetBoundingBox() const { return *myBoundingBox; }

Here and in other places - please return reference when returning class fields.

+void OpenGl_BVHTreeSelector::SetClipPlanes(const NCollection_Mat4<Standard_ShortReal> &theProjection, 
const NCollection_Mat4<Standard_ShortReal> &theModelView)
+{

Please fix all occurrences of broken style.
(0028016)
vpa (developer)
2014-02-24 18:12

Updated performance tests results, now they contain information about performance both on solid spheres and wired boxes.
(0028153)
vpa (developer)
2014-03-05 17:02

Dear kgv,

the patch is ready in branch CR24307_5. Please, review.
(0028157)
kgv (developer)
2014-03-05 19:24

Dear vpa,

the minor corrections have been pushed to the same branch.
Please proceed the following remarks:

inline Standard_ShortReal RealToShortReal (const Standard_Real theVal)

Documentation is missing for new function.

Graphic3d_Structure::CalculateBoundBox ( me	: mutable )

Documentation is missing for new method.

static Standard_Boolean isLeftChildQueuedFirst = Standard_True;

Global variable within OpenGl_PriorityList::renderTraverse()!

  Standard_EXPORT void BoundaryBox (const Graphic3d_CStructure& ACStructure, const Standard_Boolean 
Create, const Standard_Boolean Highlight = Standard_True);

The method name is ambiguous for both - new and old functionality.
Please create two new methods with meaningful name and remove old one (from Graphic3d_GraphicDriver and OpenGl_GraphicDriver).

OpenGl_Structure::SetBoundingBox (const CALL_DEF_BOUNDBOX& theBoundBox)
{
  myBoundingBox = new OpenGl_AABB (aMinPt, aMaxPt);

Bounding box should be always part of the structure and not dynamically allocated, isn't it?

OpenGl_BVHTreeSelector* OpenGl_View::myBVHSelector;

What for dynamic allocation (especially without destruction)?

+    IsClippingEnabled (0)

Shouldn't be clipping enabled by default in Graphic3d_CView?
According to tests it should be beneficial in some cases and almost harmless in others.
(0028172)
vpa (developer)
2014-03-06 19:19

Dear kgv,

the branch was updated according to your remarks. Please, review.
(0028173)
abv (manager)
2014-03-06 19:32
edited on: 2014-03-06 19:33

Minor remark on commit message: the first line should contain issue ID without subscript, followed by issue description in Mantis; in this case "_4" corresponding to current branch name is redundant, and description is not the same as in the issue:

> 0024307_4: Implementation of objects clipping algorithm using BVH trees

On the other side, it is good practice to mention branch name in Mantis Note when issue is switched to Resolved

(0028174)
kgv (developer)
2014-03-06 20:28

Dear vpa,

please do not use forced update in case of complex patches.
It is common practice to keep history as new commits in previously reviewed branch and create new one with squashed changes.

+        Standard_Integer aIdx = aBVHTree->BegPrimitive (aNode);
+        myBVHPrimitives.GetStructureById (aIdx)->Render (theWorkspace);

It seems that structure priority is completely ignored here.
Moreover structures are duplicated within OpenGl_PriorityList::myBVHPrimitives::myStructs and OpenGl_PriorityList::myArray without purpose.

+  OpenGl_BndBoxPrs (const CALL_DEF_BOUNDBOX& theBndBox)
+  {

Implementation should be moved to OpenGl_BndBoxPrs.cxx
(0028198)
kgv (developer)
2014-03-11 15:48

Dear vpa,

please re-base patch on 0024704 (when it will be tested) to avoid bounding box info duplication.

+void OpenGl_BVHTreeSelector::SetViewVolume (const OpenGl_Mat4& theProjection,
+                                            const OpenGl_Mat4& theModelView)
+{
+  myIsProjectionParallel = (theProjection.GetValue (3, 3) == 1.0f);

please use Graphic3d_Camera::IsOrthographic() instead.

+  theCommands.Add("vsetortho", "vsetortho: left right bottom top near far",
+    __FILE__,VSetOrtho,group);

please move this command into dedicated patch (register new issue).
0024705 is intended for -noredraw flag.
(0028292)
vpa (developer)
2014-03-14 19:06

Dear kgv,

the branch CR24307_5 was updated according to your remarks (see branch CR24307_6 for rebased and squashed patch).

Also performance tests considering structures priorities were updated, see file BVH_clipping_performance_with_priorities.xls in attachments.
(0028314)
kgv (developer)
2014-03-17 19:02
edited on: 2014-03-18 08:53

Dear vpa,

the branch CR24307_6 has been updated with several minor changes.

pload MODELING VISUALIZATION
vinit View1
vclear
vsetdispmode 1
for {set x 1} {$x < 1000} {incr x} { box b$x $x 0 0 1 3 2}
for {set x 1} {$x < 1000} {incr x} { vdisplay -noredraw b$x }
vfit

1) with clipping turned on nothing is displayed.
2) with clipping turned on interactive highlighting is extremely slow. Visual3d_View::ChangeDisplayPriority() method might be optimized to move structure across priorities without affecting BVH tree (when Z layer is unchanged).

It is also noticed that DRAWEXE randomly exits during highlighting without reason.

+void Graphic3d_Structure::CalculateBoundBox()
+{
+  Standard_Real aMaxX, aMaxY, aMaxZ;
+  Standard_Real aMinX, aMinY, aMinZ;
+  MinMaxValues (aMinX, aMinY, aMinZ, aMaxX, aMaxY, aMaxZ);

It seems MinMaxCoordWithDescendants() should be used instead and re-computed within Connect()/Disconnect(). Graphic3d_Structure::GraphicHighlight() should not modify bounding box.

@@ -2335,6 +2358,8 @@ void Graphic3d_Structure::UpdateStructure (const Handle(Graphic3d_AspectLine3d)&
   
myCStructure->ContextFillArea.PolygonOffsetMode   = aPolyMode;
   myCStructure->ContextFillArea.PolygonOffsetFactor = aPolyFactor;
   myCStructure->ContextFillArea.PolygonOffsetUnits  = aPolyUnits;
+
+  myCStructure->BoundBox.Add (Graphic3d_Vec4 (0.0f));
 }

It doesn't look correct. What is intension for this call?

(0028801)
vpa (developer)
2014-04-11 16:27

Dear kgv,

the branch CR24307_6 was updated according to your remarks. See branch CR24307_7 for re-based and squashed patch. Please, review.
(0028839)
kgv (developer)
2014-04-15 13:12
edited on: 2014-04-15 13:12

Remarks have been pushed to the branch CR24307_7.
Please test the patch.

(0028903)
mkv (tester)
2014-04-16 18:51

Dear BugMaster,

Branch CR2424307_7 (and products from GIT master) was compiled on Linux, MacOS and Windows platforms and tested.
SHA-1: 5ae0069a60cbc2e6818704183bfc319837fcfacf

Number of compiler warnings:

occt component :
Linux: 28 (18 on master)
Windows: 0 (0 on master)
MacOS: 419 (413 on master)

There are new additional compilation warnings on Linux platform:
http://jenkins-test-02.nnov.opencascade.com:8080/user/mnt/my-views/view/A_mnt_warnings/job/mnt-CR24307_7-master_build_occt_linux/1/warnings16Result/? [^]
OpenGl_Structure.hxx:226, GNU C Compiler 4 (gcc), Priority: Normal
‘Standard_Boolean OpenGl_Structure::myIsCulled’

OpenGl_Structure.hxx:230, GNU C Compiler 4 (gcc), Priority: Normal
‘OpenGl_Structure::myModificationState’ will be initialized after

OpenGl_Workspace.hxx:550, GNU C Compiler 4 (gcc), Priority: Normal
‘Standard_Boolean OpenGl_Workspace::myIsCullingEnabled’

OpenGl_Workspace.hxx:574, GNU C Compiler 4 (gcc), Priority: Normal
‘OpenGl_Workspace::PolygonOffset_applied’ will be initialized after

OpenGl_PriorityList.cxx:203, GNU C Compiler 4 (gcc), Priority: Normal
array subscript has type ‘char’

OpenGl_PriorityList.cxx:218, GNU C Compiler 4 (gcc), Priority: Normal
array subscript has type ‘char’

OpenGl_PriorityList.cxx:234, GNU C Compiler 4 (gcc), Priority: Normal
array subscript has type ‘char’

OpenGl_Structure.cxx:50, GNU C Compiler 4 (gcc), Priority: Normal
when initialized here

OpenGl_Workspace.cxx:140, GNU C Compiler 4 (gcc), Priority: Normal
when initialized here

ViewerTest.cxx:2380, GNU C Compiler 4 (gcc), Priority: Normal
comparison between signed and unsigned integer expressions

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

Regressions/Differences:
http://occt-tests/CR24307-7-master-occt/Debian60-64/summary.html [^]
http://occt-tests/CR24307-7-master-occt/Windows-32-VC9/summary.html [^]

Testing cases:
Not needed

There are following differences in images found by testdiff:
http://occt-tests/CR24307-7-master-occt/Debian60-64/diff-Debian60-64.html [^]
http://occt-tests/CR24307-7-master-occt/Windows-32-VC9/diff-Windows-32-VC9.html [^]
(0029113)
vpa (developer)
2014-04-28 19:16

Dear kgv,

corresponding fixes were pushed into the branch CR24307_7, which was rebased on current master. Squashed patch is in the branch CR24307_8. Please, review.
(0029257)
kgv (developer)
2014-05-08 15:54

Please test updated patch in branch CR24307_9 (based on current IR).
(0029321)
apn (administrator)
2014-05-14 15:07
edited on: 2014-05-14 17:55

Branch CR24307_9 (and products from GIT master) was compiled on Linux, Windows and MacOS platforms and tested.
SHA-1: 47d573d073c9bba633419169adeeeb46f819ca76

Number of compiler warnings:

occt component :
Linux: 17 (17 on master)
Windows: 0 (0 on master)
MacOS: 206 - 1 new warning
OpenGl_BVHClipPrimitiveSet.hxx:42, Clang (LLVM based), Priority: Normal
'OpenGl_BVHClipPrimitiveSet::Box' hides overloaded virtual function

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

Regressions/Differences:
No regressions

Testing cases:
bugs modalg_5 bug24307_1 - OK (BAD image on WNT)
http://occt-tests/CR24307-9-master-occt/Debian60-64/bugs/vis/bug24307_1.html [^]
http://occt-tests/CR24307-9-master-occt/Windows-32-VC9/bugs/vis/bug24307_1.html [^]

bugs modalg_5 bug24307_2 - OK (BAD image on WNT)
http://occt-tests/CR24307-9-master-occt/Debian60-64/bugs/vis/bug24307_2.html [^]
http://occt-tests/CR24307-9-master-occt/Windows-32-VC9/bugs/vis/bug24307_2.html [^]

Testing on Linux:
Total MEMORY difference: 354739820 / 354629132
Total CPU difference: 56117.78 / 51092.58999999978
Testing on Windows:
Total MEMORY difference: 380109672 / 380248492
Total CPU difference: 39936.625 / 35796.078125

There are differences in images found by testdiff:
http://occt-tests/CR24307-9-master-occt/Debian60-64/diff-Debian60-64.html [^]
http://occt-tests/CR24307-9-master-occt/Windows-32-VC9/diff-Windows-32-VC9.html [^]
v3d edge_solid L5 ...
bugs vis bug281_8 bug281_9 ...

(0029830)
vpa (developer)
2014-06-19 14:03

Dear kgv,

updates were pushed into branch CR24307_9, it was re-based on current master. For squashed patch see branch CR24307_10. Please, review.
(0029831)
kgv (developer)
2014-06-19 14:43

Dear bugmaster,

please test branch CR24307_10.
(0029833)
mkv (tester)
2014-06-19 17:35

Dear BugMaster,

Branch CR24307_10 (and products from GIT master) was compiled on Linux, MacOS and Windows platforms and tested.
SHA-1: d75a38b186ef11321f893bdf26da9d53a163767e

There are compilation errors:

http://jenkins-test-02.nnov.opencascade.com:8080/user/mnt/my-views/view/CR24307_10/job/mnt-CR24307_10-master_build_occt_linux/1/parsed_console/ [^]
In file included from ../../../../src/OpenGl/OpenGl_BVHClipPrimitiveSet.cxx:16:
../../../../inc/BVH_Set.hxx:46: error: ‘BVH_Box<T, N> BVH_Set<T, N>::Box(Standard_Integer) const [with T = float, int N = 4]’ is inaccessible
../../../../inc/OpenGl_BVHClipPrimitiveSet.hxx:32: error: within this context
make[2]: *** [OpenGl_BVHClipPrimitiveSet.lo] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from ../../../../src/OpenGl/OpenGl_BVHTreeSelector.cxx:17:
../../../../inc/BVH_Set.hxx:46: error: ‘BVH_Box<T, N> BVH_Set<T, N>::Box(Standard_Integer) const [with T = float, int N = 4]’ is inaccessible
../../../../inc/OpenGl_BVHClipPrimitiveSet.hxx:32: error: within this context
make[2]: *** [OpenGl_BVHTreeSelector.lo] Error 1

http://jenkins-test-02.nnov.opencascade.com:8080/user/mnt/my-views/view/CR24307_10/job/mnt-CR24307_10-master_prepare_build_occt_MacOS/1/parsed_console/ [^]
In file included from /Users/mnt/tools/WOK671/wok_entities/LOC/dev/CR24307-10-master-occt/src/OpenGl/OpenGl_BVHClipPrimitiveSet.cxx:16:
/Users/mnt/tools/WOK671/wok_entities/LOC/dev/CR24307-10-master-occt/inc/OpenGl_BVHClipPrimitiveSet.hxx:35:50: error: 'Box' is a private member of 'BVH_PrimitiveSet<float, 4>'
using BVH_PrimitiveSet<Standard_ShortReal, 4>::Box;
(0029846)
vpa (developer)
2014-06-20 11:40

Dear mkv,

please test the updated branch CR24307_10.
(0029864)
mkv (tester)
2014-06-23 19:11

Dear BugMaster,

Branch CR24307_10 (and products from GIT master) was compiled on Linux, MacOS platforms and tested.
SHA-1: ab489599c391a3f7cbbb95364ffb93b27d6942bf

Number of compiler warnings:

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

products component :
Linux: 11 (11 on master)

Regressions/Differences:
No regressions/differences

Testing cases:
http://occt-tests/CR24307-10-master-occt/Debian60-64/bugs/vis/bug24307_1.html [^]
bugs vis(004) bug24307_1: OK

http://occt-tests/CR24307-10-master-occt/Debian60-64/bugs/vis/bug24307_2.html [^]
bugs vis(004) bug24307_2: OK

Testing on Linux:
Total MEMORY difference: 348521024 / 348647320
Total CPU difference: 50585.80999999994 / 51365.40000000003

There are no differences in images found by testdiff.
(0029872)
mkv (tester)
2014-06-24 16:13

Dear BugMaster,

Branch CR24307_10 (and products from GIT master) was compiled on Windows platform and tested.
SHA-1: ab489599c391a3f7cbbb95364ffb93b27d6942bf

Number of compiler warnings:

occt component :
Windows: 0 (0 on master)

products component :
Windows: 2 (2 on master)

Regressions/Differences:
No regressions/differences

Testing cases:
http://occt-tests/CR24307-10-master-occt/Windows-32-VC9/bugs/vis/bug24307_1.html [^]
bugs vis(004) bug24307_1: OK

http://occt-tests/CR24307-10-master-occt/Windows-32-VC9/bugs/vis/bug24307_2.html [^]
bugs vis(004) bug24307_2: OK

Testing on Windows:
Total MEMORY difference: 376572356 / 376858724
Total CPU difference: 38902.125 / 38774.578125

There are no differences in images found by testdiff.

- Related Changesets
occt: master b7cd4ba7
Timestamp: 2014-06-20 07:26:14
Author: vpa
Committer: apn
Details ] Diff ]
0024307: TKOpenGl - efficient culling of large number of presentations

Implement SAT intersection tests and frustum culling algorithm using BVH trees.

New Draw command vfrustumculling to manage frustum culling.
Add test cases bugs/vis/bug24307_1 and bugs/vis/bug24307_2.
Remove CALL_DEF_BOUNDBOX and CALL_DEF_BOUNDS.
mod - src/BVH/BVH_PrimitiveSet.hxx Diff ] File ]
mod - src/Graphic3d/FILES Diff ] File ]
mod - src/Graphic3d/Graphic3d.cdl Diff ] File ]
add - src/Graphic3d/Graphic3d_BndBox4d.hxx Diff ] File ]
add - src/Graphic3d/Graphic3d_BndBox4f.hxx Diff ] File ]
rm - src/Graphic3d/Graphic3d_CBounds.hxx Diff ] File ]
mod - src/Graphic3d/Graphic3d_CStructure.cxx Diff ] File ]
mod - src/Graphic3d/Graphic3d_CStructure.hxx Diff ] File ]
mod - src/Graphic3d/Graphic3d_CView.hxx Diff ] File ]
mod - src/Graphic3d/Graphic3d_GraphicDriver.cdl Diff ] File ]
mod - src/Graphic3d/Graphic3d_Group.cdl Diff ] File ]
mod - src/Graphic3d/Graphic3d_Group.cxx Diff ] File ]
mod - src/Graphic3d/Graphic3d_Structure.cdl Diff ] File ]
mod - src/Graphic3d/Graphic3d_Structure.cxx Diff ] File ]
mod - src/InterfaceGraphic/InterfaceGraphic_Graphic3d.hxx Diff ] File ]
mod - src/NCollection/NCollection_Vec4.hxx Diff ] File ]
mod - src/OpenGl/FILES Diff ] File ]
add - src/OpenGl/OpenGl_BVHClipPrimitiveSet.cxx Diff ] File ]
add - src/OpenGl/OpenGl_BVHClipPrimitiveSet.hxx Diff ] File ]
add - src/OpenGl/OpenGl_BVHTreeSelector.cxx Diff ] File ]
add - src/OpenGl/OpenGl_BVHTreeSelector.hxx 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_LayerList.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_LayerList.hxx Diff ] File ]
mod - src/OpenGl/OpenGl_PriorityList.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_PriorityList.hxx Diff ] File ]
mod - src/OpenGl/OpenGl_SceneGeometry.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_SceneGeometry.hxx Diff ] File ]
mod - src/OpenGl/OpenGl_Structure.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_Structure.hxx Diff ] File ]
mod - src/OpenGl/OpenGl_View.hxx Diff ] File ]
mod - src/OpenGl/OpenGl_View_2.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_Workspace.cxx Diff ] File ]
mod - src/OpenGl/OpenGl_Workspace.hxx Diff ] File ]
mod - src/OpenGl/OpenGl_Workspace_Raytrace.cxx Diff ] File ]
mod - src/Prs3d/Prs3d_Presentation.cdl Diff ] File ]
mod - src/Prs3d/Prs3d_Presentation.cxx Diff ] File ]
mod - src/PrsMgr/PrsMgr_PresentableObject.cdl Diff ] File ]
mod - src/PrsMgr/PrsMgr_PresentableObject.cxx Diff ] File ]
mod - src/PrsMgr/PrsMgr_Presentation.cxx Diff ] File ]
mod - src/Standard/Standard_Real.hxx Diff ] File ]
mod - src/V3d/V3d_View.cdl Diff ] File ]
mod - src/V3d/V3d_View.cxx Diff ] File ]
mod - src/ViewerTest/ViewerTest.cxx Diff ] File ]
mod - src/ViewerTest/ViewerTest_ObjectCommands.cxx Diff ] File ]
mod - src/ViewerTest/ViewerTest_OpenGlCommands.cxx Diff ] File ]
mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx Diff ] File ]
mod - src/Visual3d/Visual3d_View.cdl Diff ] File ]
mod - src/Visual3d/Visual3d_View.cxx Diff ] File ]
add - tests/bugs/vis/bug24307_1 Diff ] File ]
add - tests/bugs/vis/bug24307_2 Diff ] File ]

- Issue History
Date Modified Username Field Change
2013-11-01 15:54 san New Issue
2013-11-01 15:54 san Assigned To => vpa
2013-11-01 15:54 san Status new => assigned
2013-11-01 16:23 san Description Updated View Revisions
2013-11-01 16:24 san Description Updated View Revisions
2013-11-05 17:47 kgv Reproducibility have not tried => N/A
2013-11-05 17:47 kgv Target Version => 6.7.1
2013-11-11 20:41 san Note Added: 0026552
2013-11-11 22:09 san Note Edited: 0026552 View Revisions
2013-11-18 11:07 kgv Note Added: 0026686
2013-11-18 16:56 vpa Note Added: 0026711
2013-11-18 17:30 kgv Note Added: 0026713
2013-11-22 16:33 vpa File Added: performance_test_results.xls
2013-11-22 16:37 vpa Note Added: 0026856
2013-11-22 16:40 vpa Assigned To vpa => kgv
2013-11-22 16:40 vpa Status assigned => resolved
2013-11-22 16:42 vpa Note Edited: 0026856 View Revisions
2013-11-22 20:54 san Assigned To kgv => vpa
2013-11-22 20:54 san Status resolved => assigned
2013-11-25 09:06 kgv Note Added: 0026864
2013-11-25 09:06 kgv Summary Efficient clipping of large number of presentations => TKOpenGl - efficient clipping of large number of presentations
2013-11-25 09:06 kgv Description Updated View Revisions
2013-12-06 08:27 kgv Description Updated View Revisions
2014-01-17 20:43 kgv Relationship added related to 0024473
2014-02-20 16:16 vpa Assigned To vpa => dbp
2014-02-20 16:16 vpa Status assigned => feedback
2014-02-20 16:16 vpa Note Added: 0027984
2014-02-21 17:20 vpa File Added: BVH_clipping_performance_solid_sphere_tests.xls
2014-02-21 17:22 vpa Note Added: 0027999
2014-02-22 10:38 kgv Note Added: 0028003
2014-02-24 18:09 vpa File Deleted: BVH_clipping_performance_solid_sphere_tests.xls
2014-02-24 18:11 vpa File Added: BVH_clipping_performance_optimized.xls
2014-02-24 18:12 vpa Note Added: 0028016
2014-02-27 15:04 dbp Assigned To dbp => vpa
2014-02-27 15:04 dbp Status feedback => assigned
2014-03-05 17:01 vpa Assigned To vpa => kgv
2014-03-05 17:02 vpa Note Added: 0028153
2014-03-05 17:02 vpa Status assigned => resolved
2014-03-05 19:24 kgv Note Added: 0028157
2014-03-05 19:24 kgv Assigned To kgv => vpa
2014-03-05 19:24 kgv Status resolved => assigned
2014-03-06 19:19 vpa Note Added: 0028172
2014-03-06 19:19 vpa Assigned To vpa => kgv
2014-03-06 19:19 vpa Status assigned => resolved
2014-03-06 19:32 abv Note Added: 0028173
2014-03-06 19:33 abv Note Edited: 0028173 View Revisions
2014-03-06 20:28 kgv Note Added: 0028174
2014-03-06 20:28 kgv Assigned To kgv => vpa
2014-03-06 20:28 kgv Status resolved => assigned
2014-03-08 21:01 kgv Relationship added related to 0024704
2014-03-08 23:19 kgv Relationship added related to 0024705
2014-03-11 15:48 kgv Note Added: 0028198
2014-03-14 19:03 vpa File Added: BVH_clipping_performance_with_priorities.xls
2014-03-14 19:03 vpa Assigned To vpa => kgv
2014-03-14 19:06 vpa Note Added: 0028292
2014-03-14 19:06 vpa Status assigned => resolved
2014-03-17 19:02 kgv Note Added: 0028314
2014-03-17 19:02 kgv Assigned To kgv => vpa
2014-03-17 19:02 kgv Status resolved => assigned
2014-03-17 19:02 kgv Note Edited: 0028314 View Revisions
2014-03-18 08:53 kgv Note Edited: 0028314 View Revisions
2014-04-04 18:09 abv Target Version 6.7.1 => 6.8.0
2014-04-11 09:32 kgv Relationship added related to 0023519
2014-04-11 16:27 vpa Note Added: 0028801
2014-04-11 16:27 vpa Assigned To vpa => kgv
2014-04-11 16:27 vpa Status assigned => resolved
2014-04-15 13:12 kgv Note Added: 0028839
2014-04-15 13:12 kgv Assigned To kgv => bugmaster
2014-04-15 13:12 kgv Status resolved => reviewed
2014-04-15 13:12 kgv Note Edited: 0028839 View Revisions
2014-04-15 14:59 mkv Assigned To bugmaster => mkv
2014-04-16 12:03 kgv Relationship added related to 0024837
2014-04-16 18:51 mkv Note Added: 0028903
2014-04-16 18:52 mkv Test case number => Not needed
2014-04-16 18:52 mkv Assigned To mkv => vpa
2014-04-16 18:52 mkv Status reviewed => assigned
2014-04-25 22:14 kgv Relationship added related to 0024873
2014-04-28 19:16 vpa Note Added: 0029113
2014-04-28 19:16 vpa Assigned To vpa => kgv
2014-04-28 19:16 vpa Status assigned => resolved
2014-05-07 11:10 kgv Summary TKOpenGl - efficient clipping of large number of presentations => TKOpenGl - efficient culling of large number of presentations
2014-05-07 11:10 kgv Description Updated View Revisions
2014-05-08 15:50 kgv Steps to Reproduce Updated View Revisions
2014-05-08 15:54 kgv Note Added: 0029257
2014-05-08 15:54 kgv Assigned To kgv => bugmaster
2014-05-08 15:54 kgv Status resolved => reviewed
2014-05-08 18:50 mkv Assigned To bugmaster => apn
2014-05-14 15:07 apn Note Added: 0029321
2014-05-14 15:08 apn Test case number Not needed => bugs modalg_5 bug24307_1 bug24307_2
2014-05-14 15:08 apn Assigned To apn => vpa
2014-05-14 15:08 apn Status reviewed => assigned
2014-05-14 17:52 apn Note Edited: 0029321 View Revisions
2014-05-14 17:52 apn Note Edited: 0029321 View Revisions
2014-05-14 17:53 apn Note Edited: 0029321 View Revisions
2014-05-14 17:53 apn Note Edited: 0029321 View Revisions
2014-05-14 17:54 apn Note Edited: 0029321 View Revisions
2014-05-14 17:55 apn Note Edited: 0029321 View Revisions
2014-05-14 17:55 apn Note Edited: 0029321 View Revisions
2014-05-14 17:55 apn Note Added: 0029334
2014-05-14 17:55 apn Note Deleted: 0029334
2014-06-19 14:03 vpa Note Added: 0029830
2014-06-19 14:03 vpa Assigned To vpa => kgv
2014-06-19 14:03 vpa Status assigned => resolved
2014-06-19 14:43 kgv Note Added: 0029831
2014-06-19 14:43 kgv Assigned To kgv => bugmaster
2014-06-19 14:43 kgv Status resolved => reviewed
2014-06-19 16:18 mkv Assigned To bugmaster => mkv
2014-06-19 17:35 mkv Note Added: 0029833
2014-06-19 17:36 mkv Assigned To mkv => vpa
2014-06-19 17:36 mkv Status reviewed => assigned
2014-06-20 11:39 vpa Status assigned => resolved
2014-06-20 11:40 vpa Note Added: 0029846
2014-06-20 11:40 vpa Status resolved => reviewed
2014-06-20 11:47 kgv Assigned To vpa => bugmaster
2014-06-20 11:47 vpa Assigned To bugmaster => mkv
2014-06-23 19:11 mkv Note Added: 0029864
2014-06-23 19:11 mkv Test case number bugs modalg_5 bug24307_1 bug24307_2 => bugs vis(004) bug24307_1, bug24307_2
2014-06-24 16:13 mkv Note Added: 0029872
2014-06-24 16:14 mkv Assigned To mkv => bugmaster
2014-06-24 16:14 mkv Status reviewed => tested
2014-06-26 19:35 kgv Relationship added related to 0025036
2014-06-27 16:27 apn Changeset attached => occt master b7cd4ba7
2014-06-27 16:27 apn Assigned To bugmaster => apn
2014-06-27 16:27 apn Status tested => verified
2014-06-27 16:27 apn Resolution open => fixed
2014-07-08 19:24 kgv Relationship added parent of 0025059
2014-07-09 13:43 kgv Relationship added related to 0025063
2014-07-10 09:27 kgv Relationship added parent of 0025066
2014-09-11 09:54 abv Relationship added related to 0024723
2014-10-03 19:25 san Relationship added related to 0025251
2014-10-24 15:49 san Relationship added related to 0025400
2014-11-11 12:43 aiv Fixed in Version => 6.8.0
2014-11-11 13:02 aiv Status verified => closed
2014-12-29 16:12 kgv Relationship added related to 0025675
2015-09-07 09:37 kgv Relationship added related to 0026650
2016-11-11 17:01 kgv Relationship added related to 0028093
2018-05-29 10:36 kgv Relationship added parent of 0029823
2018-10-09 16:42 kgv Relationship added parent of 0030223
2018-12-13 10:46 kgv Relationship added related to 0030412
2019-01-10 12:17 kgv Relationship added parent of 0030434


Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker