Archived issue #0025061

BRepMesh should skip internal wires with self intersections to produce mesh for the shape anyway

Open CASCADEOCCT:Meshnew2 public notes

Search issues

Description

BRepMesh fails to mesh shapes containing self intersected wires. Attached shape contains two problematic faces - 172 and 227. Each of them have internal wires with self intersections and in addition these wires define contours with insignificant areas (see attached screenshot, problematic wires are marked by red). As far as in general BRepMesh is supposed to be used for visualization needs it is preferred to produce discrete presentation of a shape anyway even if it will not contain some details. For this case it is supposed to introduce new flag BRepMesh_SkippedWire.

Note that if the outer wire of the face contains self intersections, mesher should implement its usual behavior, i.e. notify BRepMesh_SelfIntersectingWire and skip the whole face.

Steps to reproduce

pload ALL
stepread Attachment 1 (STP) a *
explode a_1 f
donly a_1_172 a_1_227
compound a_1_172 a_1_227 c

incmesh c 0.1
# Meshing statuses: SelfIntersectingWire

trinfo c
# This shape contains 0 triangles.
# 0 nodes.
# Maximal deflection 0

Public activity

2 archived notes

Participants are labeled by their role within this record.

01Commenter 1
Problem described in issue is reproduced on current state of OCCT.
02Commenter 2
Fix #0026106 creates some mesh. But it contains free nodes and free edges.

Related records