Archived issue #0024961

MeshVS: revision of DRAW commands

Open CASCADEOCCT:DRAWclosed47 public notes

Search issues

Description


  1. meshfromstl - should display MeshVS_Mesh object in a way consistent with vdisplay command

  2. meshdel - to be deleted, vremove to be used instead

  3. meshshowall - should set empty maps of hidden IDs instead of null handles

  4. meshhidesel - initialize the maps of hidden IDs to avoid exception

  5. meshmat - add optional transparency argument and enable transparency in the viewer if not yet done

  6. Add commands to display a sample deformed mesh, sample vectors and text labels

  7. An approach to testing visualization of 3D mesh elements should be elaborated (STL format does not seem to support mesh volumes)

  8. meshfromstl or meshselmode - analyze and fix the problem with selection mode 0 (selection of the whole mesh), it does not work currently; do not open the local context in mode 0.

  9. Add test cases covering the available MeshVS DRAW commands (display/erase the mesh, show/hide mesh elements and nodes, mesh display modes, mesh selection modes, various prs builders - colors, vectors, deformed mesh, text labels)

Additional information

DRAW commands for testing MeshVS package were revised. Few new commands were added to cover advanced MeshVS features, such as visualization of vector fields and text labels, 3D mesh elements support and deformed mesh visualization.
Dedicated v3d mesh test grid was added to test MeshVS package.

The default mesh link color used by meshfromstl command was changed from white to yellow to avoid ambiguity with the selection color.

A logical mistakes was discovered and corrected in
MeshVS_Mesh::ComputeSelection() method: it used IsHiddenNode() method instead of IsSelectableNode().

Public activity

47 archived notes

Participants are labeled by their role within this record.

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

[revision removed]
02Commenter 2
Problems 1-5 corrected.
Problem 6: meshvectors command added to test MeshVS_VectorPrsBuilder.

TODO:
Problem 6: Commands for deformed mesh and text labels to be added.
Problems 7-9.
03Commenter 3
Branch [archived branch] has been updated by Participant.

[revision removed]


      from 0d91e26 0024961: MeshVS: revision of DRAW commands meshfromstl - display MeshVS_Mesh object in a way consistent with vdisplay command meshdel - deleted, vremove to be used instead meshshowall - set empty maps of hidden IDs instead of null handles meshhidesel - initialize the maps of hidden IDs to avoid exception meshmat - add optional transparency argument and enable transparency in the viewer if not yet done meshvectors - command for testing VectorPrsBuilder added
       new 8810ea6 MeshVS: DRAW commands improving


Detailed log of new commits:

[revision removed]
Author: anv
Date: Thu Aug 7 13:15:08 2014 +0400

    MeshVS: DRAW commands improving

04Commenter 4
Problem 6: Done.

Problem 7: To test visualization of 3D mesh elements XSDRAWSTLVRML_DataSource3D class and "mesh3delem" DRAW command were added.

Problem 8: Problem fixed. "meshselmode" and "meshdispmode" commands were deleted as not needed (copying functionality of standard "vselmode" and "vsetdispmode" commands).

Problem 9: Test cases were added.

Please add attached file to the occt_test_data as it's needed for some tests and can be useful in the future.
05Commenter 3
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
06Commenter 3
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
07Commenter 4
Dear Artem,

+  Handle(AIS_InteractiveContext) aContext = ViewerTest::GetAISContext();
+  if (aContext.IsNull())
+  {
+    di << "No active view. Please call 'vinit' first" << "\n";
+    return 1;
+  }

here and in other changed places - please use std::cout instead of di before "return 1" statements (which raises tcl exception).
08Commenter 3
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
09Commenter 3
Branch [archived branch] has been updated forcibly by Author.

[revision removed]
10Commenter 3
Branch [archived branch] has been updated forcibly by Author.

[revision removed]
11Commenter 11
Branch CR24961_1 reviewed without remarks, ready for testing
12Commenter 12
Dear san,

Could you please rebase CR24961_1 due conflicts in src/MeshVS/MeshVS_NodalColorPrsBuilder.cxx
13Commenter 3
Branch [archived branch] has been updated forcibly by Author.

[revision removed]
14Commenter 14
Branch CR24961_1 rebased on the current master.
15Commenter 15
Branch CR24961_1 ready for testing
16Commenter 16
Dear Commenter 1,

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

Number of compiler warnings:
occt component:
   Linux: 16 (15 on master)
   Windows: 0 (0 on master)
products component:
   Linux: 11 (11 on master)
   Windows: 1 (1 on master)

There is new additional compilation warning:
on Linux platform:
XSDRAWSTLVRML_DataSource3D.cxx:278, GNU C Compiler 4 (gcc), Priority: Normal
  suggest explicit braces to avoid ambiguous ‘else’

Regressions/Differences:
http://occt-tests/CR24961-1-master-occt/Debian60-64/summary.html
http://occt-tests/CR24961-1-master-occt/Windows-32-VC10/summary.html
3rdparty export A1
perf multi_mesh_selection
     multi_mesh_shading
     multi_mesh_shrink
     multi_mesh_wireframe
     single_mesh_selection
     single_mesh_shading
     single_mesh_shrink
     single_mesh_wireframe
bugs vis bug6652
         bug10702
         bug10781
         bug11095
         bug21091_3
v3d voxel
    glsl
    raytrace
    materials
17Commenter 17
Dear anv,

Can you please update the failed test cases as follows:

  • Replace meshdispmode command and probably other commands removed from XSDRAWSTLVRML with their analogs from ViewerTest (vsetdispmode, etc.)

  • Add vinit before meshfromstl

  • Correct the mistake in tests/v3d/end script


And please correct the warning in XSDRAWSTLVRML_DataSource3D.cxx.

18Commenter 3
Branch [archived branch] has been updated by Participant.

[revision removed]


      from a6ac89c MeshVS: DRAW commands improving
       new a4e2c87 Updating test cases due to previous changes


Detailed log of new commits:

[revision removed]
Author: anv
Date: Wed Aug 20 15:27:40 2014 +0400

    Updating test cases due to previous changes

19Commenter 3
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
20Commenter 20
Test cases were updated, warning eliminated and small bug in MeshVS_ElementalColorPrsBuilder was fixed.
Changes are located in branch CR24961_1.
Please check.
21Commenter 21
Please, revise carefully the test cases where vselmode command has been added.
This command has slightly different semantics than former meshselmode did:

  • vselmode m -1 1 will not disable local selection, instead it will open a local context and try to activate selection mode -1 that is not supported by MeshVS_Mesh -> this is an error!

  • vselmode m 0 1 should be used to disable local selection and activate global selection

  • vselmode m 0 0 should be used to disable also global selection, this seems to correspond to former "meshselmode m -1" command - this is not supported currently, thus please correct vselmode command and add this feature.


22Commenter 3
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: anv
Date: Fri Aug 22 13:40:32 2014 +0400

    vselmode fix

23Commenter 23
vselmode command and related tests were updated.
Please check.
24Commenter 3
Branch [archived branch] has been updated forcibly by Author.

[revision removed]
25Commenter 25
Branch CR24961_1 reviewed without remarks, ready for testing.
26Commenter 26
Dear Commenter 1,
Branch CR24961_1 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: 15 (15 on master)
Windows: 0 (0 on master)
MacOS: 195 (195 on master)

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

Regressions/Differences:
http://occt-tests/CR24961-1-master-occt/Debian60-64/summary.html
http://occt-tests/CR24961-1-master-occt/Windows-32-VC10/summary.html
3rdparty export(001) A1
bugs vis(004) bug10702, bug10781, bug24389

Testing cases:
http://occt-tests/CR24961-1-master-occt/Debian60-64/v3d/mesh/
http://occt-tests/CR24961-1-master-occt/Windows-32-VC10/v3d/mesh/
v3d mesh(016) - OK

Testing on Linux:
occt component :
Total MEMORY difference: 353112232 / 353104144
Total CPU difference: 46035.940000000024 / 44479.43000000008
products component :
Total MEMORY difference: 110263128 / 110189000
Total CPU difference: 18630.369999999984 / 17592.629999999976

Testing on Windows:
occt component :
Total MEMORY difference: 240639812 / 240910488
Total CPU difference: 33029.34375 / 40198.828125
products component :
Total MEMORY difference: 66383116 / 66474236
Total CPU difference: 11001.578125 / 15955.59375

There are differences in images found by testdiff.
http://occt-tests/CR24961-1-master-occt/Debian60-64/diff-Debian60-64.html
http://occt-tests/CR24961-1-master-occt/Windows-32-VC10/diff-Windows-32-VC10.html
27Commenter 3
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: anv
Date: Mon Sep 1 13:56:44 2014 +0400

    tests update due to changes in OCCT

28Commenter 28
Some tests were updated, regressions eliminated.
Differences in images found by testdiff ( in bugs vis bug10702, perf single_mesh_shading, perf single_mesh_wireframe, perf single_mesh_selection, perf multi_mesh_shading, perf multi_mesh_wireframe, perf multi_mesh_selection ) is a normal behavior due to last changes in OCCT. Please update corresponding images.
29Commenter 29
Sorry, please explain what kind of changes in OCCT (independent of this fix??) led to loss of selection highlight in test bugs vis bug137* and others?
30Commenter 30
Yes, sorry, I've meant changes implemented by this fix. And this was regarding tests listed parenthetically. As for test bugs vis bug137* I'm not sure why there is selection on this images, because I've tried to run this tests on the current (for this branch) master and there is no selection too.
31Commenter 31
dear Commenter 1,

Can you please double-check that test cases bugs vis bug137* are really regressions with respect to Git master? See #0024961.
We really need this issue to be in master ASAP, so let's move on.
32Commenter 32
33Commenter 3
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: anv
Date: Tue Sep 9 13:19:10 2014 +0400

    tests fixed

34Commenter 34
Mentioned tests were fixed, please check. Resulting images still differ from ones on the current master, but this is correct behavior due to the comments inside the tests (so this tests work incorrectly on the master).

35Commenter 35
Please re-test
36Commenter 3
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
37Commenter 37
Dear Commenter 1,
Branch CR24961_1 from occt git-repository (and master from products git-repository) was compiled on Linux and Windows platforms and tested on Release mode.
[revision removed]

Number of compiler warnings:

occt component :
Linux: 15 (15 on master)
Windows: 0 (0 on master)

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

Regressions/Differences:
http://occt-tests/CR24961-1-master-occt/Debian60-64/summary.html
http://occt-tests/CR24961-1-master-occt/Windows-32-VC10/summary.html
bugs mesh(016) bug24968_1, bug24968_2
v3d mesh(016) A1, A2, B2, B3

Testing cases:
http://occt-tests/CR24961-1-master-occt/Debian60-64/v3d/mesh/
http://occt-tests/CR24961-1-master-occt/Windows-32-VC10/v3d/mesh/
v3d mesh(016)

Testing on Linux:
occt component :
Total MEMORY difference: 355285236 / 355188820
Total CPU difference: 46798.45000000012 / 45791.1700000001
products component :
Total MEMORY difference: 109665272 / 109581496
Total CPU difference: 18887.889999999974 / 18114.36999999996

Testing on Windows:
occt component :
Total MEMORY difference: 241282156 / 241582552
Total CPU difference: 42311.265625 / 36294.828125
products component :
Total MEMORY difference: 66443380 / 66486588
Total CPU difference: 11985.890625 / 12374.765625

There are following differences in images found by testdiff:
http://occt-tests/CR24961-1-master-occt/Debian60-64/diff-Debian60-64.html
http://occt-tests/CR24961-1-master-occt/Windows-32-VC10/diff-Windows-32-VC10.html
IMAGE bugs vis bug10: bug10781_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug137_11: bug137_11_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug10781: bug10781_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug137_1: bug137_11_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug137_1: bug137_10_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug137_9: bug137_9_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug137_10: bug137_10_Driver1_Viewer1_View1.png differs
IMAGE bugs moddata_2 bug22572: bug22572_Driver1_Viewer1_View1.png differs
....

38Commenter 38
Dear Commenter 1,
Branch CR24961_1 from occt git-repository (and master from products git-repository) was compiled on Linux and Windows platforms and tested on Debug mode.
[revision removed]

Regressions/Differences:
http://occt-tests/CR24961-1-master-occt-deb/Debian60-64/summary.html
http://occt-tests/CR24961-1-master-occt-deb/Windows-32-VC10/summary.html
v3d mesh(016) A1, A2, B2, B3

Testing cases:
http://occt-tests/CR24961-1-master-occt-deb/Debian60-64/v3d/mesh/
http://occt-tests/CR24961-1-master-occt-deb/Windows-32-VC10/v3d/mesh/
v3d mesh(016)

Testing on Linux:
occt component :
Total MEMORY difference: 425879424 / 425794920
Total CPU difference: 153482.0999999988 / 156885.24999999927
products component :
Total MEMORY difference: 127719568 / 127757472
Total CPU difference: 39196.230000000025 / 38671.12999999995

Testing on Windows:
occt component :
Total MEMORY difference: 333840064 / 333767060
Total CPU difference: 125757.734375 / 105149.5
products component :
Total MEMORY difference: 89168676 / 88954420
Total CPU difference: 23866.890625 / 27886.515625

There are following differences in images found by testdiff:
http://occt-tests/CR24961-1-master-occt-deb/Debian60-64/diff-Debian60-64.html
http://occt-tests/CR24961-1-master-occt-deb/Windows-32-VC10/diff-Windows-32-VC10.html
IMAGE bugs vis bug10: bug10781_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug137_11: bug137_11_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug10781: bug10781_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug137_1: bug137_11_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug137_1: bug137_10_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug137_9: bug137_9_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug137_10: bug137_10_Driver1_Viewer1_View1.png differs
IMAGE bugs moddata_2 bug22572: bug22572_Driver1_Viewer1_View1.png differs
....
39Commenter 3
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: mkv
Date: Mon Sep 15 19:31:12 2014 +0400

    Small correction of test cases for issue CR24961

40Commenter 3
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
41Commenter 41
Regressions in v3d mesh were eliminated.

As for bugs vis bug10781, please update image, the new one is correct (mesh color was changed from white to yellow).

As for bugs vis bug10, bugs vis bug137_1, why is it using images from other tests? ( e.g. bug10781_Driver1_Viewer1_View1.png, bug137_10_Driver1_Viewer1_View1.png )
Here http://occt-tests/CR24961-1-master-occt-deb/Windows-32-VC10/summary.html all results are correct (images too).

As for bugs vis bug137_9, bug137_10, bug137_11, new images are correct, please update (Face selection didn't work in old tests).

As for bugs moddata_2 bug22572, test was updated and now doesn't have any images, as it should be, cause it compares console output and doesn't need any View tracing.

Please test.
42Commenter 3
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
43Commenter 43
Branch CR24961_1 reviewed without remarks, ready for testing.
44Commenter 44
Dear Commenter 1,
Branch CR24961_1 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested on Release mode.
[revision removed]

Number of compiler warnings:

occt component :
Linux: 15 (15 on master)
Windows: 0 (0 on master)
MacOS: 193 (193 on master)

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

Regressions/Differences:
http://occt-tests/CR24961-1-master-occt/Debian60-64/bugs/vis/bug10702.html
http://occt-tests/CR24961-1-master-occt/Windows-32-VC10/bugs/vis/bug10702.html
bugs vis(004) bug10702: IMPROVEMENT

Testing cases:
http://occt-tests/CR24961-1-master-occt/Debian60-64/v3d/mesh/
http://occt-tests/CR24961-1-master-occt/Windows-32-VC10/v3d/mesh/
v3d mesh(016)

Testing on Linux:
occt component :
Total MEMORY difference: 356033152 / 355433580
Total CPU difference: 47153.440000000046 / 44818.460000000094
products component :
Total MEMORY difference: 109665272 / 109581496
Total CPU difference: 18887.889999999974 / 18114.36999999996

Testing on Windows:
occt component :
Total MEMORY difference: 244645148 / 241971632
Total CPU difference: 44314.25 / 34116.90625
products component :
Total MEMORY difference: 66597856 / 66591984
Total CPU difference: 14004.25 / 11913.0625

There are following differences in images found by testdiff.
http://occt-tests/CR24961-1-master-occt/Debian60-64/diff-Debian60-64.html
http://occt-tests/CR24961-1-master-occt/Windows-32-VC10/diff-Windows-32-VC10.html
IMAGE bugs vis bug10: bug10781_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug137_11: bug137_11_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug10781: bug10781_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug137_1: bug137_11_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug137_1: bug137_10_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug137_9: bug137_9_Driver1_Viewer1_View1.png differs
IMAGE bugs vis bug137_10: bug137_10_Driver1_Viewer1_View1.png differs
IMAGE perf multi_mesh_shading A6: A6.png differs
IMAGE perf multi_mesh_shading A5: A5.png differs
IMAGE perf multi_mesh_shading A4: A4.png differs
IMAGE perf multi_mesh_shading A1: A1.png differs
IMAGE perf multi_mesh_shading A3: A3.png differs
IMAGE perf multi_mesh_shading A2: A2.png differs
IMAGE perf multi_mesh_shading A8: A8.png differs
IMAGE perf multi_mesh_shading A7: A7.png differs
IMAGE perf single_mesh_wireframe A6: A6.png differs
IMAGE perf single_mesh_wireframe A4: A4.png differs
IMAGE perf single_mesh_wireframe A1: A1.png differs
IMAGE perf single_mesh_wireframe A3: A3.png differs
IMAGE perf single_mesh_wireframe A2: A2.png differs
IMAGE perf single_mesh_wireframe A8: A8.png differs
IMAGE perf single_mesh_wireframe A7: A7.png differs
IMAGE perf single_mesh_shading A6: A6.png differs
IMAGE perf single_mesh_shading A4: A4.png differs
IMAGE perf single_mesh_shading A1: A1.png differs
IMAGE perf single_mesh_shading A3: A3.png differs
IMAGE perf single_mesh_shading A2: A2.png differs
IMAGE perf single_mesh_shading A8: A8.png differs
IMAGE perf single_mesh_shading A7: A7.png differs
IMAGE perf multi_mesh_selection B5: B5.png differs
IMAGE perf multi_mesh_selection B2: B2.png differs
IMAGE perf multi_mesh_selection A6: A6.png differs
IMAGE perf multi_mesh_selection B1: B1.png differs
IMAGE perf multi_mesh_selection B4: B4.png differs
IMAGE perf multi_mesh_selection A5: A5.png differs
IMAGE perf multi_mesh_selection B6: B6.png differs
IMAGE perf multi_mesh_selection A4: A4.png differs
IMAGE perf multi_mesh_selection A1: A1.png differs
IMAGE perf multi_mesh_selection A2: A2.png differs
IMAGE perf multi_mesh_selection A8: A8.png differs
IMAGE perf multi_mesh_selection A7: A7.png differs
IMAGE perf multi_mesh_selection B7: B7.png differs
IMAGE perf multi_mesh_wireframe A6: A6.png differs
IMAGE perf multi_mesh_wireframe A5: A5.png differs
IMAGE perf multi_mesh_wireframe A4: A4.png differs
IMAGE perf multi_mesh_wireframe A1: A1.png differs
IMAGE perf multi_mesh_wireframe A3: A3.png differs
IMAGE perf multi_mesh_wireframe A2: A2.png differs
IMAGE perf multi_mesh_wireframe A8: A8.png differs
IMAGE perf multi_mesh_wireframe A7: A7.png differs
IMAGE perf single_mesh_selection B5: B5.png differs
IMAGE perf single_mesh_selection B2: B2.png differs
IMAGE perf single_mesh_selection A6: A6.png differs
IMAGE perf single_mesh_selection B1: B1.png differs
IMAGE perf single_mesh_selection B4: B4.png differs
IMAGE perf single_mesh_selection A5: A5.png differs
IMAGE perf single_mesh_selection B6: B6.png differs
IMAGE perf single_mesh_selection A4: A4.png differs
IMAGE perf single_mesh_selection A1: A1.png differs
IMAGE perf single_mesh_selection A2: A2.png differs
IMAGE perf single_mesh_selection A8: A8.png differs
IMAGE perf single_mesh_selection A7: A7.png differs
IMAGE perf single_mesh_selection B7: B7.png differs
45Commenter 3
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: mkv
Date: Thu Sep 25 17:12:24 2014 +0400

    Correction of test cases for issue CR24961

46Commenter 46
Dear Commenter 1,
Test cases bugs/vis(004)/bug10702 is corrected and now it is OK.
47Commenter 3
Branch [archived branch] has been deleted by Participant.

[revision removed]

Related records