Congratulations on the new release!
We are trying to update our recipes, but for some reason the Makie.mesh function is not producing the expected results in 3D.
Consider the following mesh of triangles produced with the master branch of Meshes.jl:
julia> m = simplexify(boundary(Box((0,0,0), (1,1,1))))
12 SimpleMesh{3,Float64}
8 vertices
├─ Point(0.0, 0.0, 0.0)
├─ Point(1.0, 0.0, 0.0)
├─ Point(1.0, 1.0, 0.0)
├─ Point(0.0, 1.0, 0.0)
├─ Point(0.0, 0.0, 1.0)
├─ Point(1.0, 0.0, 1.0)
├─ Point(1.0, 1.0, 1.0)
└─ Point(0.0, 1.0, 1.0)
12 elements
├─ Triangle(4, 3, 2)
├─ Triangle(4, 2, 1)
├─ Triangle(6, 5, 1)
├─ Triangle(6, 1, 2)
├─ Triangle(3, 7, 6)
⋮
├─ Triangle(4, 7, 3)
├─ Triangle(1, 5, 8)
├─ Triangle(1, 8, 4)
├─ Triangle(6, 7, 8)
└─ Triangle(6, 8, 5)
With Makie.jl v0.19 we could simply call
Mke.plot(m)
Now, the recipe is producing a 2D view of the 3D mesh.
The underlying call can be reproduced with
julia> coords = coordinates.(vertices(m))
8-element Vector{Vec3}:
Vec(0.0, 0.0, 0.0)
Vec(1.0, 0.0, 0.0)
Vec(1.0, 1.0, 0.0)
Vec(0.0, 1.0, 0.0)
Vec(0.0, 0.0, 1.0)
Vec(1.0, 0.0, 1.0)
Vec(1.0, 1.0, 1.0)
Vec(0.0, 1.0, 1.0)
julia> connec = reduce(hcat, collect.(indices.(elements(topology(m))))) |> transpose
12×3 transpose(::Matrix{Int64}) with eltype Int64:
4 3 2
4 2 1
6 5 1
6 1 2
3 7 6
3 6 2
4 8 7
4 7 3
1 5 8
1 8 4
6 7 8
6 8 5
julia> GLMake.mesh(coords, connec)
Calling the Makie.mesh directly works fine. The problem only occurs when the function is called from within the recipe.
Any idea of what may be happening?