Gmsh apparently not honouring BGM_MeshSizeWithoutScaling
We are observing some unexpected behaviour with the Gmsh API. We build our model using the openCASCADE kernel. We add points to our model to specify the mesh size as desired. We fragment everything. After synchronising, I can see in the FLTK gui that even though points are deleted, what remains has our mesh size attributes. Moreover, when I have created a callback to monitor the mesh size, it is consistent with the mesh size points. However, it appears to have no effect on the mesh size (I have verified that Mesh.MeshSizeFromPoints is equal to 1 and Mesh.MeshSizeFactor is also equal to 1.0).
We are at a complete loss. I have tried different 2D algorithms, different element orders, getting the mesh size from curvature, and have tried generating 1D mesh instead of 3D (since our mesh size points actually lie along a curve within a 3d model I thought to try to isolate that curve), and yet it still happens.
So, I have verified what is returned by BGM_MeshSizeWithoutScaling() using the callback, but I can see this is called by BGM_MeshSize(), but if double lc = CTX::instance()->lc is less in BGM_MeshSize(), then it will be used instead of that returned by BGM_MeshSizeWithoutScaling. That is the only thing I can think of, however, although I can't see what value CTX::instance()->lc is, it appears it is supposed to be set to the length of the extreme of the box the bounds my model, which is obviously going to be greater or equal to the size of any geometric entity, and so shouldn't be causing the issue either.
Is there anything I could be overlooking?