Mismatched boundary curves after Partition/Cut on cylindrical faces (SALOME 9.15.0)

Environment

-----------

- SALOME version: 9.15.0

- Modules: Geometry (GEOM)

- OS: Windows

Description

-----------

I am building a hexagonal lattice model consisting of:

- a hexagonal "wall" solid (outer hexagon minus inner hexagon, ~1.6 mm thickness),

- a solid rod (cylinder) at the center of each hexagon,

- three hollow "guide tube" cylinders (annular, outer/inner radius) located at

alternating vertices of the hexagon.

The wall, rod and guide tubes are combined with Boolean Cut/Fuse operations,

then the whole assembly is duplicated across a lattice (Translation / direct

coordinate placement) to build a multi-cell array, and finally Partitioned

along the Z axis at several elevations to create axial segments (the array

is extruded ~3000 mm and cut into segments matching a spacer-grid pattern).

Observation

-----------

After Partition, I use Explode to obtain individual Solid sub-shapes so that

I can assign different meshing hypotheses per solid (I need quadrilateral

surface meshes, so each solid needs individual algorithm control).

When I inspect the boundary between two axially-adjacent solids (i.e. the

horizontal, Z-normal interface created by the Z-direction Partition cuts):

- Where the cutting plane intersects a **vertical planar face** (e.g. the

flat side of the hex wall), the resulting edge on both sides of the cut

matches exactly (single line, no offset) after Explode.

- Where the cutting plane intersects a **cylindrical face** (rod outer

surface, guide tube outer/inner surface), the resulting circular edges on

the two sides of the cut do **not** coincide after Explode. Viewed from

directly above (looking down the Z axis, normal to the cutting plane), the

two curves are visibly offset/distorted relative to one another (not just

a sub-micron numerical difference — the curve shapes themselves differ

noticeably in this view). Viewed from an oblique angle, the same curves

appear to overlap into a single line (foreshortening makes the offset hard

to see, but `CheckSelfIntersections` / face-level `CheckShape` are what I

am using to confirm this is a real geometric discrepancy rather than a

rendering artifact).

- I do NOT observe this problem when the cutting plane only crosses planar

(flat) faces. The Partition result right after the Partition call (before

Explode) also displays fully coincident boundaries in the viewer; the

mismatch becomes visible only after Explode separates the solids into

independent shapes.

Question

--------

1. Is this a known behavior of GEOM's Partition/Explode when a cutting

plane intersects a curved (cylindrical) face that is shared between two

resulting solids? Specifically, does Explode create independent copies of

the two sides of what should be a single shared circular edge, and can

these two copies be computed/discretized differently even though they

originate from the same cut?

2. Is `MakeGlueFaces` expected to correctly re-merge this type of edge, or

are there known limitations when the coincident edges are conics

(circles) rather than lines?

3. Is there a recommended workaround other than (a) avoiding cutting

through cylindrical faces (i.e., building each axial segment as a

separate extrusion instead of extruding once and cutting), or (b)

extracting one side's face as a template and re-using it (via

MakePrismVecH) to guarantee the other side is an exact geometric copy?

Any pointers to relevant OCC/GEOM documentation or prior forum discussions

would be appreciated.(This is written by Claude.)

Mismatched b.c. image

I can not answer for the 1. & 2. as i encounter myself in similar situations with geom, without a conclusion on how to solve this issue.
for 3. actually you dont need to explode it but create groups and use this groups to create submeshes. this way you will workaround this issue you are having.