Subdivide Surfaces of a Brep

If the underlying Surface match the BrepFace (meaning that the Face is Surface) … you can use classic Brep connectivity (“similar” to mesh connectivity) for inquiring/locating adjacent BrepFaces blah, blah … but why bother? - since the general case (any brep) is rather impossible to do without meshes (and K2) : you are actually after a quad “wrapper” . See this:

Another approach could be doing a tri-mesh and then converting it to a quad mesh:

Tri-to-quad-meshes-with_algorithm.pdf (414.1 KB)

Tri-to-quad-meshes-5.pdf (6.5 MB)

gmsh_quad_preprint.pdf (3.8 MB)