Function signature for the SVG builder function
Canvas "BackBuffer" coordinate (Pixel Coordinate value multiplied by DpiHelper.PIXEL_RATIO)
Horizontal text alignment for multiline text.
Text rotation in degrees.
Defines text style with advanced options
Definition of an animation, comprising a EAnimationType and the relevant options
Definition of an annotation, comprising a EAnnotationType and the relevant options
The type of the onArrowHeadSizeChanged callback function
A type class to contain information about the current state of 3D Axis Cube, such is Visible Range or World Dimensions.
Definition of an AxisBase2D, comprising a EAxisType and the relevant options
A Border applied to the series viewport, axes or the entire chart surface
Definition of Box Series data
Defines text style and positioning options used for Chart Title rendering
Type args for the LegendModifier.isCheckedChanged callback Type args for the LegendModifier3D.isCheckedChanged callback
Whether the corresponding legend item is checked or not (by default, this corresponds to IRenderableSeries3D.isVisible)
The series which was checked or unchecked
Defines text style which allows to switch between Native / Non-native text rendering
A type class to contain information about contour line styles
The color to use
The minimum data value at which this color will be used
The start point for text drawing. This is not the top left of the text rectangle, since the y value for text is on the alphabetic baseline Difference is bounds.GetLineBounds(0).m_fHeight
The Rectangle that contains the label, relative to the seriesViewRect
A type class to contain information about data label styles
Coordinate in the plane of Data values and Visible Range
Type arguments to DpiHelper.dpiChanged event
The new Dpi scaling factor
The previous Dpi scaling factor
An easing function used in animations through SciChart. See easing for a list of values
Definition of a shader effect, comprising a EShaderEffectType and the relevant options
Type used by Guard.arraysSameLengthArr
Definition of a data filter
Formats a data-value into a string for display
Type of a fraction of PI. Used internally by RadianLabelProvider
A Gradient stop applied to gradients on lines, fills thoughout SciChart
The gradient stop color as an HTML color code
The gradient offset. Allowable values are in the range 0 to 1
A type class to contain information about gridline styles
If Interpolated, a color gradient will be created based on the stops, and colors will be picked from that gradient based on the relative position of the data value between the stops. If Discrete, only the colors defined in the stops will be picked. Default Discrete;
The color stops to use in data space. These must be in ascending order and there must be at least 2 stops, to define a minimum and maximum
Gradient mode blends the boundaries between neighboring segments, while Solid mode keeps them as pure colors.
The color to use for values less than the smallest stop
The color to use for values greater than the largest stop
Definition of Open, High, Low, Close data
Definition of a LabelProviderBase2D, comprising a ELabelProviderType and the relevant options
Type for label thresholds mapping. Maps each ETradeChartLabelFormat to its maximum time range in seconds.
Definition of a 2d chart modifier, comprising a EChart2DModifierType and the relevant options
The mouse button
The keyboard key. See EModifierMouseArgKey for the list of values
Type to store whether modifier keys (Control, Shift, Alt) are pressed or not
Defines properties of text rendered via Native Text API
WeakRef for the original object
WeakRef for the proxy of the object
revocableToken for the proxy of the object
Definition of Open, High, Low, Close data
Definition of a palette provider, comprising a EPaletteProviderType and the relevant options
CSS pixel coordinate
Definition of a pointmarker, comprising a EPointMarkerType and the relevant options
Definition of a pointmarker, comprising a EPointMarker3DType and the relevant options
Defines the style of the pointer tip
Sets the pointer circle background color as an HTML Color code
Default = none
The depth of the pointer arrow head, relative to the arrow height, NOT the pointer length
Properties should be between 0 and 1 inclusive
Default = 1
The height of the pointer arrow, relative to the pointer length
Properties must be between 0 and 1 inclusive
Example: 0.1 means 10% of the length of the pointer (given by the y1 property)
Default = 0.1
Sets the pointer circle border color as an HTML Color code
Default = black
Sets the stroke-width of the pointer circle, in pixels
Default = 3
The width of the pointer arrow, relative to the pointer length
Properties must be between 0 and 1 inclusive
Example: 0.1 means 10% of the length of the pointer (given by the y1 property)
Default = 0
Defines the style of the pointer center circle
Sets the pointer circle background color as an HTML Color code
Default = gray
The size of the pointer circle (diameter)
Properties must be between 0 and 1 inclusive
Example: 0.1 means 10% of the length of the pointer (given by the y1 property)
Default = 0
Sets the pointer circle border color as an HTML Color code
Default = black
Sets the stroke-width of the pointer circle, in pixels
Default = 3
Defines the style of the pointer stick
The size of the back extension of the pointer stick
Properties must be between 0 and 1 inclusive
Example: 0.1 means 10% of the length of the pointer (given by the y1 property)
Default = 0
The size of the pointer stick base
Properties must be between 0 and 1 inclusive
Example: 0.1 means 10% of the length of the pointer (given by the y1 property)
Default = 0.1
Sets the pointer stick background color as an HTML Color code
Default = gray
Sets the pointer stick border color as an HTML Color code
Default = black
Sets the stroke-width of the pointer stick, in pixels
Default = 3
A coordinate type relative to an axis viewportDimension
Defines Render Layers 1,2,3,4 which are used to compose rendering
Internal testing use only
The url where the no-simd fallback for wasm is located
This needs to be served when SciChartDefaults.useWasmSimd is any option other than "Always" and will be loaded as a fallback for browsers that do not support wasm Simd (Chrome v90 or below - 2021, Safari v16.3 or below - 2023, Firefox v88 or below - 2021).
if wasmNoSimdUrl is not provided, we will try to calculate it from the provided wasmUrl or other defaults.
The url where the wasm file is located
As of v4.0 the .data file is embedded in the wasm file. You may need to remove config in your build process that tries to copy the .data file
Serializable performance debug data with the timeOrigin of the thread
Definition of series data, which can take various shapes
Definition of a renderable series, comprising a ESeriesType, the relevant options, and an optional data object whose type depends on the series type
Shared data that can be used in ISciChart2DDefinition or directly in chartBuilder.buildSeries or chartBuilder.buildDataSeries
Length defined as an absolute number or percentage
The stroke for the element
The StrokeDashArray defines the stroke or dash pattern for the line. Accepts an array of values, e.g. [2,2] will have a line of length 2 and a gap of length 2.
The stroke thickness for the element
The mode for handling SubSurface position coordinates. Could one for all or different per coordinate. Acceptable format:
Coordinate represented with a value corresponding to the selected coordinate mode
A type class to contain information about Axis Label text styles
Horizontal label alignment for vertical axes. Default Auto.
The foreground color of the text
Default Arial
The size of the font in pixels. Default 14 for axis labels
Not supported if useNativeText = true
Not supported if useNativeText = true
Horizontal text alignment for multiline text.
Padding is left 4, right 4, top 2, bottom 0 by default. This is because there is natural space below the text baseline. If you are using text labels rather than just numbers, or when using native text, you may want to increase the bottom padding.
Defines common properties of text to render
Line spacing to use if text is wrapped. This is a multiple of the line height and defaults to 1.1
Defines properties of text rendered as a texture
A type class to contain information about Tick line styles
A type which contains info about major, minor tick coordinates, labels and values. Used when drawing the axis gridlines
The major tick coordinates
The major tick label strings
The major tick numeric values
The minor tick coordinates
The minor tick numeric values
The scichart version required to run a JSON definition through {@link chartBuilder.buildChart()} without issues.
Definition of XY data
Definition of XYText data
Definition of XYN data
Definition of XYXY data
Definition of XYXY data
Definition of XYY data
Definition of XYZ 3D data
Definition of XYZ data
A function to execute when zoomExtents is activated. If this exists and returns false, the builtin behaviour is ignored;
The order in which label formats should be evaluated (from smallest to largest time ranges). Used to determine which format to use based on the visible time range.
Relocate the tooltip so that it is always within the seriesViewRect
Relocate the tooltip so that it is always within the seriesViewRect
Runs update for the animation
Helper function to append an array to a target array, treating the target as a circular buffer
Applies the given opacity to an html color code or name, returning an html color code.
Generate random base64 id string. The default length is 22 which is 132-bits so almost the same as a GUID but as base64
Optional value to specify the length of the id to be generated, defaults to 22
Construct a chart with SciChartSurface using a ISciChart2DDefinition which can be pure data.
The Div Element ID where the SciChartSurface will reside
Construct a chart with SciChartPolarSurface using a ISciChart2DDefinition which can be pure data.
The Div Element ID where the SciChartPolarSurface will reside
Construct a chart with SciChart3DSurface using a ISciChart3DDefinition which can be pure data.
The Div Element ID where the SciChart3DSurface will reside
Build one or more annotations from a definition that can be pure data.
One or an array of TAnnotationDefinition
An array of annotations
Build one or more axes from a definition that can be pure data.
One or an array of TAxisDefinition
An array of AxisBase2D.
Build one 3D axis from a definition that can be pure data.
One or an array of TAxisDefinition
An array of AxisBase2D.
Builds a 2D SciChartSurface using a ISciChart2DDefinition which can be pure data.
The Div Element ID where the surface will reside
A chart of the appropriate type based on the definition
Builds a Polar SciChartPolarSurface using a ISciChart2DDefinition which can be pure data.
The Div Element ID where the surface will reside
A chart of the appropriate type based on the definition
Builds a Pie SciChartPieSurface using a ISciChartPieDefinition which can be pure data.
The Div Element ID where the surface will reside
A chart of the appropriate type based on the definition
Builds a 3D SciChart3DSurface using a {@link ISciChartDefinition3D} which can be pure data.
The Div Element ID where the surface will reside
A chart of the appropriate type based on the definition
Build a data series from a definition that can be pure data.
Optional TSharedDataDefinition to define shared data which can be referenced by the data series
Optional IDataSeries to define original data for filter
An IDataSeries
Build a data series from a definition that can be pure data.
Optional TSharedDataDefinition to define shared data which can be referenced by the data series
Build one or more chart modifiers from a definition that can be pure data.
One or an array of TModifierDefinition
An array of modifiers
Build one or more 3D chart modifiers from a definition that can be pure data.
One or an array of TModifier3DDefinition
An array of modifiers
Construct a chart with SciChartPieSurface using a ISciChartPieDefinition which can be pure data.
The Div Element ID where the SciChartPieSurface will reside
Build one or more renderable series from a definition that can be pure data.
One or an array of TSeriesDefinition
Optional TSharedDataDefinition to define shared data which can be referenced by the renderable series
An array of IRenderableSeries.
Build one or more 3D renderable series from a definition that can be pure data.
One or an array of TSeriesDefinition3D
Optional TSharedDataDefinition to define shared data which can be referenced by the renderable series
An array of IRenderableSeries3D.
Calculates annotation borders for AxisMarkerAnnotation
the vertical chart flag
the X1 data value of the annotation
the Y1 data value of the annotation
the horizontal axis
the vertical axis
the texture width
the seriesViewRect
the X position of the texture on the SciChartSurface, the left-top corner position on the canvas
the Y position of the texture on the SciChartSurface, the left-top corner position on the canvas
the texture width
the texture margin in X direction
the texture margin in Y direction
if true EAxisAlignment.Top, otherwise EAxisAlignment.Bottom
if true EAxisAlignment.Left, otherwise EAxisAlignment.Right
number of values to respect for the average
index of the latest value to include, by default equals to length-1 of DoubleVector
Returns rectangle borders in pixel coordinates
Calculate the width and height of the tooltip based on the content array
Returns min and max borders
layer z-order offset of the surface
specifies the capacity of layers that could be potentially added between the default chart layers
layer number relative to the specific surface layers
absolute order of the layer on the chart (considering parent chart and previous subChart surface layers)
Calculates absolute coordinates of the heatmap cells
relative cell sizes
texture size
The reviver function needed when parsing definitions to JSON
Checks if can draw, is used not to draw when {@link BaseAnimation} has delay
Checks if the animation is running
The animation queue
The animation finate state machine
Configures an existing surface using a definition. This is useful if you need to use the wasmContext in methods or classes you use in your definition
The webassemply context. Pass undefined for a pie surface.
rgbColor, for example "0xff00ff00" - green
Converts individual R,G, and B components to HEX Color
argbColor, for example "0xff00ff00" - green
Converts ESearchMode (typescript friendly Enum) to SCRTFindIndexSearchMode which is required by the webassembly engine
number value from 0 to 255
number value from 0 to 255
number value from 0 to 255
number value from 0 to 255
pixel in hex format: opacity, red, green, blue. For example: "0xff0000ff" - blue pixel with no opacity
Creates a native {@link SCRTBrush} brush from html color code string passed in and caches it
The object that will store a brush
The HTML Color code
The opacity factor.
The height ratio of the main canvas to the WebGl canvas.
The width ratio of the main canvas to the WebGl canvas.
The gradient params.
new or existing instance of {@link SCRTBrush}}
the X coordinate on the screen relative to seriesViewRect, X and Y swapped for vertical charts
the Y coordinate on the screen relative to seriesViewRect, X and Y swapped for vertical charts
Helper function to create an HTML Image {@link HTMLImageElement} asychronously by passing in the string image source
Helper function to create an HTML Images {@link HTMLImageElement} asychronously by passing in the string array
Helper function to create a {@link SCRTRectVertex} native rectangle vertex
The SciChart 2D WebAssembly Context containing native methods and access to our WebGL2 Engine and WebAssembly numerical methods
Creates a native {@link SCRTPen} Pen from html color code string passed in and caches it
The object that will store a pen
The HTML Color code
The strokethickness in pixels
The opacity factor
the StrokeDashArray which defines any dash e.g. [2,2] means dash for 2pts, gap for 2pts (or undefined = solid line).
the new or existing instance of {@link SCRTPen}}
Creates the point marker
Helper function to create a {@link SCRTPen} native pen access to our WebGL2 Engine and WebAssembly numerical methods
The SciChart WebAssembly Context containing native methods and access to our WebGL2 WebAssembly Drawing Engine
Html color code in the format "#fff", "#ff0000", "rgba(255,255,0,1)", "#11333333"
the stroke thickness of the pen in pixels
The opacity factor
the StrokeDashArray which defines any dash e.g. [2,2] means dash for 2pts, gap for 2pts (or undefined = solid line).
Helper function to create a {@link SCRTBrush} native solid color brushes
Html color code in the format "#fff", "#ff0000", "rgba(255,255,0,1)", "#11333333"
All svg creation is run through this funciton so it can be mocked for tests
Checks if an object implements IDeletable, then calls IDeletable.delete
Function to draw Vertical or Horizontal Line annotations with labels
This is just something to call to ensure that all the registrations are run before a surface is created
Result 11/23/2018
Formats high-precision timestamp to SS.nnnnnnnnn (Nanoseconds)
Formats high-precision timestamp to SS.mmmmmm (Microseconds) Logic: Uses Date for HH:MM:SS, appends raw microseconds
Generates default values names for the data series
The number of y values
Converts a value into a pixel coordinate accordingly to the coordinate mode
the value to convert
the CoordinateCalculatorBase which will do the transformation
the ECoordinateMode to apply
the pixel coordinate
Returns true if descriptors are deeply equal, else false
Calculates the height of the first line from top to baseline
get a fontKey required to aquire a native font
set true to get an alternative instance of the font which can be used multiple times while transformations are in effect, without disrupting global font rendering
Creates the font string, which is used to set font on CanvasRenderingContext2D
The font style
The font weight
The font size in pixels
The font family
Calculates coordinates of the annotation label. The coordinates are defined as an absolute position on the whole SciChartSurface.
Calculates annotation line coordinates accordingly to axis alignment and label placement. Returns coordinates relative to seriesViewRect.
Calculates multiline text height from the top to the last line baseline
Text position X coordinate
Text position Y coordinate
Horizontal alignment
Vertical alignment
Text bounds
The padding
x and y position where to draw text for SCRTFont.DrawStringAdvanced() method
Finds a Triangle that has been hit and return indices of the first and the last vertex of this triangle, If there is no hit return -1, -1
Calculates label rotation for a polar chart with different label modes
One of the following polar label modes EPolarLabelMode
data point angle in radians
an angle in radians to apply for the label when drawing
Return random number in range [min, max]
Given the starting and end mouse-point, computes a rectangle to perform zoom over. Takes into account the xyDirection
the starting point of the mouse
the end point of the mouse
the XyDirection
Retrieves a native {@link SCRTBrush} Brush from the provided {@link BrushCache} cache object. The retrieved entity is a wrapper around {@link SCRTPen}
The object that stores a brush
new or existing instance of {@link SCRTBrush}}
Retrieves a native {@link SCRTPen} Pen from the provided {@link Pen2DCache} cache object
The object that stores a pen
the new or existing instance of {@link SCRTPen}}
Creates function to generate stock data
For single line text return height to baseline. For multiline text returns total height
Converts a pixel coordinate back to a value
coordinate or dataValue to convert
the CoordinateCalculatorBase which will do the transformation
the ECoordinateMode to apply
the data-value or value
Returns an empty vector of Rectangles
Retrieves a native WebGlBrush Brush from the provided {@link BrushCache} cache object
new or existing instance of WebGlPen}
Hit-tests BoxSeries and Polar Column Series
Hit-test function for BoxSeries or PolarColumnSeries Only for sorted data without overlapping columns only for columnXMode = EColumnMode.Mid or EColumnMode.Start Using binary search, time complexity O(log(N))
Hit-test function for BoxSeries or PolarColumnSeries Iterates over all data points, time complexity O(N)
Interpolates colors
Interpolates numbers
returns true if the array is sorted
The array
If True checks for sorted ascending, if False for descending
Returns whether a number is in the range of 2 other numbers, regardless if ascending or descending
returns true if the number is a real number (not NAN, not Infinite)
Linearly interpolates a data-value in a TLinearColorMap, which specifies Gradient Stops, Data Minimum and Maximum and color stepping mode
Helper method for generating an array of a given length, where the values are the indicies An optional multiplier and map function can be applied.
Zero-pad helper (e.g. 5 -> "005")
Converts color from ARGB number format into HTML string format #FFFFFFFF
color in ARGB format
Parse colors and convert them to hex string in ABGR format to use in c++ Examples: "#fff", "#ff0000", "rgba(255,255,0,1)", "#11333333"
Parse colors and convert them to hex string to use in c++ Examples: "#fff", "#ff0000", "rgba(255,255,0,1)", "#11333333"
Converts an HTML color code to TArgb
Converts HTML color to ARGB color
HTML color string
Opacity 0 to 255, where 0 fully transparent and 255 fully opaque
Allows to promisify the handling of a single event raised by an EventHandler
an EventHandler to track
a Promise returned when the event is raised
Register a pure function
The base type for, which indicates where the function will be used, Either OptionFunction or OnCreated
The name of the function
the function to register
Whether to override an existing registration for the type name. Default false.
Register a function that returns an object of the specified type.
The EBaseType of the object that is being registered.
The name of the type, which should be a subtype of the baseType. For custom types, use the actual type name, not the "Custom" value on the subType enum.
A function that takes an optional options argument and returns an instance of the desired type.
Whether to override an existing registration for the type. Default false.
Register a function that requires a webAssemblyContext to return an object of the specified type.
The EBaseType of the object that is being registered.
The name of the type, which should be a subtype of the baseType. For custom types, use the actual type name, not the "Custom" value on the subType enum.
A function that takes a SciChart 2D WebAssembly Context or SciChart 3D WebAssembly Context and an optional options argument and returns an instance of the desired type.
Whether to override an existing registration for the type. Default false.
Runs callback shortly after the next browser Frame is produced.
Array of tooltip clusters
The X coordinate, isVertical property is already taken into account
The Y coordinate, isVertical property is already taken into account
Tests whether a point is within rectangle bounds
Tests if X is within radius from the [intervalStart, intervalEnd] interval, intervalStart, intervalEnd values might not be sorted
Converts a UINT color number to a 8-digit hex code e.g. #FFAABBCC
Linearly interpolates between two colors based on the ratio passed in. E.g. Ratio = 0.0f returns From color, ratio = 1.0f returns To Color. Ratio = 0.5f returns a mix of the two Works for 32 bit colors
the start color, for example 0x0000ffff (format ARGB)
the end color, for example 0xffffffff
the value between 0 and 1
Linearly interpolates between two colors based on the ratio passed in. E.g. Ratio = 0.0f returns From color, ratio = 1.0f returns To Color. Ratio = 0.5f returns a mix of the two. Works only for numbers not more than 24 bit
the start color, for example 0xff0000
the end color, for example 0x00ff00
the value between 0 and 1
Converts a color in TArgb format to TSRVector4 (RGBA -> x,y,z,w) for use in 3D Engine
Converts a WebAssembly vector to a JavaScript number array by creating a copy of the data.
The WebAssembly vector to convert (SCRTDoubleVector2D, SCRTDoubleVector3D, FloatVector2D, UIntVector2D, or IntVector2D)
The WebAssembly context (TSciChart or TSciChart3D) that owns the vector
A new number[] array containing a copy of all values from the vector
Creates a Float32Array view directly onto the WebAssembly memory backing the vector.
The WebAssembly vector to create a view for (FloatVector2D)
The WebAssembly context (TSciChart) that owns the vector
A Float32Array view onto the WebAssembly memory - DO NOT write to this array
Creates a Float64Array view directly onto the WebAssembly memory backing the vector.
The WebAssembly vector to create a view for (SCRTDoubleVector2D or SCRTDoubleVector3D)
The WebAssembly context (TSciChart or TSciChart3D) that owns the vector
A Float64Array view onto the WebAssembly memory - DO NOT write to this array
Creates a Int32Array view directly onto the WebAssembly memory backing the vector.
The WebAssembly vector to create a view for (IntVector2D)
The WebAssembly context (TSciChart) that owns the vector
A Int32Array view onto the WebAssembly memory - DO NOT write to this array
Creates a Uint32Array view directly onto the WebAssembly memory backing the vector.
The WebAssembly vector to create a view for (UIntVector2D)
The WebAssembly context (TSciChart) that owns the vector
A Uint32Array view onto the WebAssembly memory - DO NOT write to this array
Wrap a string by adding newline characters, splitting on spaces and wrapping to a maximum size
Convert a string into an array of lines by splitting on spaces and wrapping to a maximum number of characters
Default label thresholds used by SmartDateLabelProvider. Maps each label format to its maximum time range in seconds.
Reversable functions that go from 0..1..0 used throughout SciChart when animations are used
No easing acceleration like linear, but it does reverse from 0..1..0
Easing functions used throughout SciChart when animations are used
A global cache for labels, used by all labelProviders, to reduce the amount of time spent creating label textures.
Check if a text style matches the one for the given id
Notify the cache that a style is no longer used. Linked labels are only deleted when there are no remaining uses, and then only after minAge has passed.
Get a label from the cache. Returns undefined if none found.
Get the maximum number of labels allowed to be stored in the cache. Used when calling pruneCache
Get the minimum age (time since last used) of labels in the cache. This prevents recently used labels from being pruned, or removed when style is freed
Get an identifier for the given text style. Returns an existing identifier if a matching style exists in the cache
Remove old labels from the cache, if there are more than MaxSize.
Completely clears and resets the cache. Testing use only
Add a label to the cache
Set the maximum number of labels allowed to be stored in the cache. Used when calling pruneCache
Set the minimum age (time since last used) of labels in the cache. This prevents recently used labels from being pruned, or removed when style is freed
Generated using TypeDoc
Copies own properties of an interface or copies all of its props if base type is not provided. Makes all of the props required.