I have tried using PolyArea
. Here is MME:
ring1=Meshes.Ring([(cos(t),sin(t),0) for t in 0.1:0.1:2pi])
ring2=Meshes.Ring([(2cos(t),2sin(t),0) for t in 0.1:0.1:2pi])
annulus = PolyArea([ring2, ring1])
discretize(annulus, FanTriangulation())
with error:
ERROR: DimensionMismatch: Sizes (Size(3,), Size(2,)) of input arrays do not match
Stacktrace:
[1] _throw_size_mismatch(::Meshes.Vec3, ::Vararg{Any})
@ StaticArrays C:\Users\Administrator\.julia\packages\StaticArrays\Uc4hE\src\traits.jl:113
[2] same_size
@ C:\Users\Administrator\.julia\packages\StaticArrays\Uc4hE\src\traits.jl:107
[inlined]
[3] macro expansion
@ C:\Users\Administrator\.julia\packages\StaticArrays\Uc4hE\src\mapreduce.jl:74 [inlined]
[4] _map
@ C:\Users\Administrator\.julia\packages\StaticArrays\Uc4hE\src\mapreduce.jl:40 [inlined]
[5] map
@ C:\Users\Administrator\.julia\packages\StaticArrays\Uc4hE\src\mapreduce.jl:37 [inlined]
[6] +
@ C:\Users\Administrator\.julia\packages\StaticArrays\Uc4hE\src\linalg.jl:12 [inlined]
[7] +(A::Meshes.Point3, v::Meshes.Vec2) @ Meshes C:\Users\Administrator\.julia\packages\Meshes\1sXKx\src\primitives\point.jl:95
[8] bridge(rings::Vector{Meshes.Ring{…}}, rinds::Vector{Vector{…}}, δ::Float64)
@ Meshes C:\Users\Administrator\.julia\packages\Meshes\1sXKx\src\transforms\bridge.jl:81
[9] apply
@ C:\Users\Administrator\.julia\packages\Meshes\1sXKx\src\transforms\bridge.jl:30 [inlined]
[10] discretize(polygon::Meshes.PolyArea{3, Float64, Meshes.Ring{…}}, method::Meshes.FanTriangulation)
@ Meshes C:\Users\Administrator\.julia\packages\Meshes\1sXKx\src\discretization.jl:52
[11] top-level scope
@ e:\Mesh the manifolds\MeshRing.jl:16