UsdSaveOptions
Inheritance: java.lang.Object, com.aspose.threed.IOConfig, com.aspose.threed.SaveOptions
public class UsdSaveOptions extends SaveOptions
Save options for USD/USDZ formats.
Constructors
Constructor | Description |
---|---|
UsdSaveOptions() | Initialize a new UsdSaveOptions with FileFormat.USD format |
UsdSaveOptions(FileFormat fileFormat) | Initialize a new UsdSaveOptions with specified USD/USDZ format. |
Methods
Method | Description |
---|---|
equals(Object arg0) | |
getClass() | |
getEncoding() | Gets the default encoding for text-based files. |
getExportMetaData() | Export node’s properties through USD’s customData field. |
getExportTextures() | Try to copy textures used in scene to output directory. |
getFileFormat() | Gets the file format that specified in current Save/Load option. |
getFileName() | The file name of the exporting/importing scene. |
getFileSystem() | Allow user to handle how to manage the external dependencies during load/save. |
getFileSystemFactory() | Gets the factory class for FileSystem. |
getLookupPaths() | Some files like OBJ depends on external file, the lookup paths will allows Aspose.3D to look for external file to load. |
getMaterialConverter() | Custom converter to convert the geometry’s material to PBR material If this is unassigned, USD exporter will automatically convert the standard material to PBR material. |
getPrimitiveToMesh() | Convert the primitive entities to mesh during the export. |
hashCode() | |
notify() | |
notifyAll() | |
setEncoding(Charset value) | Sets the default encoding for text-based files. |
setExportMetaData(boolean value) | Export node’s properties through USD’s customData field. |
setExportTextures(boolean value) | Try to copy textures used in scene to output directory. |
setFileName(String value) | The file name of the exporting/importing scene. |
setFileSystem(FileSystem value) | Allow user to handle how to manage the external dependencies during load/save. |
setFileSystemFactory(FileSystemFactory value) | Sets the factory class for FileSystem. |
setLookupPaths(ArrayList | Some files like OBJ depends on external file, the lookup paths will allows Aspose.3D to look for external file to load. |
setMaterialConverter(MaterialConverter value) | Custom converter to convert the geometry’s material to PBR material If this is unassigned, USD exporter will automatically convert the standard material to PBR material. |
setPrimitiveToMesh(boolean value) | Convert the primitive entities to mesh during the export. |
toString() | |
wait() | |
wait(long arg0) | |
wait(long arg0, int arg1) |
UsdSaveOptions()
public UsdSaveOptions()
Initialize a new UsdSaveOptions with FileFormat.USD format
UsdSaveOptions(FileFormat fileFormat)
public UsdSaveOptions(FileFormat fileFormat)
Initialize a new UsdSaveOptions with specified USD/USDZ format.
Parameters:
Parameter | Type | Description |
---|---|---|
fileFormat | FileFormat |
equals(Object arg0)
public boolean equals(Object arg0)
Parameters:
Parameter | Type | Description |
---|---|---|
arg0 | java.lang.Object |
Returns: boolean
getClass()
public final native Class<?> getClass()
Returns: java.lang.Class
getEncoding()
public Charset getEncoding()
Gets the default encoding for text-based files. Default value is null which means the importer/exporter will decide which encoding to use.
Returns: java.nio.charset.Charset - the default encoding for text-based files. Default value is null which means the importer/exporter will decide which encoding to use.
getExportMetaData()
public boolean getExportMetaData()
Export node’s properties through USD’s customData field.
Returns: boolean - Export node’s properties through USD’s customData field.
getExportTextures()
public boolean getExportTextures()
Try to copy textures used in scene to output directory.
Returns: boolean - Try to copy textures used in scene to output directory.
getFileFormat()
public FileFormat getFileFormat()
Gets the file format that specified in current Save/Load option.
Returns: FileFormat - the file format that specified in current Save/Load option.
getFileName()
public String getFileName()
The file name of the exporting/importing scene. This is optional, but useful when serialize external assets like OBJ’s material.
Returns: java.lang.String - The file name of the exporting/importing scene. This is optional, but useful when serialize external assets like OBJ’s material.
getFileSystem()
public FileSystem getFileSystem()
Allow user to handle how to manage the external dependencies during load/save.
Returns: FileSystem - Allow user to handle how to manage the external dependencies during load/save. Example: The default FileSystem is LocalFileSystem, it is not safe in environment like server side, But you can override the file system access by specifying a different implementation. Aspose.3D provides different FileSystem implementation like:
- Memory-based file system
- Directory-based file system
- Dummy file system
- Zip file system
And you can also use your own implementation.
Scene scene = new Scene();
var material = new PhongMaterial();
var boxNode = scene.getRootNode().createChildNode(new Box());
boxNode.setMaterial(material);
var opt = new ObjSaveOptions();
var memFs = new HashMap<string, MemoryStream>();
opt.setFileSystem(FileSystem.createMemoryFileSystem(memFs));
opt.setFileName("output.obj");
try(var output = new ByteArrayOutputStream()) {
scene.save(output, opt);
//The material will be written to variable memFs named output.mtl
var materialInBytes = memFs["output.mtl"].toArray();
}
getFileSystemFactory()
public static FileSystemFactory getFileSystemFactory()
Gets the factory class for FileSystem. The default factory will create com.aspose.threed.LocalFileSystem which is not suitable for server environment.
Returns: FileSystemFactory - the factory class for FileSystem. The default factory will create com.aspose.threed.LocalFileSystem which is not suitable for server environment. Example: The default FileSystem in SaveOptions/LoadOptions is directory-based file system, You can override the default implementation by specify it through IOConfig.FileSystemFactory:
IOConfig.setFileSystemFactory(new FileSystemFactory() {
@Override
public FileSystem call() {
return FileSystem.createDummyFileSystem();
}
});
Scene scene = new Scene();
var material = new PhongMaterial();
var boxNode = scene.getRootNode().createChildNode(new Box());
boxNode.setMaterial(material);
//opt.FileSystem would be dummy file system now
var opt = new ObjSaveOptions();
scene.Save("output.obj", opt);
//the material file output.mtl will not be written to any places because we've configured a dummy file system as default implementation.
getLookupPaths()
public ArrayList<String> getLookupPaths()
Some files like OBJ depends on external file, the lookup paths will allows Aspose.3D to look for external file to load.
Returns: java.util.ArrayList<java.lang.String> - Some files like OBJ depends on external file, the lookup paths will allows Aspose.3D to look for external file to load. Example: The following code shows how to manually specify the look up textures, so the importer can find
var opt = new ObjLoadOptions();
//Specify the lookup paths, so the textures can be located.
opt.getLookupPaths().add("textures");
var scene = Scene.fromFile("input.obj", opt);
scene.save("output.glb");
getMaterialConverter()
public MaterialConverter getMaterialConverter()
Custom converter to convert the geometry’s material to PBR material If this is unassigned, USD exporter will automatically convert the standard material to PBR material. Default value is null
Returns: MaterialConverter - Custom converter to convert the geometry’s material to PBR material If this is unassigned, USD exporter will automatically convert the standard material to PBR material. Default value is null
getPrimitiveToMesh()
public boolean getPrimitiveToMesh()
Convert the primitive entities to mesh during the export. Or directly encode the primitives to the output file(will use Aspose’s extension definition for unofficial primitives like Dish, Torus) Default value is true.
Returns: boolean - Convert the primitive entities to mesh during the export. Or directly encode the primitives to the output file(will use Aspose’s extension definition for unofficial primitives like Dish, Torus) Default value is true.
hashCode()
public native int hashCode()
Returns: int
notify()
public final native void notify()
notifyAll()
public final native void notifyAll()
setEncoding(Charset value)
public void setEncoding(Charset value)
Sets the default encoding for text-based files. Default value is null which means the importer/exporter will decide which encoding to use.
Parameters:
Parameter | Type | Description |
---|---|---|
value | java.nio.charset.Charset | New value |
setExportMetaData(boolean value)
public void setExportMetaData(boolean value)
Export node’s properties through USD’s customData field.
Parameters:
Parameter | Type | Description |
---|---|---|
value | boolean | New value |
setExportTextures(boolean value)
public void setExportTextures(boolean value)
Try to copy textures used in scene to output directory.
Parameters:
Parameter | Type | Description |
---|---|---|
value | boolean | New value |
setFileName(String value)
public void setFileName(String value)
The file name of the exporting/importing scene. This is optional, but useful when serialize external assets like OBJ’s material.
Parameters:
Parameter | Type | Description |
---|---|---|
value | java.lang.String | New value |
setFileSystem(FileSystem value)
public void setFileSystem(FileSystem value)
Allow user to handle how to manage the external dependencies during load/save.
Parameters:
Parameter | Type | Description |
---|---|---|
value | FileSystem | New value Example: The default FileSystem is LocalFileSystem, it is not safe in environment like server side, But you can override the file system access by specifying a different implementation. Aspose.3D provides different FileSystem implementation like: |
- Memory-based file system
- Directory-based file system
- Dummy file system
- Zip file system
And you can also use your own implementation.
Scene scene = new Scene();
var material = new PhongMaterial();
var boxNode = scene.getRootNode().createChildNode(new Box());
boxNode.setMaterial(material);
var opt = new ObjSaveOptions();
var memFs = new HashMap<string, MemoryStream>();
opt.setFileSystem(FileSystem.createMemoryFileSystem(memFs));
opt.setFileName("output.obj");
try(var output = new ByteArrayOutputStream()) {
scene.save(output, opt);
//The material will be written to variable memFs named output.mtl
var materialInBytes = memFs["output.mtl"].toArray();
}
``` |
### setFileSystemFactory(FileSystemFactory value) {#setFileSystemFactory-com.aspose.threed.FileSystemFactory-}
public static void setFileSystemFactory(FileSystemFactory value)
Sets the factory class for FileSystem. The default factory will create com.aspose.threed.LocalFileSystem which is not suitable for server environment.
**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| value | [FileSystemFactory](../../com.aspose.threed/filesystemfactory) | New value **Example:** The default FileSystem in SaveOptions/LoadOptions is directory-based file system, You can override the default implementation by specify it through IOConfig.FileSystemFactory:
IOConfig.setFileSystemFactory(new FileSystemFactory() { @Override public FileSystem call() { return FileSystem.createDummyFileSystem(); } });
Scene scene = new Scene();
var material = new PhongMaterial();
var boxNode = scene.getRootNode().createChildNode(new Box());
boxNode.setMaterial(material);
//opt.FileSystem would be dummy file system now
var opt = new ObjSaveOptions();
scene.Save("output.obj", opt);
//the material file output.mtl will not be written to any places because we've configured a dummy file system as default implementation.
### setLookupPaths(ArrayList<String> value) {#setLookupPaths-java.util.ArrayList-java.lang.String--}
public void setLookupPaths(ArrayList
Some files like OBJ depends on external file, the lookup paths will allows Aspose.3D to look for external file to load.
**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| value | java.util.ArrayList<java.lang.String> | New value **Example:** The following code shows how to manually specify the look up textures, so the importer can find
var opt = new ObjLoadOptions(); //Specify the lookup paths, so the textures can be located. opt.getLookupPaths().add(“textures”); var scene = Scene.fromFile(“input.obj”, opt); scene.save(“output.glb”);
### setMaterialConverter(MaterialConverter value) {#setMaterialConverter-com.aspose.threed.MaterialConverter-}
public void setMaterialConverter(MaterialConverter value)
Custom converter to convert the geometry's material to PBR material If this is unassigned, USD exporter will automatically convert the standard material to PBR material. Default value is null
**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| value | [MaterialConverter](../../com.aspose.threed/materialconverter) | New value |
### setPrimitiveToMesh(boolean value) {#setPrimitiveToMesh-boolean-}
public void setPrimitiveToMesh(boolean value)
Convert the primitive entities to mesh during the export. Or directly encode the primitives to the output file(will use Aspose's extension definition for unofficial primitives like Dish, Torus) Default value is true.
**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| value | boolean | New value |
### toString() {#toString--}
public String toString()
**Returns:**
java.lang.String
### wait() {#wait--}
public final void wait()
### wait(long arg0) {#wait-long-}
public final void wait(long arg0)
**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| arg0 | long | |
### wait(long arg0, int arg1) {#wait-long-int-}
public final void wait(long arg0, int arg1)
**Parameters:**
| Parameter | Type | Description |
| --- | --- | --- |
| arg0 | long | |
| arg1 | int | |