# Makie - Quadrilater-based mesh visualization

**URL:** https://discourse.julialang.org/t/makie-quadrilater-based-mesh-visualization/62876
**Category:** Visualization
**Tags:** makie
**Created:** [June 14, 2021, 10:25am UTC](https://discourse.julialang.org/t/makie-quadrilater-based-mesh-visualization/62876 "2021-06-14T10:25:17Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![paurierap](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/paurierap/32/25232_2.png) [@paurierap](https://discourse.julialang.org/u/paurierap)
#### Post date: [June 14, 2021, 10:25am UTC](https://discourse.julialang.org/t/makie-quadrilater-based-mesh-visualization/62876/1 "2021-06-14T10:25:17Z")

</div>

Hi all,

Is there any way of plotting a mesh of quadrilaterals using `mesh` or, alternatively, some way around using other functions?

---

<div class="post-metadata">

### Author: ![ffreyer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ffreyer/32/21569_2.png) [@ffreyer](https://discourse.julialang.org/u/ffreyer)
#### Post date: [June 14, 2021, 2:42pm UTC](https://discourse.julialang.org/t/makie-quadrilater-based-mesh-visualization/62876/2 "2021-06-14T14:42:38Z")

</div>

You can define a mesh via quad faces. Those will be decomposed into triangle faces by `normal_mesh` and Makie requires those in the end.

```julia
using GeometryBasics, GLMakie

points = [Point2f0(0, 0), Point2f0(1, 0), Point2f0(0, 1), Point2f0(1, 1)]
_faces = [QuadFace(1, 2, 4, 3)]
m = normal_mesh(points, _faces)
mesh(m)

```

---

<div class="post-metadata">

### Author: ![juliohm](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/juliohm/32/215266_2.png) [@juliohm](https://discourse.julialang.org/u/juliohm)
#### Post date: [June 14, 2021, 2:54pm UTC](https://discourse.julialang.org/t/makie-quadrilater-based-mesh-visualization/62876/3 "2021-06-14T14:54:28Z")

</div>

Also take a look at MeshViz.jl if you are interested in mesh processing in general and other visualization options: [https://github.com/JuliaGeometry/MeshViz.jl](https://github.com/JuliaGeometry/MeshViz.jl)

---

<div class="post-metadata">

### Author: ![dpsanders](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/dpsanders/32/3573_2.png) [@dpsanders](https://discourse.julialang.org/u/dpsanders)
#### Post date: [June 14, 2021, 3:21pm UTC](https://discourse.julialang.org/t/makie-quadrilater-based-mesh-visualization/62876/4 "2021-06-14T15:21:32Z")

</div>

Where are those `.ply` files available?

---

<div class="post-metadata">

### Author: ![paurierap](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/paurierap/32/25232_2.png) [@paurierap](https://discourse.julialang.org/u/paurierap)
#### Post date: [June 14, 2021, 4:05pm UTC](https://discourse.julialang.org/t/makie-quadrilater-based-mesh-visualization/62876/5 "2021-06-14T16:05:58Z")

</div>

And what about visualizing the edges with `wireframe`? Thanks!

---

<div class="post-metadata">

### Author: ![ffreyer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ffreyer/32/21569_2.png) [@ffreyer](https://discourse.julialang.org/u/ffreyer)
#### Post date: [June 14, 2021, 4:20pm UTC](https://discourse.julialang.org/t/makie-quadrilater-based-mesh-visualization/62876/6 "2021-06-14T16:20:15Z")

</div>

I think you have to do that manually with something like

```julia
ls = Point2f0[]
for f in _faces
    push!(ls,
        points[f[1]], points[f[2]],
        points[f[2]], points[f[3]],
        points[f[3]], points[f[4]],
        points[f[4]], points[f[1]],
    )
end
linesegments(ls)

```

---

<div class="post-metadata">

### Author: ![juliohm](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/juliohm/32/215266_2.png) [@juliohm](https://discourse.julialang.org/u/juliohm)
#### Post date: [June 14, 2021, 4:55pm UTC](https://discourse.julialang.org/t/makie-quadrilater-based-mesh-visualization/62876/7 "2021-06-14T16:55:19Z")

</div>

They are available online, I just searched for mesh PLY download. Here are some examples:

[https://people.sc.fsu.edu/~jburkardt/data/ply/ply.html](https://people.sc.fsu.edu/~jburkardt/data/ply/ply.html)
