@@ -21,15 +21,6 @@ using LinearAlgebra: dot, norm
21
21
@test length (vertices (torus)) == 5532
22
22
@test length (faces (sphere)) == 1830
23
23
@test length (faces (torus)) == 5532
24
- @test for vt in vertices (sphere)
25
- d = sqrt (sum (vt .^ 2 ))
26
- if 0.001 < (d- 1 ) < 0.001
27
- continue
28
- else
29
- return false
30
- end
31
- true
32
- end
33
24
end
34
25
35
26
@@ -94,7 +85,9 @@ using LinearAlgebra: dot, norm
94
85
resolution = 0.1
95
86
sdf = SignedDistanceField (f, bounds, resolution)
96
87
97
- for algorithm in (MarchingCubes (0.5 ), MarchingTetrahedra (0.5 ))
88
+ for algorithm in (MarchingCubes (0.5 ),
89
+ MarchingTetrahedra (0.5 ),
90
+ NaiveSurfaceNets (0.5 ))
98
91
mesh = @inferred GLNormalMesh (sdf, algorithm)
99
92
# should be centered on the origin
100
93
@test mean (vertices (mesh)) ≈ [0 , 0 , 0 ] atol= 0.15 * resolution
@@ -121,6 +114,10 @@ using LinearAlgebra: dot, norm
121
114
@test_nowarn GLNormalMesh (sdf. data, MarchingTetrahedra (0.5 ))
122
115
@inferred GLNormalMesh (sdf. data, MarchingTetrahedra (0.5 ))
123
116
end
117
+ @testset " naive surface nets" begin
118
+ @test_nowarn GLNormalMesh (sdf, NaiveSurfaceNets ())
119
+ @inferred GLNormalMesh (sdf, NaiveSurfaceNets ())
120
+ end
124
121
end
125
122
126
123
@testset " mixed types" begin
@@ -169,5 +166,16 @@ using LinearAlgebra: dot, norm
169
166
@inferred (Meshing. marchingTetrahedra (Float32 .(data), Float64 (iso), Float16 (eps), Int32))
170
167
@inferred (Meshing. marchingTetrahedra (Float64 .(data), Float32 (iso), Float64 (eps), Int64))
171
168
end
169
+ @testset " Float16" begin
170
+ sdf_torus = SignedDistanceField (HyperRectangle (Vec {3,Float16} (- 2 ,- 2 ,- 2. ),
171
+ Vec {3,Float16} (4 ,4 ,4. )),
172
+ 0.1 , Float16) do v
173
+ (sqrt (v[1 ]^ 2 + v[2 ]^ 2 )- 0.5 )^ 2 + v[3 ]^ 2 - 0.25
174
+ end
175
+ @test typeof (HomogenousMesh (sdf,NaiveSurfaceNets ())) ==
176
+ HomgenousMesh{Face{4 ,Int},Point{3 ,Float16}}
177
+ m2 = HomogenousMesh (sdf,MarchingTetrahedra ())
178
+ m3 = HomogenousMesh (sdf,MarchingCubes ())
179
+ end
172
180
end
173
181
end
0 commit comments