9#include "Bindings/Cpp/lib3mf_implicit.hpp"
18namespace DataHandling {
38 Lib3MF::PWrapper wrapper = Lib3MF::CWrapper::loadLibrary();
39 model = wrapper->CreateModel();
41 void LoadFile(std::string filename);
42 void readMeshObjects(std::vector<MeshObject_sptr> &meshObjects,
MeshObject_sptr &sample);
43 void writeMeshObjects(std::vector<const Geometry::MeshObject *> meshObjects,
MeshObject_const_sptr &sample,
45 void saveFile(std::string filename);
50 MeshObject_sptr loadMeshObject(Lib3MF::PMeshObject meshObject, sLib3MFTransform buildTransform);
51 void readMeshObject(std::vector<MeshObject_sptr> &meshObjects,
MeshObject_sptr &sample, uint32_t objectResourceID,
52 sLib3MFTransform transform);
53 void readComponents(std::vector<MeshObject_sptr> &meshObjects,
MeshObject_sptr &sample, uint32_t objectResourceID,
54 sLib3MFTransform transform);
56 void AddBaseMaterial(std::string materialName,
int materialColor,
int &resourceID, Lib3MF_uint32 &materialPropertyID);
57 void setMaterialOnObject(std::string objectName, std::string materialName,
int materialColor);
58 int generateRandomColor();
Class to load and save .3mf files .3mf format is a 3D manufacturing format for storing mesh descripti...
std::shared_ptr< Geometry::MeshObject > MeshObject_sptr
Typdef for a shared pointer.
std::shared_ptr< const Geometry::MeshObject > MeshObject_const_sptr
Typdef for a shared pointer to a const object.
Helper class which provides the Collimation Length for SANS instruments.