Skip to content

Commit cf3f925

Browse files
committed
Use tolerance-aware batched check in surface-volume sampler
1 parent e10c035 commit cf3f925

1 file changed

Lines changed: 3 additions & 1 deletion

File tree

src/scenic/core/regions.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -571,7 +571,9 @@ def sampleSurfaceInVolume(intersection):
571571
raise RejectionException(f"sampling intersection of Regions {regs}")
572572

573573
points, _ = trimesh.sample.sample_surface(filtered_mesh, 20)
574-
inside = volume.mesh.contains(points)
574+
pq = trimesh.proximity.ProximityQuery(volume.mesh)
575+
signed_distances = pq.signed_distance(points)
576+
inside = signed_distances >= -volume.tolerance
575577

576578
valid_points = points[inside]
577579
if len(valid_points) > 0:

0 commit comments

Comments
 (0)