VTK:读取obj文件,使用vtkMassProperties计算obj三维模型的体积和面积
2017-11-29 22:05
816 查看
#include <vtkOBJReader.h> #include <vtkTriangleFilter.h> #include <vtkSmartPointer.h> #include <vtkMassProperties.h> #include <iostream> using namespace std; int main() { vtkSmartPointer<vtkOBJReader> reader =vtkSmartPointer<vtkOBJReader>::New(); reader->SetFileName("C:\\Users\\HuangWang\\Desktop\\兔子.obj"); reader->Update(); vtkSmartPointer< vtkTriangleFilter > triangleFilter= vtkSmartPointer< vtkTriangleFilter >::New(); triangleFilter->SetInput( reader->GetOutput()); triangleFilter->Update(); vtkSmartPointer<vtkMassProperties> polygonProperties = vtkSmartPointer< vtkMassProperties >::New(); polygonProperties->SetInput(triangleFilter->GetOutput()); polygonProperties->Update(); double vol = polygonProperties->GetVolume(); double area= polygonProperties->GetSurfaceArea(); cout<<vol<<" "<<area<<endl; return 0; }
经过后续的相关测试,发现了这个类对于比较复杂的obj模型和不封闭的obj模型的几何属性计算并不是特别的精确,所以谨慎使用。
相关文章推荐
- 使用J2SE API读取Properties文件的六种方法
- 使用J2SE API读取Properties文件的六种方法
- 用Properties读取配置文件后,使用TreeMap对keys进行排序
- 使用J2SE API读取Properties文件的六种方法
- [ZT]使用J2SE API读取Properties文件的六种方法
- 解决Java读取properties文件的中文问题的新办法(不使用native2ascii.exe及其他工具)
- 使用J2SE API读取Properties文件的六种方法
- 使用帮助类读取配置文件(*.properties)
- 使用J2SE API读取Properties文件的六种方法
- 使用单例模式读取Properties文件
- 使用J2SE API读取Properties文件的六种方法
- 使用J2SE API读取Properties文件的六种方法
- 使用J2SE API读取Properties文件的六种方法
- 使用J2SE API读取Properties文件的六种方法(转)
- 使用common-configuration读取xml,properties文件
- 使用J2SE API读取Properties文件的六种方法
- 使用J2SE API读取Properties文件的六种方法
- 使用J2SE API读取Properties文件的六种方法
- 使用J2SE API读取Properties文件的六种方法
- 使用J2SE API读取Properties文件的六种方法