bool D3MFExporter::export3DModel() { mModelOutput.clear(); writeHeader(); mModelOutput << "<" << XmlTag::model << " " << XmlTag::model_unit << "=\"millimeter\"" << "xmlns=\"http://schemas.microsoft.com/3dmanufacturing/core/2015/02\">" << std::endl; mModelOutput << "<" << XmlTag::resources << ">"; mModelOutput << std::endl; writeObjects(); mModelOutput << "</" << XmlTag::resources << ">"; mModelOutput << std::endl; writeBuild(); mModelOutput << "</" << XmlTag::model << ">\n"; OpcPackageRelationship *info = new OpcPackageRelationship; info->id = "rel0"; info->target = "/3D/3DModel.model"; info->type = XmlTag::PACKAGE_START_PART_RELATIONSHIP_TYPE; mRelations.push_back( info ); writeModelToArchive( "3D", "3DModel.model" ); mModelOutput.flush(); return true; }
void CModelWriterNode100_Model::writeToXML() { std::wstring sLanguage = m_pModel->getLanguage(); writeStartElementWithNamespace(XML_3MF_ELEMENT_MODEL, PACKAGE_XMLNS_100); writeStringAttribute(XML_3MF_ATTRIBUTE_MODEL_UNIT, m_pModel->getUnitString()); writeConstPrefixedStringAttribute(XML_3MF_ATTRIBUTE_PREFIX_XML, XML_3MF_ATTRIBUTE_MODEL_LANG, sLanguage.c_str()); writeConstPrefixedStringAttribute(XML_3MF_ATTRIBUTE_XMLNS, XML_3MF_NAMESPACEPREFIX_MATERIAL, XML_3MF_NAMESPACE_MATERIALSPEC); writeMetaData(); writeResources(); writeBuild(); writeFullEndElement(); }