I’m currently testing Meshes.jl
and GeoTables
to see if they can be useful for my finite element analyses. Part of the logic still feels a bit weird to me (attaching data to a topology feels a bit restrictive, but that is probably due to my lack of understanding of the GIS background).
A quite common problem with finite element models is that you have elements with very different topologies that arise. Looking at the Meshes
documentation, I figured everything would be working smoothly.
However, it seems that it is not possible to plot in a single pass point, surfacic and linear topologies. As a example I expected the code below to show triangles/quadrangles and segments.
using Meshes, GLMakie
points = rand(Meshes.Point3f,10)
connec = connect.([(1,8),(1,10),(1,2,6,5),(2,4,6),(4,3,5,6),(3,1,5)], Ngon)
mesh = SimpleMesh(points, connec)
viz(mesh,facetcolor=:red,showfacets=false, segmentsize=10)
but no segment seems to be plotted
A side note, if Ngon
is not specified in the connect
calls, the connectivity vector show Segment
s, Triangle
s and Quadrangles
. If Ngon
is specified, Segment
s are replaced by Ngon
, but not other topologies.
Also, if pointsize
is set, I would have expected some markers at the points of the mesh, but it seems that to plot some points one needs to call viz(vertices(mesh))
, the pointsize works… but it does not seem to be able to customize the marker (e.g. 2d as in scatter
or 3D as in meshscatter
). In the picture below, the z-level looks off…
All in all, viz
feels pretty stiff, so I was wondering if it is just me or if it is not intended for this kind of usage ?
Regarding GeoTables
, if one has different topologies in a mesh, it does not seem to be possible to impose a specific color per topology type. Is that an intended behavior ?
Finally, it does not seem to be easy to manipulate coordinates contained in a mesh (and therefore in a geotable), I would like to display animated FE solutions and that looks quite complicated with Meshes, is it ? The main application here would be to support Observables
but that does not seem to be working with viz