def test_volume_polyhedron(polyhedron, volume): if volume is None: L = length_vector(subtract_vectors( polyhedron.vertices[0], polyhedron.vertices[1])) volume = L * L * L V = volume_polyhedron(polyhedron) assert V == pytest.approx(volume, 0.001)
def test_volume_polyhedron(polyhedron, volume): if volume is None: L = length_vector( subtract_vectors(polyhedron.vertices[0], polyhedron.vertices[1])) volume = L * L * L V = volume_polyhedron(polyhedron) assert close(V, volume)
def tet_volume(tet_end_points): assert len(tet_end_points) == 4, 'input points must be four!' verts, faces = tet_from_points(tet_end_points) if verts and faces: return volume_polyhedron((verts, faces)) else: return None
def volume(self): """Compute the volume of the block. Returns ------- float The volume of the block. """ vertices = [self.vertex_coordinates(key) for key in self.vertices()] faces = [self.face_vertices(fkey) for fkey in self.faces()] v = volume_polyhedron((vertices, faces)) return v