Constructor
new ScenePlotView3D(uiState, renderer, decViews, decModels, container, xView, yView, width, height) → {ScenePlotView3D}
Parameters:
Name | Type | Description |
---|---|---|
uiState |
UIState | shared UIState state object |
renderer |
THREE.renderer | THREE renderer object. |
decViews |
Object | dictionary of DecompositionViews shown in this scene |
decModels |
MultiModel | MultiModel of DecompositionModels shown in this scene (with extra global data about them) |
container |
Node | Div where the scene will be rendered. |
xView |
Float | Horizontal position of the rendered scene in the container element. |
yView |
Float | Vertical position of the rendered scene in the container element. |
width |
Float | The width of the renderer |
height |
Float | The height of the renderer |
- Source:
Returns:
An instance of ScenePlotView3D.
- Type
- ScenePlotView3D
Members
axesColor :String
Axes color.
Type:
- String
- Default Value:
- '#FFFFFF' (white)
- Source:
backgroundColor :String
Background color.
Type:
- String
- Default Value:
- '#000000' (black)
- Source:
EVENTS :Array.<String>
Events allowed for callbacks. DO NOT EDIT.
Type:
- Array.<String>
- Source:
height :Float
Height of the scene.
Type:
- Float
- Source:
light :THREE.DirectionalLight
Object used to light the scene in scatter mode, by default is set to a light and transparent color (0x99999999).
Type:
- THREE.DirectionalLight
- Source:
needsUpdate :Boolean
True when changes have occured that require re-rendering of the canvas
Type:
- Boolean
- Source:
parallelCam :THREE.OrthographicCamera
Camera used to display the parallel plot scene.
Type:
- THREE.OrthographicCamera
- Source:
scatterCam :THREE.OrthographicCamera
Camera used to display the scatter scene.
Type:
- THREE.OrthographicCamera
- Source:
visibleDimensions :Array.<Integer>
Array of integers indicating the index of the visible dimension at each axis ([x, y, z]).
Type:
- Array.<Integer>
- Source:
width :Float
Width of the scene.
Type:
- Float
- Source:
xView :Float
Horizontal position of the scene.
Type:
- Float
- Source:
yView :Float
Vertical position of the scene.
Type:
- Float
- Source:
Methods
addDecompositionsToScene()
Adds all the decomposition views to the current scene.
- Source:
buildCamController()
Builds a camera controller (for scatter or parallel plot)
- Source:
buildCamera()
Builds a camera (for scatter or parallel plot)
- Source:
checkUpdate()
Convenience method to check if this or any of the decViews under this need rendering
- Source:
drawAxesLabelsWithColor(color)
Draw the axes labels for each visible dimension.
The text in the labels is determined using the percentage explained by each dimension and the abbreviated name of a single decomposition object. Note that we arbitrarily use the first one, as all decomposition objects presented in the same scene should have the same percentages explained by each axis.
Parameters:
Name | Type | Description |
---|---|---|
color |
String | A CSS-compatible value that specifies the color of the labels, these labels will be positioned at the end of the axes line. If the color value is null the labels will be removed. |
- Source:
drawAxesWithColor(color)
Draw the axes lines in the plot
Parameters:
Name | Type | Description |
---|---|---|
color |
String | A CSS-compatible value that specifies the color of each of the axes lines, the length of these lines is determined by the global dimensionRanges property computed in decModels. If the color value is null the lines will be removed. |
- Source:
getScalingConstant() → {Number}
Calculate a scaling constant for the text in the scene.
It is important that this factor is calculated based on all the elements in a scene, and that it is the same for all the text elements in the scene. Otherwise, some text will be bigger than other.
- Source:
Returns:
The scaling factor to use for labels.
- Type
- Number
off(eventType, handler)
Interface to unsubscribe a function from an event type, see the EVENTS property.
Parameters:
Name | Type | Description |
---|---|---|
eventType |
String | The type of event to unsubscribe from. |
handler |
function | Function to remove from the subscribers list. |
- Source:
Throws:
-
If the given eventType is unknown.
- Type
- Error
on(eventType, handler)
Interface to subscribe to event types in the canvas, see the EVENTS property.
Parameters:
Name | Type | Description |
---|---|---|
eventType |
String | The type of event to subscribe to. |
handler |
function | Function to call when |
- Source:
Throws:
-
If the given eventType is unknown.
- Type
- Error
recenterCamera()
Recenter the position of the camera to the initial default.
- Source:
removeAxes()
Helper method to remove the axis lines from the scene
- Source:
removeAxesLabels()
Helper method to remove the axis labels from the scene
- Source:
render()
Convenience method to re-render the contents of the scene.
- Source:
resize(xView, yView, width, height)
Resizes and relocates the scene.
Parameters:
Name | Type | Description |
---|---|---|
xView |
Float | New horizontal location. |
yView |
Float | New vertical location. |
width |
Float | New scene width. |
height |
Float | New scene height. |
- Source:
updateCameraAspectRatio()
Resets the aspect ratio of the camera according to the current size of the plot space.
- Source:
updateCameraTarget()
Updates the target and dimensions of the camera and control
The target of the scene depends on the coordinate space of the data, by default it is set to zero, but we need to make sure that the target is reasonable for the data.
- Source:
(inner) showText()
The functions showText and copyToClipboard are used in the 'click', 'dblclick', and 'select' events.
When a sample is clicked we show a legend at the bottom left of the view. If this legend is clicked, we copy the sample name to the clipboard. When a sample is double-clicked we directly copy the sample name to the clipboard and add the legend at the bottom left of the view.
When samples are selected we show a message on the bottom left of the view, and copy a comma-separated list of samples to the clipboard.
- Source: