API Overview
Here are the most important classes start out making visualizations with C# and ABR. Check out the Creating a C# ABR visualization tutorial for more examples.
ABREngine
Class | Importance |
---|---|
ABREngine | This is the main ABR Engine class. ABREngine is a singleton, meaning that you will most often access an instance of this class with ABREngine.Instance . |
ABRConfig | Main configuration class for ABR. Create an ABRConfig using Assets > Create > ABR > ABR Configuration and modify as necessary. |
ABRStateParser | Main class for serializing and deserializing ABR states |
Data
Data Loading
Class | Importance |
---|---|
DataManager | Main "manager" object where data are stored. Single instance of this class is ABREngine.Instance.Data. |
KeyData | High-level representation of geometric data. See Key Data. |
RawDataset | Low-level representation of geometric data. See Basic Terminology |
RawDatasetAdapter | Factory used to create ABR-compatible raw datasets from existing data you have (e.g., creating a surface out of a bunch of @UnityEngine.Vector3 s) |
MediaDataLoader | Load data from the media folder |
ResourcesDataLoader | Load data from any Unity Resources folder - useful for bundling data with a project. |
HttpDataLoader | Load data from a network (http) source (must be set up with ABR data server) |
Data Variables and Ranges
Class | Importance |
---|---|
ScalarDataVariable | Scalar variables (single value at each point in the dataset) |
VectorDataVariable | Vector variables (3 values at each point in the dataset) |
@IVLab.ABREngine.DataRange | Representation of a data range (min/max, only meaningful for scalar variables |
VisAssets
Class | Importance |
---|---|
VisAssetManager | Main "manager" object where VisAssets are stored. Single instance of this class is ABREngine.Instance.VisAssets. |
VisAssetLoader | Responsible for loading visassets, deciding which VisAsset fetcher to use, and error handling |
VisAsset | Every VisAsset is one of these |
ColormapVisAsset | Imported from a colormap.xml and have a GetGradient() method to get a Texture2D |
LineTextureVisAsset | Imported from a horizontal.png texture, have a GetTexture() method to get a Texture2D |
SurfaceTextureVisAsset | Imported from a texture.png texture, have a GetTexture() method to get a Texture2D |
GlyphVisAsset | LOD-Separated, imported from a LOD1.obj and normal-mapped with a LOD1.png . |
VisAssetGradient | Gradients of multiple VisAssets (applies to every VisAsset type except Colormaps) |
Data Impressions
Class | Importance |
---|---|
DataImpression | Main class that all data impressions inherit from |
SimpleSurfaceDataImpression | Data impression for surfaces. Takes key data type "Surface" |
SimpleLineDataImpression | Data impression for ribbon-formed lines. Takes key data type "Lines" |
SimpleGlyphDataImpression | Data impression for glyphs. Takes key data type "Points" |
SimpleVolumeDataImpression | Data impression for volume data. Takes key data type "Volume" (a structured grid) |
InstancedSurfaceDataImpression | Data impression for a series of instanced surfaces (same geometry repeated over many different transforms) |