Understanding Meshes and GeoTables visualisation capabilities

BambOoxX
Sat, 17 Feb 2024 18:30:52 +0000
General Usage

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 Segments, Triangles and Quadrangles. If Ngon is specified, Segments 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

14 posts - 2 participants