DiscussionsIssue archiveOCCT:Visualization

Archived issue #0026028

Option for drawing MeshVS_Mesh as closed object

Open CASCADEOCCT:Visualizationclosed13 public notes

Search issues

Description

Currently MeshVS_Mesh has no ability to draw it as closed object. It will be useful to add such option; this would allow enabling such features as backface culling and capping.

Steps to reproduce

test bugs vis bug26028

Public activity

13 archived notes

Participants are labeled by their role within this record.

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

[revision removed]


Detailed log of new commits:

Author: Author
Date: Tue Apr 7 16:18:42 2015 +0300

    Added flag for drawing MeshVS_Mesh as closed object
02Commenter 2
Branch [archived branch] has been updated forcibly by Author.

[revision removed]
03Commenter 3
Dear Kirill,

please review patch in occt branch CR26028
04Commenter 2
Branch [archived branch] has been updated forcibly by Author.

[revision removed]
05Commenter 5
Added need MeshVS_DA_ClosedGroup flag to MeshVS_DrawerAttribute enum for drawing MeshVS_Mesh as closed object.

Dear Kirill,

please review patch in occt branch CR26028 (http://git.dev.opencascade.org/gitweb/?p=occt.git;a=commitdiff;h=[revision removed])
06Commenter 3
+  Standard_Boolean anIsClosed = Standard_False;

isClosed

+    aGroup->SetClosed (anIsClosed);
...
         aDrawer->GetBoolean  ( MeshVS_DA_SupressBackFaces, isSupressBackFaces 
...
         aCullFillAsp->SuppressBackFace(););

I have doubts that we need new flag at all - there is MeshVS_DA_SupressBackFaces intended for similar purpose (usually closed flag and back-face culling are synchronized).

However MeshVS_DA_SupressBackFaces is currently applied only for volumetric mesh, not polygonal - and this is incorrect. Thus this logic should be revised.

07Commenter 2
Branch [archived branch] has been updated forcibly by Author.

[revision removed]
08Commenter 8
MeshVS_MeshPrsBuilder::DrawArrays now sets IsClosed flag to group according to MeshVS_DA_SupressBackFaces attribute in MeshVS_Drawer

Dear Kirill,
please review patch in occt branch CR26028 (http://git.dev.opencascade.org/gitweb/?p=occt.git;a=commitdiff;h=[revision removed])
09Commenter 9
Dear Commenter 1,

The branch CR26028 is reviewed. Please test.
10Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
11Commenter 11
Dear Commenter 1,
Branch CR26028 was rebased on current master of occt git-repository.
12Commenter 12
Dear Commenter 1,
Branch CR26028 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: 18 (18 on master)
Windows: 0 (0 on master)

products component :
Linux: 4 (4 on master)
Windows: 0 (0 on master)

Regressions/Differences:
No regressions/differences

Testing cases:
http://occt-tests/CR26028-master-occt-64/Debian60-64/bugs/vis/bug26028.html
http://occt-tests/CR26028-master-occt-64/Windows-64-VC10/bugs/vis/bug26028.html
bugs vis(004) bug26028: OK

Testing on Linux:
occt component :
Total MEMORY difference: 95131349 / 94557310 [+0.61%]
Total CPU difference: 53231.65999999958 / 52229.89999999946 [+1.92%]
products component :
Total MEMORY difference: 23713219 / 23666017 [+0.20%]
Total CPU difference: 17502.13999999997 / 17773.759999999977 [-1.53%]

Testing on Windows:
occt component :
Total MEMORY difference: 57152031 / 57163988 [-0.02%]
Total CPU difference: 15992.489315298992 / 16283.181578699077 [-1.79%]
products component :
Total MEMORY difference: 15560492 / 15564896 [-0.03%]
Total CPU difference: 6425.384788099971 / 6585.207812599981 [-2.43%]

There are no differences in images found by testdiff.
13Commenter 2
Branch [archived branch] has been deleted by Participant.

[revision removed]

Related records