Transfinite mesh does not recognize OCC curve
Hello,
I want to mesh a part of the 2D model with transfinite mesh with the following Python code, but I get "Error : Curve 8 does not exist". When I check the model in Gmsh, I see that "Curve 8" already exists in the correct place (please see figure below). Then, why do I see this error?
import gmsh
import sys
circEl=6 # num of elements in theta direction
depthEl=6 # num of elements in radial direction
gmsh.initialize(sys.argv)
gmsh.model.add("modelname")
gmOcc=gmsh.model.occ
gmMesh=gmsh.model.mesh
outerSurf=gmOcc.addRectangle(0, 0, 0, 20, 10)
center=(10,0,0)
radius=1
outerDisk=gmOcc.addCircle(center[0],center[1],center[2],radius)
o1, m1 = gmOcc.fragment([(2, outerSurf)], [(1, outerDisk)], removeTool=True)
gmOcc.remove([o1[2]])
surf1=o1[0]
surf2=o1[1]
innerRadius=0.1
innerDisk=gmOcc.addDisk(center[0],center[1],center[2],innerRadius,innerRadius)
o2, m2 = gmOcc.cut([surf2], [(2,innerDisk)])
gmMesh.setTransfiniteCurve(8, depthEl+1)
gmMesh.setTransfiniteCurve(9, depthEl+1)
gmMesh.setTransfiniteCurve(1, circEl+1)
gmMesh.setTransfiniteCurve(7, circEl+1)
gmMesh.setTransfiniteSurface(surf2)
gmOcc.synchronize()
# gmsh.model.mesh.generate(2)
if '-nopopup' not in sys.argv:
gmsh.fltk.run()
gmsh.finalize()
Kind regards,
Ali