• Home
  • Manual
  • API Documentation
Search Results for

    Show / Hide Table of Contents
      • ABRFilterExample
      • ABRQueryExample
      • ABRSpaceConvertExample
      • BackgroundColor
      • DebugDraw
      • DisableABRLights
      • GenerateDataAndUseStyle
      • Grabbable
      • Grabber
      • HideShowMenu
      • LightEditor
      • LightEditorTile
      • PerformanceEnhancer
      • SVScreenshot
    • IVLab.ABREngine
      • ABRConfig
      • ABRConfig.Consts
      • ABRConfig.GroupToDataMatrixOverrideFields
      • ABRDataContainer
      • ABREngine
      • ABREngine.StateChangeDelegate
      • ABRInputAttribute
      • ABRInputGenre
      • ABRInputIndexerModule
      • ABRLight
      • ABRLightManager
      • ABRPlateType
      • ABRServer
      • ABRStateParser
      • AnglePrimitive
      • BooleanPrimitive
      • ColormapVisAsset
      • DataImpression
      • DataImpressionGroup
      • DataManager
      • DataPath
      • DataPath.DataPathType
      • DataPoint
      • DataRange<T>
      • DataTopology
      • Dataset
      • FilePathVisAssetFetcher
      • FloatPrimitive
      • GlyphGradient
      • GlyphVisAsset
      • GradientBlendMap
      • HttpDataLoader
      • HttpStateFileLoader
      • HttpVisAssetFetcher
      • IABRInput
      • IABRStateLoader
      • IColormapVisAsset
      • ICoordSpaceConverter
      • IDataAccessor
      • IDataImpressionRenderInfo
      • IDataLoader
      • IDataVariable<T>
      • IFloatPrimitive
      • IGlyphVisAsset
      • IHasDataset
      • IHasKeyData
      • IIntegerPrimitive
      • IKeyDataRenderInfo
      • ILineTextureVisAsset
      • IPrimitive
      • IPrimitiveGradient
      • ISurfaceTextureVisAsset
      • ITextureGradient
      • IVisAsset
      • IVisAssetFetcher
      • IVisAssetGradient<T>
      • IVolumeCoordSpaceConverter
      • IVolumeDataAccessor
      • InstancedMeshRenderer
      • InstancedSurfaceDataImpression
      • IntegerPrimitive
      • KeyData
      • LengthPrimitive
      • LineKeyData
      • LineTextureGradient
      • LineTextureVisAsset
      • MediaDataLoader
      • Notifier
      • PathStateFileLoader
      • PercentPrimitive
      • PointKeyData
      • PrimitiveGradient
      • RawABRInput
      • RawDataset
      • RawDataset.BinaryData
      • RawDataset.JsonHeader
      • RawDatasetAdapter
      • RawPrimitiveGradient
      • RawVisAssetGradient
      • RenderHints
      • ResourceStateFileLoader
      • ResourceVisAssetFetcher
      • ResourcesDataLoader
      • ScalarDataVariable
      • SerializableFloatArray
      • SerializableVectorArray
      • SimpleGlyphDataImpression
      • SimpleLineDataImpression
      • SimpleLineRenderInfo
      • SimpleSurfaceDataImpression
      • SimpleSurfaceRenderInfo
      • SimpleVolumeDataImpression
      • StateLocalVisAssetFetcher
      • SurfaceKeyData
      • SurfaceTextureGradient
      • SurfaceTextureVisAsset
      • TextStateFileLoader
      • TypeExtentions
      • UnityObjectSerializer
      • UpdateLevel
      • VectorDataVariable
      • VisAsset
      • VisAssetGradient
      • VisAssetLoader
      • VisAssetManager
      • VolumeKeyData
    • IVLab.ABREngine.Examples
      • CSVToPoints
      • CreateDataset
      • InteractiveState
      • MtStHelensData
      • MtStHelensVisDriver
    • IVLab.ABREngine.ExtensionMethods
      • DirectoryInfoExtensions
      • ScriptableObjectExtensions
    • IVLab.ABREngine.Legends
      • ABRLegend
      • ABRLegendEntry
      • ABRLegendEntry.Label
      • ABRLegendGeometry

    Class SimpleGlyphDataImpression

    A "Glyphs" data impression that uses hand-sculpted geometry to depict point data.

    Inheritance
    object
    Object
    Component
    Behaviour
    MonoBehaviour
    DataImpression
    SimpleGlyphDataImpression
    Implements
    IHasDataset
    IHasKeyData
    ICoordSpaceConverter
    Namespace: IVLab.ABREngine
    Assembly: IVLab.ABREngine.Runtime.dll
    Syntax
    [ABRPlateType("Glyphs")]
    public class SimpleGlyphDataImpression : DataImpression, IHasDataset, IHasKeyData, ICoordSpaceConverter
    Examples

    An example of creating a single glyph data impression and setting its colormap, color variable, and glyph could be:

    SimpleGlyphDataImpression gi = new SimpleGlyphDataImpression();
    gi.keyData = points;
    gi.colorVariable = yAxis;
    gi.colormap = ABREngine.Instance.VisAssets.GetDefault<ColormapVisAsset>() as ColormapVisAsset;
    gi.glyph = glyph;
    ABREngine.Instance.RegisterDataImpression(gi);

    Constructors

    | Improve this Doc View Source

    SimpleGlyphDataImpression()

    A "Glyphs" data impression that uses hand-sculpted geometry to depict point data.

    Declaration
    protected SimpleGlyphDataImpression()
    Examples

    An example of creating a single glyph data impression and setting its colormap, color variable, and glyph could be:

    SimpleGlyphDataImpression gi = new SimpleGlyphDataImpression();
    gi.keyData = points;
    gi.colorVariable = yAxis;
    gi.colormap = ABREngine.Instance.VisAssets.GetDefault<ColormapVisAsset>() as ColormapVisAsset;
    gi.glyph = glyph;
    ABREngine.Instance.RegisterDataImpression(gi);

    Fields

    | Improve this Doc View Source

    LayerName

    Define the layer name for this Data Impression

    Declaration
    protected const string LayerName = "ABR_Glyph"
    Field Value
    Type Description
    string
    Remarks
    Warning

    New Data Impressions should define a const string "LayerName" which corresponds to a Layer in Unity's Layer manager.

    | Improve this Doc View Source

    colorVariable

    Scalar color variable applied to each point of this data impression. This example switches between X-axis monotonically increasing and Y-axis monotonically increasing.

    Declaration
    [ABRInput("Color Variable", UpdateLevel.Style)]
    public ScalarDataVariable colorVariable
    Field Value
    Type Description
    ScalarDataVariable
    | Improve this Doc View Source

    colormap

    Colormap applied to the colorVariable. This example switches between a linear white-to-green colormap and a linear black-to-white colormap.

    Declaration
    [ABRInput("Colormap", UpdateLevel.Style)]
    public IColormapVisAsset colormap
    Field Value
    Type Description
    IColormapVisAsset
    | Improve this Doc View Source

    forceOutlineColor

    Force the use of outlineColor even if there's a colormap applied to the data. This example alternates between a white-to-green linear colormap (false) and a solid purple-blue (true)

    Declaration
    [ABRInput("Force Outline Color", UpdateLevel.Geometry)]
    public BooleanPrimitive forceOutlineColor
    Field Value
    Type Description
    BooleanPrimitive
    | Improve this Doc View Source

    forwardVariable

    "Forward" direction that glyphs should point in.

    Declaration
    [ABRInput("Forward Variable", UpdateLevel.Geometry)]
    public VectorDataVariable forwardVariable
    Field Value
    Type Description
    VectorDataVariable
    | Improve this Doc View Source

    glyph

    What glyph(s) to apply to the dataset. This can also take a GlyphGradient. This example alternates between spherical and thin cylindrical glyphs.

    Declaration
    [ABRInput("Glyph", UpdateLevel.Geometry)]
    public IGlyphVisAsset glyph
    Field Value
    Type Description
    IGlyphVisAsset
    | Improve this Doc View Source

    glyphDensity

    Tweak the density of glyphs - subsamples the existing glyphs uniformly.

    Declaration
    [ABRInput("Glyph Density", UpdateLevel.Style)]
    public PercentPrimitive glyphDensity
    Field Value
    Type Description
    PercentPrimitive
    | Improve this Doc View Source

    glyphLod

    Level of detail to use for glyph rendering (higher number = lower level of detail; most glyphs have 3 LODs). Default to using the second-highest level of detail, but you may need to adjust for performance reasons.

    Declaration
    [ABRInput("Glyph Level Of Detail", UpdateLevel.Geometry)]
    public IntegerPrimitive glyphLod
    Field Value
    Type Description
    IntegerPrimitive
    | Improve this Doc View Source

    glyphSize

    Adjust the size of the glyphs (in Unity-space meters).

    Declaration
    [ABRInput("Glyph Size", UpdateLevel.Style)]
    public LengthPrimitive glyphSize
    Field Value
    Type Description
    LengthPrimitive
    | Improve this Doc View Source

    glyphVariable

    Variable used to determine which glyph to render at which data values. This only has any effect if glyph is a GlyphGradient.

    Declaration
    [ABRInput("Glyph Variable", UpdateLevel.Style)]
    public ScalarDataVariable glyphVariable
    Field Value
    Type Description
    ScalarDataVariable
    | Improve this Doc View Source

    keyData

    A "Glyphs" data impression that uses hand-sculpted geometry to depict point data.

    Declaration
    [ABRInput("Key Data", UpdateLevel.Geometry)]
    public KeyData keyData
    Field Value
    Type Description
    KeyData
    Examples

    An example of creating a single glyph data impression and setting its colormap, color variable, and glyph could be:

    SimpleGlyphDataImpression gi = new SimpleGlyphDataImpression();
    gi.keyData = points;
    gi.colorVariable = yAxis;
    gi.colormap = ABREngine.Instance.VisAssets.GetDefault<ColormapVisAsset>() as ColormapVisAsset;
    gi.glyph = glyph;
    ABREngine.Instance.RegisterDataImpression(gi);
    | Improve this Doc View Source

    nanColor

    Override the color used for NaN values in this data impression. If not supplied, will use the defaultNanColor.

    Declaration
    [ABRInput("NaN Color", UpdateLevel.Style)]
    public IColormapVisAsset nanColor
    Field Value
    Type Description
    IColormapVisAsset
    | Improve this Doc View Source

    outlineColor

    Color of the outline

    Declaration
    [ABRInput("Outline Color", UpdateLevel.Geometry)]
    public IColormapVisAsset outlineColor
    Field Value
    Type Description
    IColormapVisAsset
    | Improve this Doc View Source

    outlineWidth

    Width (in Unity world coords) of the outline

    Declaration
    [ABRInput("Outline Width", UpdateLevel.Geometry)]
    public LengthPrimitive outlineWidth
    Field Value
    Type Description
    LengthPrimitive
    | Improve this Doc View Source

    showOutline

    Show/hide outline on this data impression

    Declaration
    [ABRInput("Show Outline", UpdateLevel.Geometry)]
    public BooleanPrimitive showOutline
    Field Value
    Type Description
    BooleanPrimitive
    | Improve this Doc View Source

    upVariable

    "Up" direction that glyphs should point in.

    Declaration
    [ABRInput("Up Variable", UpdateLevel.Geometry)]
    public VectorDataVariable upVariable
    Field Value
    Type Description
    VectorDataVariable
    | Improve this Doc View Source

    useRandomOrientation

    Use random forward/up directions when no Vector variables are applied for forward/up.

    Declaration
    [ABRInput("Use Random Orientation", UpdateLevel.Geometry)]
    public BooleanPrimitive useRandomOrientation
    Field Value
    Type Description
    BooleanPrimitive

    Properties

    | Improve this Doc View Source

    MaterialNames

    Name of the material to use to render this DataImpression

    Declaration
    protected override string[] MaterialNames { get; }
    Property Value
    Type Description
    string[]
    Overrides
    DataImpression.MaterialNames

    Methods

    | Improve this Doc View Source

    Cleanup()

    When this data impression is done being used, clean up after itself if necessary. This method may need access to the GameObject the data impression is applied to.

    Declaration
    public override void Cleanup()
    Overrides
    DataImpression.Cleanup()
    | Improve this Doc View Source

    ComputeGeometry()

    RENDERING STEP 1. Populate rendering information (Geometry) for the DataImpression. This is triggered by the DataImpressionGroup when an Geometry happens. This step is generally expensive.

    Declaration
    public override void ComputeGeometry()
    Overrides
    DataImpression.ComputeGeometry()
    | Improve this Doc View Source

    GetDataset()

    By default, there's no dataset. DataImpressions should only have one dataset, and it's up to them individually to enforce that they correctly implement this.

    Declaration
    public override Dataset GetDataset()
    Returns
    Type Description
    Dataset
    Overrides
    DataImpression.GetDataset()
    | Improve this Doc View Source

    GetKeyData()

    By default, there's no data. DataImpressions should only have one KeyData, and it's up to them individually to enforce that they correctly implement this.

    Declaration
    public override KeyData GetKeyData()
    Returns
    Type Description
    KeyData
    Overrides
    DataImpression.GetKeyData()
    | Improve this Doc View Source

    GetKeyDataTopology()

    By default, there's no data. DataImpressions should only have one KeyData, and it's up to them individually to enforce that they correctly implement this.

    Declaration
    public override DataTopology GetKeyDataTopology()
    Returns
    Type Description
    DataTopology
    Overrides
    DataImpression.GetKeyDataTopology()
    | Improve this Doc View Source

    SetKeyData(KeyData)

    By default, there's no data. DataImpressions should only have one KeyData, and it's up to them individually to enforce that they correctly implement this.

    Declaration
    public override void SetKeyData(KeyData kd)
    Parameters
    Type Name Description
    KeyData kd
    Overrides
    DataImpression.SetKeyData(KeyData)
    | Improve this Doc View Source

    SetupGameObject()

    RENDERING STEP 2. Take geometric rendering information computed in ComputeGeometry() and sets up proper game object(s) and components for this Data Impression. Transfers geometry into Unity format (e.g. a Mesh). No geometric computations should happen in this method, and it should generally be lightweight.

    Declaration
    public override void SetupGameObject()
    Overrides
    DataImpression.SetupGameObject()
    | Improve this Doc View Source

    UpdateStyling()

    RENDERING STEP 3. Update the "styling" of an impression by sending each styling parameter to the shader. Occasionally will need to set per-vertex items like transforms. This method should generally be lightweight.

    Declaration
    public override void UpdateStyling()
    Overrides
    DataImpression.UpdateStyling()
    | Improve this Doc View Source

    UpdateVisibility()

    RENDERING STEP 4. Update the visibility of an impression (hidden or shown)

    Declaration
    public override void UpdateVisibility()
    Overrides
    DataImpression.UpdateVisibility()

    Implements

    IHasDataset
    IHasKeyData
    ICoordSpaceConverter
    • Improve this Doc
    • View Source
    In This Article
    Back to top Interactive Visualization Lab
    Copyright 2023, Regents of the University of Minnesota, All Rights Reserved