View Issue Details

IDProjectCategoryView StatusLast Update
0022618Open CASCADEOCCT:Visualizationpublic2023-08-01 15:09
ReportersanAssigned Tosan 
PrioritylowSeverityfeature 
Status assignedResolutionopen 
OSAll 
Target VersionUnscheduled 
Summary0022618: Visualization - Tool for building generic wireframe representation of a face
DescriptionThe problem of building a wireframe representation (a set of polylines for the
face' edges and isolines) of a topological face is not new at all.

1. Currently, there are several similar classes in OCCT in StdPrs and Prs3d
packages.
The complete set of such classes is to be identified and listed in this bug. One
more similar tool can be found in SALOME GEOM module.

AIS_Shape class currently use StdPrs_WFDeflectionRestrictedFace class (through
Prs3d_WFShape) for this purpose. But this class does not build a generic
wireframe mesh containing points and polylines. Instead, it fills
Prs3d_Presentation with internal OCCT data. Thus it is extremely difficult to
reuse this class outside OCCT 3D viewer.

SALOME GEOM module uses OCC2VTK_WireframeFace class to build wireframe
representation for VTK viewer. This class uses slightly different (at the first
glance) implementation of isoline building algorithm. It is not generic, either,
as it fills VTK data structures.

Meanwhile, sometimes it is necessary to have wireframe representation in the
form of generic polylines, to pass it to some third-party 3D engine or just to
avoid dependency on SALOME.
Today the most straightforward solution is copy/paste-based...

2. The idea is to compare the existing implementations and create a generic tool
somewhere, presumably at the level of BRepMesh package.
The name of such a tool is to be discussed (I suggest something like
BRepMesh_IsoBuilder).
This tool should fill generic data structures, such as a list of Poly_Polygon3D
containers.

In case if Poly_Triangulation is available for the underlying face, it looks
very interesting to analyze the possibility of building the polylines on the
triangulation and creating Poly_PolygonOnTriangulation containers instead, so as
to use exactly the same discrete geometry as for shaded face representation,
that would minimize visual artifacts when wireframe and shaded representations
are combined in a 3D scene. However, such optimization is to be analyzed
carefully.

3. Finally, AIS_Shape should be migrated to this new tool, and obsolete StdPrs
and Prs3d classes should be removed. The same procedure could be also applied to
OCC2VTK_WireframeFace if necessary.
TagsNo tags attached.
Test case number

Relationships

related to 0023519 closedbugmaster Community Mixing wireframe and shaded visualization impacts performance 
related to 0022877 closedbugmaster Open CASCADE Draw Harness - add plugin for VIS component 
related to 0025300 closedski Open CASCADE Visualization - Build wireframe representation consistent with the shape's triangulation 
related to 0027596 closedbugmaster Open CASCADE Visualization, StdPrs_WFShape - pack isolines into single group of primitives 
related to 0030599 assignedtizmaylo Open CASCADE Visualization - implement StdPrs_SectionLines tool 
related to 0031973 newvpozdyayev Open CASCADE Visualization - deprecate StdPrs_WFDeflectionRestrictedFace tool 
related to 0023984 closedbugmaster Open CASCADE Incorrect visualization of wires in wireframe mode 

Activities

There are no notes attached to this issue.

Issue History

Date Modified Username Field Change
2011-08-02 11:24 bugmaster Category OCCT:VIZ => OCCT:Visualization
2011-10-03 14:39 pdn Fixed in Version EMPTY =>
2011-10-03 14:39 pdn Target Version => 6.5.3
2011-10-03 14:39 pdn Description Updated
2012-03-22 06:38 abv Target Version 6.5.3 => 6.5.4
2012-10-20 10:15 abv Assigned To bugmaster => san
2012-10-20 10:15 abv Status new => feedback
2012-10-20 10:20 abv Target Version 6.5.4 => Unscheduled
2012-10-27 03:50 san Description Updated
2012-10-27 03:52 san Status feedback => assigned
2012-10-27 03:53 san Assigned To san => abv
2012-10-27 03:53 san Status assigned => feedback
2012-10-29 09:12 abv Assigned To abv => san
2012-10-29 09:12 abv Status feedback => assigned
2012-11-15 20:36 san Relationship added related to 0023519
2014-02-13 11:20 kgv Priority normal => low
2014-02-13 11:21 kgv Relationship added related to 0022877
2014-02-17 15:24 kgv Product Version => 7.0.0
2014-02-17 15:24 kgv Product Version 7.0.0 =>
2014-02-17 15:24 kgv Target Version Unscheduled => 7.0.0
2014-02-17 16:26 kgv Relationship added related to 0023984
2014-09-29 22:36 kgv Target Version 7.0.0 => 7.1.0
2014-09-30 19:44 san Relationship added related to 0025300
2016-06-16 20:47 kgv Relationship added related to 0027596
2016-10-25 09:38 kgv Target Version 7.1.0 => 7.2.0
2017-07-20 10:52 kgv Target Version 7.2.0 => 7.4.0
2019-05-07 11:44 kgv Relationship added related to 0030599
2019-08-13 12:04 kgv Target Version 7.4.0 => 7.5.0
2019-09-04 12:08 kgv Summary Tool for building generic wireframe representation of a face => Visualization - Tool for building generic wireframe representation of a face
2020-09-21 17:20 kgv Target Version 7.5.0 => 7.6.0
2020-12-03 15:34 kgv Relationship added related to 0031973
2021-08-24 14:26 kgv Target Version 7.6.0 => 7.7.0
2022-08-17 11:57 kgv Target Version 7.7.0 => 7.8.0
2023-08-01 15:09 dpasukhi Target Version 7.8.0 => Unscheduled