neuray API Programmer's Manual

mi::neuraylib::IVolume_data Class Reference

[Miscellaneous]

Description

Interface representing a volume data set. IVolume_data represents a set of volume coefficients in three dimensional space. It is conceptually similar to a 3d texture.

Public Member Functions

virtual Sint32 export_file( const char* filename, const char* selector = 0) const =0
Writes the loaded data set to the provided path. More...
virtual Voxel_block_struct get_data_bounds() const =0
Returns the bounding box stored in the current data set. More...
virtual const char* get_filename() const =0
Returns the resolved file name of the file containing the volume data. More...
virtual const char* get_original_filename() const =0
Returns the unresolved file as passed to reset_file(). More...
virtual const char* get_selector() const =0
Returns the name of the file's data selector selected via reset_file(). More...
virtual Float32_4_4_struct get_transform() const =0
Returns the internal transformation from voxel space to world space. More...
virtual const IArraylist_contents( const char* path) =0
Lists the data sets contained in a file. More...
virtual const IArraylist_contents( IReader* reader, const char* format) =0
Lists the data sets contained in a file. More...
virtual Sint32 reset_file( const char* filename, const char* selector = 0) =0
Sets the volume data to a file identified by filename. More...
virtual Sint32 reset_reader( IReader* reader, const char* format, const char* selector = 0) =0
Sets the volume data to the data provided by a reader. More...

Member Functions

virtual Sint32 mi::​neuraylib::​IVolume_data::export_file( const char* filename, const char* selector = 0) const [pure virtual]

Writes the loaded data set to the provided path. Data must have been loaded via reset_file() or reset_reader(). If provided, the data will be stored under selector.

Returns

  • 0: Success.
  • -1: Invalid filename
  • -2: No data was loaded via reset_file() or reset_reader()
  • -4: Other failure to export data.

virtual Voxel_block_struct mi::​neuraylib::​IVolume_data::get_data_bounds() const [pure virtual]

Returns the bounding box stored in the current data set. This function returns the bounds of the data grid contained in the file. Bounds are in voxel space and thus integer coordinates. The transformation from voxel space to world space may be obtained by calling get_transform().

This function returns an empty box when no file was loaded, either because reset_file was not yet called, or because loading failed.

See also:

get_transform()

virtual const char* mi::​neuraylib::​IVolume_data::get_filename() const [pure virtual]

Returns the resolved file name of the file containing the volume data. This function returns NULL if there is no file associated with the data, e.g., after default construction, or failures to resolve the file name passed to reset_file().

See also:

get_original_filename()

virtual const char* mi::​neuraylib::​IVolume_data::get_original_filename() const [pure virtual]

Returns the unresolved file as passed to reset_file(). This function returns NULL after default construction.

See also:

get_filename()

virtual const char* mi::​neuraylib::​IVolume_data::get_selector() const [pure virtual]

Returns the name of the file's data selector selected via reset_file(). This function returns NULL after default construction.

virtual Float32_4_4_struct mi::​neuraylib::​IVolume_data::get_transform() const [pure virtual]

Returns the internal transformation from voxel space to world space. This function returns the volume file's internal transformation from voxel space to world space, or identity if no such transform is available.

See also:

get_data_bounds()

virtual const IArray* mi::​neuraylib::​IVolume_data::list_contents( const char* path) [pure virtual]

Lists the data sets contained in a file. This function inspects the file referenced by path and provides information about its contents. This information may be used to inform the decision of which selector to use with the reset_file() and reset_reader() functions.

Returns

an array of IVolume_info , or nullptr if errors are encountered.

virtual const IArray* mi::​neuraylib::​IVolume_data::list_contents( IReader* reader, const char* format) [pure virtual]

Lists the data sets contained in a file.

See also:

list_contents( const char*)

reset_reader()

Returns

an array of IVolume_info , or nullptr if errors are encountered.

virtual Sint32 mi::​neuraylib::​IVolume_data::reset_file( const char* filename, const char* selector = 0) [pure virtual]

Sets the volume data to a file identified by filename. The optional selector string encodes the name of the data set (grid) within the given file. If no selector is provided a default is selected automatically.

Returns

  • 0: Success.
  • -1: Invalid parameters (NULL pointer).
  • -3: No plugin found to handle the file.
  • -4: Failure to resolve the given filename, e.g., the file does not exist.
  • -7: The plugin failed to import the file.

virtual Sint32 mi::​neuraylib::​IVolume_data::reset_reader( IReader* reader, const char* format, const char* selector = 0) [pure virtual]

Sets the volume data to the data provided by a reader.

Parameters

reader
The reader that provides the data for the volume. The reader needs to support absolute access.
format
The file format of the volume data.
selector
The selector. If none is provided a default is selected automatically.

Returns

  • 0: Success.
  • -1: Invalid parameters (NULL pointer).
  • -3: No plugin found to handle the file.
  • -6: The reader does not support absolute access.
  • -7: The plugin failed to import the data.