from netgen.geom2d import *
import netgen.gui


geo = SplineGeometry()
geo.AddCircle(c=(0, 0),
              r=1.0,
              bc="circle")

ngmesh = geo.GenerateMesh(maxh=0.5)
ngmesh.Save("disk_original.vol")

from ngsPETSc import MeshMapping

petscMap = MeshMapping(ngmesh)
plex = petscMap.petscPlex
plex.setRefinementUniform(True)
rplex = plex.refine()

input("Refine ?")

ngMap = MeshMapping(rplex, geo=geo)
rngmesh = ngMap.ngMesh
rngmesh.SetGeometry(ngmesh.GetGeometry())

rngmesh.Curve(2)
rngmesh.Save("disk.vol")
