计算物体的内部体积

问题描述 投票:0回答:0

我想找到容器的内部体积,例如玻璃杯。我想知道这个玻璃杯能装多少水。

我尝试的方法是 - 在玻璃周围创建一个边界框并获取边界框的体积,然后通过将玻璃转换为网格模型来找到玻璃的体积。因此,从边界框体积中减去网格体积,得到体积。但它并不准确。

容器形状不规则时,体积不准确

我使用了 trimesh 库,它有很多属性可以找到体积、面积、质心等

代码-

import numpy as np
import trimesh
mesh = trimesh.load('your_file.stl') # in stl format
print(mesh.volume)
mesh.bounding_box.extents
mesh.bounding_box_oriented.primitive.extents
mesh.bounding_box_oriented.primitive.transform
a=mesh.bounding_box_oriented.volume
b=mesh.volume
difference=a-b
print(mesh.bounding_box_oriented.volume,mesh.volume,difference)

任何解决问题的建议都会很有帮助。

python 3d mesh volume stl-format
© www.soinside.com 2019 - 2024. All rights reserved.