Class FbxMeshReader
java.lang.Object
org.episteme.core.io.AbstractResourceReader<javafx.scene.Group>
org.episteme.natural.biology.loaders.FbxMeshReader
- All Implemented Interfaces:
ResourceIO<javafx.scene.Group>, ResourceReader<javafx.scene.Group>
FBX loader for JavaFX 3D using the jfbx library.
Parses binary FBX files and creates JavaFX TriangleMesh objects. Supports basic geometry (Vertices, PolygonVertexIndex).
- Since:
- 1.0
- Author:
- Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionReturns the category for grouping.Returns a short description of this resource handler.Returns a long description of this resource handler.protected MiniCatalog<javafx.scene.Group> getName()Returns the display name of this resource handler.Returns the base path where this resource is located.Class<javafx.scene.Group> Returns the type of resource.String[]Returns the supported versions of the format this reader/writer handles.static javafx.scene.GroupLoads an FBX model from a file.static javafx.scene.GroupLoads an FBX model from a URL (resource or http).protected javafx.scene.GrouploadFromSource(String id) static javafx.scene.GrouploadResource(String resourcePath) Loads an FBX model from classpath resources.Methods inherited from class AbstractResourceReader
clearCache, getSampleDataPath, isUsingFallback, load, loadAll, loadAllFromSource, loadFromFallback, loadFromInputStream, setCacheEnabledMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ResourceIO
getExpectedResourceFiles, getSupportedExtensions, isFileBased, isOutputMethods inherited from interface ResourceReader
isInput
-
Constructor Details
-
FbxMeshReader
public FbxMeshReader()
-
-
Method Details
-
getSupportedVersions
Description copied from interface:ResourceIOReturns the supported versions of the format this reader/writer handles.Each implementation MUST override this method to declare which versions of the underlying format are supported. The returned array should contain version strings in the format's standard notation (e.g., "3.0", "2.1", "Level 3 Version 2").
Examples:
- MathML: {"3.0", "2.0"}
- SBML: {"Level 3 Version 2", "Level 3 Version 1", "Level 2 Version 5"}
- PhyloXML: {"1.10", "1.00"}
- Returns:
- array of supported version strings, never null (empty array if version-agnostic)
-
getResourcePath
Description copied from interface:ResourceIOReturns the base path where this resource is located. -
getResourceType
Description copied from interface:ResourceIOReturns the type of resource. -
loadFromSource
- Specified by:
loadFromSourcein classAbstractResourceReader<javafx.scene.Group>- Throws:
Exception
-
getMiniCatalog
- Overrides:
getMiniCatalogin classAbstractResourceReader<javafx.scene.Group>
-
load
Loads an FBX model from a file.- Throws:
IOException
-
load
Loads an FBX model from a URL (resource or http). For URL resources, we first copy to a temp file since jfbx requires a file path.- Throws:
IOException
-
loadResource
Loads an FBX model from classpath resources.- Throws:
IOException
-
getCategory
Description copied from interface:ResourceIOReturns the category for grouping. MUST be implemented with I18N support.- Returns:
- the category name
-
getName
Description copied from interface:ResourceIOReturns the display name of this resource handler. MUST be implemented with I18N support.- Returns:
- the display name
-
getDescription
Description copied from interface:ResourceIOReturns a short description of this resource handler. MUST be implemented with I18N support.- Returns:
- the description
-
getLongDescription
Description copied from interface:ResourceIOReturns a long description of this resource handler. MUST be implemented with I18N support.- Returns:
- the long description
-