API Reference

json ViewerState : object

Complete state of a Neuroglancer instance.

Optional members:
dimensions : CoordinateSpace

Global coordinate space.

relativeDisplayScales : RelativeDisplayScales

Default additional relative display scale factors for each global dimension.

displayDimensions : DisplayDimensions

Default display dimensions for 2d and 3d projections.

position : Position

Global position within each global dimension.

crossSectionOrientation : Orientation

Default orientation within the displayDimensions.

crossSectionScale : DisplayScale

Default display scale (zoom level) for cross-section views.

crossSectionDepth : DepthRange

Default depth-of-field for cross-section views.

projectionOrientation : Orientation

Default orientation within the displayDimensions.

projectionScale : DisplayScale

Default display scale (zoom level) for projection views.

projectionDepth : DepthRange

Default depth-of-field for projection views.

layers : array of Layer
showAxisLines : boolean = true

Indicates whether to show the red/green/blue axis lines.

wireFrame : boolean = false

Indicates whether to enable wireframe rendering mode (for debugging).

showScaleBar : boolean = true

Indicates whether to show scale bars.

showDefaultAnnotations : boolean = true

Indicates whether to show bounding boxes of data sources.

showSlices : boolean = true

Indicates whether to show cross sections in the 3-d view of 4panel layouts.

gpuMemoryLimit : integer

GPU memory limit, in bytes.

systemMemoryLimit : integer

System memory limit, in bytes.

concurrentDownloads : integer

Maximum number of concurrent downloads.

prefetch : boolean = true

Indicates whether to use adaptive prefetching.

title : string

Additional text to include in the page title.

layout : DataPanelLayoutType | DataPanelLayout | HierarchicalLayout

Data panel and layer group layout.

json Layer : object

Layer within a Neuroglancer instance.

Optional members:
type : string

Specifies the layer type.

name : string

Specifies the layer name to show in the UI.

visible : boolean

Indicates whether the layer is displayed in 2d and 3d projections.

json Position : array of number

Specifies the position within a CoordinateSpace.

The length must be equal to the number of dimensions in the coordinate space.

json Orientation : [number, number, number, number] = [0, 0, 0, 1]

Specifies a 3-d orientation as a unit quaternion.

For the 3-d projection view and for the DataPanelLayoutType.xy cross-section view, with the default orientation of [0, 0, 0, 1] the first display dimension (red axis) points right, the second display dimension (green axis) points down, and the third display dimension (blue axis) points away from the camera.

json DepthRange : number(0, +∞)

Specifies the depth-of-field for cross section or 3d projection views.

json DisplayDimensions : array[..3] of string

Specifies the display dimensions for 2d and 3d projections.

json DisplayScale : number(0, +∞)

Specifies the scale (zoom level) of a cross-section or 3d projection view.

For cross-section views, the scale is specified in canonical voxels per screen pixel, and defaults to 1. For 3d projection views, the scale is specified in canonical voxels per viewport height.

json RelativeDisplayScales : array of number

Specifies additional relative display scale factors for each global dimension.

The length must be equal to the number of global dimensions. Defaults to a vector of all ones.

json CoordinateSpace : object

Specifies a coordinate space.

Optional members:
<dimension-name> : [number, string]

Specifies a dimension name and the corresponding scale/unit.

Layout

json DataPanelLayoutType : "4panel" | "xy" | "xz" | "yz" | "3d" | "xy-3d" | "xz-3d" | "yz-3d"

Specifies a layout of 3-d projection and 2-d cross-section views for a layer group.

One of:
"4panel"

2x2 grid layout with xy, xz, 3d, and yz panels.

The top left is an xy cross-section view, the top right is an xz cross-section view, the bottom left is a 3d projection view, and the bottom right is a yz cross-section view.

"xy"

Single cross-section view in the default orientation.

with the first display dimension (red) pointing right, the second display dimension (green) pointing down, and the third display dimension (blue) pointing away from the camera.

"xz"

Single cross-section view with the first display dimension (red) pointing right, the third display dimension (blue) pointing down, and the second display dimension (green) pointing towards the camera.

"yz"

Single cross-section view with the second display dimension (green) pointing down, the third display dimension (blue) pointing left, and the first display dimension (red) pointing away from the camera.

"3d"

Single 3-d projection view.

"xy-3d"
"xz-3d"
"yz-3d"
json HierarchicalLayout : object

Specifies a hierarchical grid of layer groups and data views.

Subtypes:
Required members:
type : string

Indicates the layout type.

Optional members:
flex : number

Indicates the relative size of this layout within its parent stack.

json StackLayout : object

Specifies a row or column of sub-layouts.

Extends:
Required members:
type : "row" | "column"

Indicates the stack direction.

Optional members:
flex : number

Indicates the relative size of this layout within its parent stack.

children : array of HierarchicalLayout
json LayerGroupViewer : object

Specifies a DataPanelLayout for a subset of the layers.

Extends:
Required members:
type : "viewer"
Optional members:
flex : number

Indicates the relative size of this layout within its parent stack.

layers : array of string

Names of layers included in this sub-viewer.

Each name must match the name of a layer specified in the top-level ViewerState.layers.

layout : DataPanelLayoutType | DataPanelLayout = "xy"

Layout of the data panels for this viewer.

json DataPanelLayout : object

Describes the data views to display.

Required members:
type : DataPanelLayoutType

Indicates the layout type.

Optional members:
orthographicProjection : boolean = false

Indicates whether the projection views, if present, uses orthographic rather than perspective projection.