• 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 SimpleLineDataImpression

    A "Lines" data impression that uses hand-drawn line textures to depict line/flow data.

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

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

    SimpleLineDataImpression gi = new SimpleLineDataImpression();
    gi.keyData = lines;
    gi.colorVariable = yAxis;
    gi.colormap = ABREngine.Instance.VisAssets.GetDefault<ColormapVisAsset>() as ColormapVisAsset;
    gi.lineTexture = line;
    ABREngine.Instance.RegisterDataImpression(gi);

    Constructors

    | Improve this Doc View Source

    SimpleLineDataImpression()

    A "Lines" data impression that uses hand-drawn line textures to depict line/flow data.

    Declaration
    protected SimpleLineDataImpression()
    Examples

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

    SimpleLineDataImpression gi = new SimpleLineDataImpression();
    gi.keyData = lines;
    gi.colorVariable = yAxis;
    gi.colormap = ABREngine.Instance.VisAssets.GetDefault<ColormapVisAsset>() as ColormapVisAsset;
    gi.lineTexture = line;
    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_Line"
    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

    averageCount

    Number of "averaging" samples taken across the line for a smoothing effect. This example ranges from 0 to 50.

    Declaration
    [ABRInput("Ribbon Smooth", UpdateLevel.Geometry)]
    public IntegerPrimitive averageCount
    Field Value
    Type Description
    IntegerPrimitive
    | Improve this Doc View Source

    colorVariable

    Scalar color variable applied to each point on the line 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

    defaultCurveDirection

    Change the default curvature axis (if there are no existing tangents on the curve, this axis will be used)

    Declaration
    public Vector3 defaultCurveDirection
    Field Value
    Type Description
    Vector3
    Remarks

    NOTE: This input mostly changes behaviour at the ends of ribbons, unless your ribbon is perfectly straight. (This setting exists because of perfectly straight ribbons which the existing ribbon has trouble with).

    | Improve this Doc View Source

    keyData

    A "Lines" data impression that uses hand-drawn line textures to depict line/flow data.

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

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

    SimpleLineDataImpression gi = new SimpleLineDataImpression();
    gi.keyData = lines;
    gi.colorVariable = yAxis;
    gi.colormap = ABREngine.Instance.VisAssets.GetDefault<ColormapVisAsset>() as ColormapVisAsset;
    gi.lineTexture = line;
    ABREngine.Instance.RegisterDataImpression(gi);
    | Improve this Doc View Source

    lineTexture

    Texture applied to the line. Light areas on the texture are discarded, dark areas are kept. Can also be a LineTextureGradient

    Declaration
    [ABRInput("Texture", UpdateLevel.Style)]
    public ILineTextureVisAsset lineTexture
    Field Value
    Type Description
    ILineTextureVisAsset
    | Improve this Doc View Source

    lineTextureVariable

    Scalar variable used to vary the line texture across its length.

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

    lineWidth

    Width of the line, in Unity world units.

    Declaration
    [ABRInput("Ribbon Width", UpdateLevel.Geometry)]
    public LengthPrimitive lineWidth
    Field Value
    Type Description
    LengthPrimitive
    | 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

    nanLineTexture

    Override the line texture used for NaN values in this data impression. If not supplied, will use the defaultNanLine.

    Declaration
    [ABRInput("NaN Texture", UpdateLevel.Style)]
    public ILineTextureVisAsset nanLineTexture
    Field Value
    Type Description
    ILineTextureVisAsset
    | Improve this Doc View Source

    ribbonBrightness

    Manually adjust the brightness of the ribbon regardless of lighting in the scene.

    Declaration
    [ABRInput("Ribbon Brightness", UpdateLevel.Style)]
    public PercentPrimitive ribbonBrightness
    Field Value
    Type Description
    PercentPrimitive
    | Improve this Doc View Source

    ribbonCurveAngle

    Subtly adjust the lighting by varying the lighting normal of the ribbon

    Declaration
    [ABRInput("Ribbon Curve", UpdateLevel.Geometry)]
    public AnglePrimitive ribbonCurveAngle
    Field Value
    Type Description
    AnglePrimitive
    | Improve this Doc View Source

    ribbonRotationAngle

    Rotate the ribbon along its central axis. This example goes from 0 degrees to 90 degrees.

    Declaration
    [ABRInput("Ribbon Rotation", UpdateLevel.Geometry)]
    public AnglePrimitive ribbonRotationAngle
    Field Value
    Type Description
    AnglePrimitive
    | Improve this Doc View Source

    textureCutoff

    "Cutoff" point for discarding portions of the line. The cutoff is between 0% (fully light) and 100% (fully dark). In practice, this is performing a threshold filter.

    Declaration
    [ABRInput("Texture Cutoff", UpdateLevel.Style)]
    public PercentPrimitive textureCutoff
    Field Value
    Type Description
    PercentPrimitive
    Remarks

    NOTE: This input will have no effect if there's no lineTexture applied. It has the most effect on textures that are not fully black/white.

    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

    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

    IHasKeyData
    ICoordSpaceConverter
    IHasDataset
    • 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