Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Meshing a single triangle sometimes returns an empty mesh #158

Open
ikirill opened this issue Jan 4, 2022 · 2 comments
Open

Meshing a single triangle sometimes returns an empty mesh #158

ikirill opened this issue Jan 4, 2022 · 2 comments

Comments

@ikirill
Copy link

ikirill commented Jan 4, 2022

The doc page at https://juliageometry.github.io/GeometryBasics.jl/dev/meshes/ is empty, so I'm not sure what I'm expected to do, but creating a mesh out of a single triangle sometimes works:

julia> normal_mesh(Triangle(Point(0,0,0.0),Point(1.0,0,0),Point(0,1.0,0)))
Mesh{3, Float32, Triangle}:
 Triangle(Float32[0.0, 1.0, 0.0], Float32[0.0, 0.0, 0.0], Float32[1.0, 0.0, 0.0])

and sometimes doesn't:

julia> ϕ = (sqrt(5)+1)/2
1.618033988749895
julia> p,q,r = Point(ϕ,0,+1),Point(1,ϕ,0),Point(ϕ,0,-1)
([1.618033988749895, 0.0, 1.0], [1.0, 1.618033988749895, 0.0], [1.618033988749895, 0.0, -1.0])
julia> normal_mesh(Triangle(p,q,r))
Mesh{3, Float64, Triangle}

I was trying to follow the MeshCat.jl's tutorial, and I got this issue while trying to draw a flat triangle.

@sjkelly
Copy link
Member

sjkelly commented Jan 5, 2022

Can you link the MeshCat.jl tutorial? I think MeshCat.jl is on GeometryTypes :/

@SimonDanisch
Copy link
Member

I debugged this a bit, it's some weirdness in this constructor:
https://github.com/JuliaGeometry/GeometryBasics.jl/blob/master/src/meshes.jl#L91
faces returns nothing, and therefore it tries to triangulate the triangle 😅 I guess the fix would be to implement faces(::Triangle) to return [GLTriangleFace(1, 2, 3)] (or 0, 1, 2)...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants