Supporta i file MTL durante l'esportazione di OBJ

Come supportare i file MTL durante l’esportazione di OBJ

Problema: Come supportare i file MTL durante l’esportazione di OBJ.

Suggerimenti: Per fare ciò, puoi utilizzare il file dei materiali durante l’esportazione in formato OBJ. Di seguito è riportato un esempio. In allegato ci sono i file di risultato (ColorImage.obj e ColorImage.mtl) e il file sorgente (ColorImage.dwf).

Esempio:

string fileName = "ColorImage";
string file = string.Format("{0}.dwf", fileName);
string outFile = string.Format("{0}.obj", fileName);
string mtlFileName = string.Format("{0}.mtl", fileName);
using (FileStream inStream = new FileStream(file, FileMode.Open))
using (Image image = Image.Load(inStream))
using (FileStream stream = new FileStream(outFile, FileMode.Create))
using (var mtlStream = new FileStream(mtlFileName, FileMode.Create))
{
ObjOptions options = new ObjOptions();
options.MtlFileName = mtlFileName;
options.MtlFileStream = mtlStream;
options.VectorRasterizationOptions = new CadRasterizationOptions { DrawType = CadDrawTypeMode.UseObjectColor };
image.Save(stream, options);
}