![]() |
Microscopy Image Browser
1.233
|
Public Member Functions | |
IceImarisConnector (imarisApplication, indexingStart) | |
Constructor. More... | |
function | delete () |
Destructor. More... | |
function
castObject = | autocast (obj) |
IceImarisConnector: autocast (public method) More... | |
function
newSpots = | createAndSetSpots (coords, timeIndices, radii, name, color, container) |
Imaris Connector: createAndSetSpots (public method) More... | |
function
success = | closeImaris (varargin) |
IceImarisConnector: closeImaris (public method) More... | |
function | display () |
IceImarisConnector: display (public method) More... | |
function
children = | getAllSurpassChildren (recursive, filter) |
IceImarisConnector: getAllSurpassChildren (public method) More... | |
function stack = | getDataSubVolume (x0, y0, z0, channel, timepoint, dX, dY, dZ, iDataSet) |
IceImarisConnector: getDataSubVolume (public method) More... | |
function stack = | getDataSubVolumeRM (x0, y0, z0, channel, timepoint, dX, dY, dZ, iDataSet) |
Imaris Connector: getDataSubVolumeRM (public method) More... | |
function stack = | getDataVolume (channel, timepoint, iDataset) |
IceImarisConnector: getDataVolume (public method) More... | |
function stack = | getDataVolumeRM (channel, timepoint, iDataset) |
Imaris Connector: getDataVolumeRM (public method) More... | |
function [
minX , maxX , minY , maxY , minZ , maxZ ] = | getExtends () |
IceImarisConnector: getExtends (public method) More... | |
function
version = | getImarisVersionAsInteger () |
IceImarisConnector: getImarisVersionAsInteger (public method) More... | |
function type = | getMatlabDatatype () |
IceImarisConnector: getMatlabDatatype (public method) More... | |
function [
sizeX , sizeY , sizeZ , sizeC , sizeT ] = | getSizes () |
IceImarisConnector: getSizes (public method) More... | |
function [
voxelSizesX , voxelSizesY , voxelSizesZ ] = | getVoxelSizes () |
IceImarisConnector: getVoxelSizes (public method) More... | |
function [
R , isI ] = | getSurpassCameraRotationMatrix () |
IceImarisConnector: getSurpassCameraRotationMatrix (public method) More... | |
function n = | indexingStart () |
IceImarisConnector: indexingStart (public method) More... | |
function | info () |
IceImarisConnector: info (public method) More... | |
function alive = | isAlive () |
IceImarisConnector: isAlive (public method) More... | |
function
varargout = | mapPositionsUnitsToVoxels (varargin) |
IceImarisConnector: mapPositionsUnitsToVoxels (public method) More... | |
function
varargout = | mapPositionsVoxelsToUnits (varargin) |
IceImarisConnector: mapPositionsVoxelsToUnits (public method) More... | |
function | setDataVolume (stack, channel, timepoint) |
IceImarisConnector: setDataVolume (public method) More... | |
function | mib_setDataSubVolume (stack, x0, y0, z0, channel, timepoint, dx, dy, dz) |
IceImarisConnector: mib_setDataSubVolume (public method) More... | |
function | mib_setDataSubVolumeRM (stack, x0, y0, z0, channel, timepoint, dx, dy, dz) |
Imaris Connector: mib_setDataSubVolumeRM (public method) More... | |
function
success = | startImaris (userControl) |
IceImarisConnector: startImaris (public method) More... | |
Static Public Member Functions | |
static function b = | isSupportedPlatform () |
IceImarisConnector: version (public static method) More... | |
static function
rgbaVector = | mapRgbaScalarToVector (rgbaScalar) |
IceImarisConnector: mapRgbaScalarToVector (static public method) More... | |
static function
rgbaScalar = | mapRgbaVectorToScalar (rgbaVector) |
IceImarisConnector: mapRgbaVectorToScalar (static public method) More... | |
static function v = | version () |
IceImarisConnector: version (public static method) More... | |
Public Attributes | |
mImarisApplication = "[]" | |
IceImarisConnector.IceImarisConnector | ( | imarisApplication, | |
indexingStart | |||
) |
Constructor.
References indexingStart().
Referenced by ib_getImarisDataset(), ib_renderModelImaris(), and ib_setImarisDataset().
function derivedType = IceImarisConnector.autocast | ( | IDataItem | ) |
IceImarisConnector: autocast (public method)
DESCRIPTION
This method casts IDataItems to their derived types
SYNOPSIS
derivedType = conn.autocast(IDataItem)
INPUT
IDataItem: an Imaris.IDataItem object
OUTPUT
References mImarisApplication.
Referenced by getAllSurpassChildren().
function success = IceImarisConnector.closeImaris | ( | quiet | ) |
IceImarisConnector: closeImaris (public method)
DESCRIPTION
This method close the Imaris instance associated to the IceImarisConnector object and resets the mImarisApplication property.
SYNOPSIS
(1) success = conn.closeImaris() (2) success = conn.closeImaris(quiet)
INPUT
quiet : (Optional) If 1, Imaris won't pop-up a save dialog and close silently. Default: 0
OUTPUT
success : 1 if closing Imaris was successful, 0 otherwise
References isAlive(), and mImarisApplication.
Referenced by delete(), and startImaris().
function newSpots = IceImarisConnector.createAndSetSpots | ( | coords, | |
timeIndices, | |||
radii, | |||
name, | |||
color, | |||
container | |||
) |
Imaris Connector: createAndSetSpots (public method)
DESCRIPTION
This method creates Spots and adds them to the Surpass Scene.
SYNOPSIS
(1) newSpots = createAndSetSpots(coords, timeIndices, radii, ... name, color) (2) newSpots = createAndSetSpots(coords, timeIndices, radii, ... name, color, container)
INPUT
coords : (nx3) [x y z]n coordinate matrix in dataset units timeIndices : (nx1) vector of spots time indices radii : (nx1) vector of spots radii name : name of the Spots object color : (1x4), (0..1) vector of [R G B A] values container : (optional) if not set, the Spots object is added at the root of the Surpass Scene. Please note that it is the user's responsibility to attach the container to the surpass scene!
OUTPUT
newSpots : the generated Spots object.
References isAlive(), mapRgbaVectorToScalar(), and mImarisApplication.
function IceImarisConnector.delete | ( | ) |
function IceImarisConnector.display | ( | ) |
IceImarisConnector: display (public method)
DESCRIPTION
This method overloads standard display functionality.
SYNOPSIS
conn.display()
INPUT
None
OUTPUT
None
References mImarisApplication.
Referenced by ib_getImarisDataset().
function children = IceImarisConnector.getAllSurpassChildren | ( | recursive, | |
filter | |||
) |
IceImarisConnector: getAllSurpassChildren (public method)
DESCRIPTION
This method returns all children of the surpass scene recursively. Folders (i.e. IDataContainer objects) may be scanned (recursively) but are not returned. Optionally, the returned objects may be filtered by type.
SYNOPSIS
children = conn.getAllSurpassChildren(recursive, filter)
INPUT
recursive: {0 | 1} If 1, folders will be scanned recursively; if 0, only objects at root level will be inspected.
filter : (optional) Filters the children by type. Only the surpass children of the specified type are
<tt>Cells</tt> <tt>ClippingPlane</tt> <tt>Dataset</tt> <tt>Filaments</tt> <tt>Frame</tt> <tt>LightSource</tt> <tt>MeasurementPoints</tt> <tt>Spots</tt> <tt>Surfaces</tt> <tt>SurpassCamera</tt> <tt>Volume</tt>
OUTPUT
children : cell array of objects
References autocast(), and mImarisApplication.
function stack = IceImarisConnector.getDataSubVolume | ( | x0, | |
y0, | |||
z0, | |||
channel, | |||
timepoint, | |||
dX, | |||
dY, | |||
dZ, | |||
iDataSet | |||
) |
IceImarisConnector: getDataSubVolume (public method)
DESCRIPTION
This method returns a data subvolume from Imaris.
SYNOPSIS
(1) stack = conn.getDataSubVolume(x0, y0, z0, channel, timepoint, ... dX, dY, dZ) (2) stack = conn.getDataSubVolume(x0, y0, z0, channel, timepoint, ... dX, dY, dZ, iDataSet)
INPUT
x0, y0, z0: coordinates (0/1-based depending on indexing start) of the top-left vertex of the subvolume to be returned. channel : channel number (0/1-based depending on indexing start) timepoint : timepoint number (0/1-based depending on indexing start) dX, dY, dZ: extension of the subvolume to be returned dataset : (optional) get the data volume from the passed IDataset object instead of current one; if omitted, current dataset (i.e. this.mImarisApplication.GetDataSet()) will be used. This is useful for instance when masking channels.
Coordinates and extension are in voxels and not in units!
subA = conn.getDataSubVolume(x0, y0, z0, 0, 0, dX, dY, dZ); A = conn.getDataVolume(0, 0); A(x0 + 1 : x0 + dX, y0 + 1 : y0 + dY, z0 + 1 : z0 + dZ) === subA
subA = conn.getDataSubVolume(x0, y0, z0, 1, 1, dX, dY, dZ); A = conn.getDataVolume(1, 1); A(x0 : x0 + dX - 1, y0 : y0 + dY - 1, z0 : z0 + dZ - 1) === subA
OUTPUT
stack : data subvolume (3D matrix)
REMARK
This function gets the volume as a 1D array and reshapes it in place. It also performs a type cast to take care of the signed/unsigned int mismatch when transferring data over Ice. The speed-up compared to calling the ImarisXT GetDataVolumeBytes() or GetDataVolumeWords() methods is of the order of 20x.
References isAlive(), and mImarisApplication.
Referenced by getDataSubVolumeRM().
function stack = IceImarisConnector.getDataSubVolumeRM | ( | x0, | |
y0, | |||
z0, | |||
channel, | |||
timepoint, | |||
dX, | |||
dY, | |||
dZ, | |||
iDataSet | |||
) |
Imaris Connector: getDataSubVolumeRM (public method)
DESCRIPTION
This method returns the data subvolume from Imaris in row-major order. Practically, this means that each plane of a 3D stack is transposed and will display in a plot in MATLAB with the same geometry and orientation as in Imaris.
SYNOPSIS
(1) stack = conn.getDataSubVolumeRM(x0, y0, z0, channel, timepoint, ... dX, dY, dZ) (2) stack = conn.getDataSubVolumeRM(x0, y0, z0, channel, timepoint, ... dX, dY, dZ, iDataSet)
Please notice that the coordinates (x0, y0, z0) and the extension (dX, dY, dZ) point to the same subvolume in the Imaris dataset. What changes is the order by which it is returned to MATLAB.
INPUT
x0, y0, z0: coordinates (0/1-based depending on indexing start) of the top-left vertex of the subvolume to be returned channel : channel number (0/1-based depending on indexing start) timepoint : timepoint number (0/1-based depending on indexing start) dX, dY, dZ: extension of the subvolume to be returned dataset : (optional) get the data volume from the passed IDataset object instead of current one; if omitted, current dataset (i.e. this.mImarisApplication.GetDataSet()) will be used. This is useful for instance when masking channels.
Coordinates and extension are in voxels and not in units!
subA = conn.getDataSubVolumeRM(x0, y0, z0, 0, 0, dX, dY, dZ); A = conn.getDataVolumeRM(0, 0); A(y0 + 1 : y0 + dY, x0 + 1 : x0 + dX, z0 + 1 : z0 + dZ) === subA Please notice the x - y dimension swap.
subA = conn.getDataSubVolumeRM(x0, y0, z0, 1, 1, dX, dY, dZ); A = conn.getDataVolumeRM(1, 1); A(y0 : y0 + dY - 1, x0 : x0 + dX - 1, z0 : z0 + dZ - 1) === subA Please notice the x - y dimension swap.
OUTPUT
stack : data subvolume (3D matrix)
References getDataSubVolume(), and isAlive().
function stack = IceImarisConnector.getDataVolume | ( | channel, | |
timepoint, | |||
iDataSet | |||
) |
IceImarisConnector: getDataVolume (public method)
DESCRIPTION
This method returns the data volume from Imaris.
SYNOPSIS
(1) stack = conn.getDataVolume(channel, timepoint) (2) stack = conn.getDataVolume(channel, timepoint, iDataSet)
INPUT
channel : channel number (0/1-based depending on indexing start) timepoint: timepoint number (0/1-based depending on indexing start) iDataSet : (optional) get the data volume from the passed IDataset object instead of current one; if omitted, current dataset (i.e. this.mImarisApplication.GetDataSet()) will be used. This is useful for instance when masking channels.
OUTPUT
stack : data volume (3D matrix)
REMARK
This function gets the volume as a 1D array and reshapes it in place. It also performs a type cast to take care of the signed/unsigned int mismatch when transferring data over Ice. The speed-up compared to calling the ImarisXT GetDataVolumeBytes() or GetDataVolumeWords() methods is of the order of 20x.
References isAlive(), and mImarisApplication.
Referenced by getDataVolumeRM().
function stack = IceImarisConnector.getDataVolumeRM | ( | channel, | |
timepoint, | |||
iDataset | |||
) |
Imaris Connector: getDataVolumeRM (public method)
DESCRIPTION
This method returns the data volume from Imaris in row-major order. Practically, this means that each plane of a 3D stack is transposed and will display in a plot in MATLAB with the same geometry and orientation as in Imaris.
SYNOPSIS
(1) stack = conn.getDataVolumeRM(channel, timepoint) (2) stack = conn.getDataVolumeRM(channel, timepoint, iDataset)
INPUT
channel : channel number (0/1-based depending on indexing start) timepoint: timepoint number (0/1-based depending on indexing start) iDataset : (optional) get the data volume from the passed IDataset object instead of current one; if omitted, current dataset (i.e. this.mImarisApplication.GetDataSet()) will be used. This is useful for instance when masking channels.
OUTPUT
stack : data volume (3D matrix)
References getDataVolume(), and isAlive().
function varargout = IceImarisConnector.getExtends | ( | ) |
IceImarisConnector: getExtends (public method)
DESCRIPTION
This method returns the dataset extends.
SYNOPSIS
(1) extends = conn.getExtends() (2) [minX, maxX, minY, maxY, minZ, maxZ] = conn.getExtends()
INPUT
None
OUTPUT
(1) extends : vector of extends, [minX maxX minY maxY minZ maxZ]
(2) minX : minimum dataset extend in X direction maxX : maximum dataset extend in X direction minY : minimum dataset extend in Y direction maxY : maximum dataset extend in Y direction minZ : minimum dataset extend in Z direction maxZ : maximum dataset extend in Z direction
References isAlive(), and mImarisApplication.
function version = IceImarisConnector.getImarisVersionAsInteger | ( | ) |
IceImarisConnector: getImarisVersionAsInteger (public method)
DESCRIPTION
This static method returns the version number of Imaris as integer:
v = 100000 * Major + 10000 * Minor + 100 * Patch
SYNOPSIS
version = IceImarisConnector.getVersionAsInteger()
INPUT
None
OUTPUT
version : Imaris version as integer
References isAlive(), mImarisApplication, and version().
function type = IceImarisConnector.getMatlabDatatype | ( | ) |
IceImarisConnector: getMatlabDatatype (public method)
DESCRIPTION
This method returns the datatype of the dataset as a MATLAB type (e.g. one of uint8
, uint16
, single
).
SYNOPSIS
type = conn.getMatlabDatatype()
INPUT
None
OUTPUT
type : datatype of the dataset as a MATLAB type: one of one of uint8
, uint16
, single
, or ' if the type is unknown in Imaris.
References isAlive(), and mImarisApplication.
function varargout = IceImarisConnector.getSizes | ( | ) |
IceImarisConnector: getSizes (public method)
DESCRIPTION
This method returns the dataset sizes.
SYNOPSIS
(1) sizes = conn.getSizes() (2) [sizeX, sizeY, sizeZ, sizeC, sizeT] = conn.getSizes()
INPUT
None
OUTPUT
(1) sizes : vector of sizes, [sizeX sizeY sizeZ sizeC sizeT]
(2) sizeX : dataset size X sizeY : dataset size Y sizeZ : number of planes sizeC : number of channels sizeT : number of time points
References isAlive(), and mImarisApplication.
Referenced by mib_setDataSubVolume(), and setDataVolume().
function [ R , isI ] = IceImarisConnector.getSurpassCameraRotationMatrix | ( | ) |
IceImarisConnector: getSurpassCameraRotationMatrix (public method)
DESCRIPTION
This method calculates the rotation matrix that corresponds to current view in the Surpass Scene (from the Camera Quaternion) for the axes with "Origin Bottom Left".
TO DO
Verify the correctness for the other axes orientations.
SYNOPSIS
[R, isI] = conn.getSurpassCameraRotationMatrix()
INPUT
None
OUTPUT
R : (4 x 4) rotation matrix isI : true if the rotation matrix is the Identity matrix, i.e. the camera is perpendicular to the dataset
References mImarisApplication.
function varargout = IceImarisConnector.getVoxelSizes | ( | ) |
IceImarisConnector: getVoxelSizes (public method)
DESCRIPTION
This method returns the X, Y, and Z voxel sizes of the dataset.
SYNOPSIS
(1) voxelSizes = conn.getVoxelSizes() (2) [voxelSizeX voxelSizeY voxelSizeZ] = conn.getVoxelSizes()
INPUT
None
OUTPUT
(1) voxelSizes : vector of voxel sizes, [voxelSizeX voxelSizeY voxelSizeZ]
(2) voxelSizeX : voxel size in X direction voxelSizeY : voxel size in Y direction voxelSizeZ : voxel size in Z direction
References isAlive(), and mImarisApplication.
Referenced by mapPositionsUnitsToVoxels(), and mapPositionsVoxelsToUnits().
function n = IceImarisConnector.indexingStart | ( | ) |
IceImarisConnector: indexingStart (public method)
DESCRIPTION
This method returns the base for indexing.
SYNOPSIS
n = conn.indexingStart()
INPUT
None
OUTPUT
n : either 0 or 1, depending on whether IceImarisConnector's indexing was initialized as 0- or 1- based.
Referenced by IceImarisConnector().
function IceImarisConnector.info | ( | ) |
IceImarisConnector: info (public method)
DESCRIPTION
This methods displays the full paths to the Imaris and ImarisServer executables and the ImarisLib jar archive.
SYNOPSIS
conn.info()
INPUT
None
OUTPUT
None
REMARK
A summary of the object properties is output to console.
References version().
function alive = IceImarisConnector.isAlive | ( | ) |
IceImarisConnector: isAlive (public method)
DESCRIPTION
This method checks whether the (stored) connection to Imaris is still alive.
SYNOPSIS
alive = conn.isAlive()
INPUT
None
OUTPUT
alive : 1 if the connection is still alive, 0 otherwise
References mImarisApplication.
Referenced by closeImaris(), createAndSetSpots(), getDataSubVolume(), getDataSubVolumeRM(), getDataVolume(), getDataVolumeRM(), getExtends(), getImarisVersionAsInteger(), getMatlabDatatype(), getSizes(), getVoxelSizes(), mapPositionsUnitsToVoxels(), mapPositionsVoxelsToUnits(), mib_setDataSubVolume(), mib_setDataSubVolumeRM(), setDataVolume(), and startImaris().
|
static |
IceImarisConnector: version (public static method)
DESCRIPTION
This method checks whether IceImarisConnector is running on a supported platform.
SYNOPSIS
b = IceImarisConnector.isSupportedPlatform()
INPUT
None
OUTPUT
b : 1 if IceImarisConnector is running on a supported platform, 0 otherwise
function varargout = IceImarisConnector.mapPositionsUnitsToVoxels | ( | varargin | ) |
IceImarisConnector: mapPositionsUnitsToVoxels (public method)
DESCRIPTION
This method maps voxel coordinates in dataset units to voxel indices.
SYNOPSIS
(1) pos = conn.mapPositionsUnitsToVoxels(uPos)
(2) pos = ... conn.mapPositionsUnitsToVoxels(uPosX, uPosY, uPosZ)
(3) [posX, posY, posZ] = ... conn.mapPositionsUnitsToVoxels(uPos)
(4) [posX, posY, posZ] = ... conn.mapPositionsUnitsToVoxels(uPosX, uPosY, uPosZ)
INPUT
uPos : (N x 3) matrix containing the X, Y, Z coordinates in dataset units
uPosX : (M x 1) vector containing the X coordinates in dataset units uPosY : (N x 1) vector containing the Y coordinates in dataset units uPosZ : (O x 1) vector containing the Z coordinates in dataset units
M, N, a O will most likely be the same (and must be the same for synopsis 2).
OUTPUT
pos : (N x 3) matrix containing the X, Y, Z voxel indices
posX : (M x 1) vector containing the X voxel indices posY : (N x 1) vector containing the Y voxel indices posZ : (O x 1) vector containing the Z voxel indices
M, N, a O will most likely be the same.
References getVoxelSizes(), isAlive(), and mImarisApplication.
function varargout = IceImarisConnector.mapPositionsVoxelsToUnits | ( | varargin | ) |
IceImarisConnector: mapPositionsVoxelsToUnits (public method)
DESCRIPTION
This method maps voxel indices in dataset units to unit coordinates.
SYNOPSIS
(1) pos = conn.mapPositionsVoxelsToUnits(vPos)
(2) pos = ... conn.mapPositionsVoxelsToUnits(vPosX, vPosY, vPosZ)
(3) [posX, posY, posZ] = ... conn.mapPositionsVoxelsToUnits(vPos)
(4) [posX, posY, posZ] = ... conn.mapPositionsVoxelsToUnits(vPosX, vPosY, vPosZ)
INPUT
vPos : (N x 3) matrix containing the X, Y, Z unit coordinates mapped onto a voxel grid
vPosX : (M x 1) vector containing the X coordinates mapped onto a voxel grid vPosY : (N x 1) vector containing the Y coordinates mapped onto a voxel grid vPosZ : (O x 1) vector containing the Z coordinates mapped onto a voxel grid
M, N, a O will most likely be the same (and must be the same for synopsis 2).
OUTPUT
pos : (N x 3) matrix containing the X, Y, Z coordinates in dataset units
posX : (M x 1) vector containing the X coordinates in dataset units posY : (N x 1) vector containing the Y coordinates in dataset units posZ : (O x 1) vector containing the Z coordinates in dataset units
M, N, a O will most likely be the same.
References getVoxelSizes(), isAlive(), and mImarisApplication.
|
static |
IceImarisConnector: mapRgbaScalarToVector (static public method)
DESCRIPTION
This method maps an uint32 RGBA scalar to an 1-by-4, (0..1) vector
SYNOPSIS
rgbaScalar = mapRgbaVectorToScalar(rgbaScalar)
INPUT
rgbaScalar: int32 scalar number coding for RGBA (for Imaris use)
OUTPUT
rgbaVector: 1-by-4 array with [R G B A] indicating (R)ed, (G)reen, (B)lue, and (A)lpha (=transparency; 0 is opaque)
IMPORTANT REMARK
The scalar returned by ImarisXT is signed int32 (since ImarisLib() is written in Java). This means that if the transparency is not zero (i.e. the value for A in the RGBA scalar is not zero), the returned value WILL BE NEGATIVE (i.e. Imaris pushes an uint32 through ImarisXT and thus Java and this reaches MATLAB as a signed int32)!
The mapRgbaScalarToVector() function will work around this problem by forcing a typecast (and not just a cast!) to int32 passing through a forced cast to int32 (since ImarisXT's .GetColorRGBA() returns a double...).
Please notice that the combined values for R, G, and B will be represented correctly no matter if the RGBA scalar is stored in an int32 or an uint32, therefore the transparency "bug" does not affect the actual colors.
mapRgbaScalarToVector
|
static |
IceImarisConnector: mapRgbaVectorToScalar (static public method)
DESCRIPTION
This method maps an 1-by-4, (0..1) RGBA vector to an uint32 scalar
SYNOPSIS
rgbaScalar = mapRgbaVectorToScalar(rgbaVector)
INPUT
rgbaVector: 1-by-4 array with [R G B A] indicating (R)ed, (G)reen, (B)lue, and (A)lpha (=transparency; 0 is opaque). All values are between 0 and 1.
OUTPUT
rgbaScalar: uint32 scalar number coding for RGBA (for Imaris use)
IMPORTANT REMARK
The way one calculates the RGBA value from an [R G B A] vector (with
uint32([R G B A] * [1 256 256^2 256^3])
(where * is the matrix product). This gives a number between 0 and intmax(uint32
) = 4294967295.
When we pass this number to Imaris through ImarisXT, the Java layer in Ice will mess with this number, since there are no unsigned values in Java and our original uint32 will end up negative if its value is larger than 0.5 * intmax(uint32
): the first bit becomes the sign bit.
The bit that changes is in the transparency (A) byte. Which means, if we change the value for the tranparency, we will end up with an incorrect result in Imaris.
To work around this problem, we must typecast (and not just cast!) the calculated uint32 value to int32 before it is ready to be sent to Imaris (i.e. to be passed to the SetColorRGBA() method of the IDataItem object.
mapRgbaVectorToScalar
Referenced by createAndSetSpots().
function IceImarisConnector.mib_setDataSubVolume | ( | stack, | |
x0, | |||
y0, | |||
z0, | |||
channel, | |||
timepoint, | |||
dx, | |||
dy, | |||
dz | |||
) |
IceImarisConnector: mib_setDataSubVolume (public method)
DESCRIPTION
This method sets the data subvolume to Imaris.
SYNOPSIS
conn.mib_setDataSubVolume(stack, x0, y0, z0, channel, timepoint, dx, dy, dz)
INPUT
stack : 3D array of type uint8, uint16 or single x0, y0, z0 : coordinates (0/1-based depending on indexing start) of the top-left vertex of the subvolume to be sent. channel : channel number (0/1-based depending on indexing start) timepoint : timepoint number (0/1-based depending on indexing start) dX, dY, dZ : extension of the subvolume to be sent
OUTPUT
none
REMARK
The dataset should be present in Imaris. Use this command before using this function, iDataSet = conn.createDataset(class(stack), sz(1), sz(2), sz(3), 1, 1);
References getSizes(), isAlive(), and mImarisApplication.
Referenced by mib_setDataSubVolumeRM().
function IceImarisConnector.mib_setDataSubVolumeRM | ( | stack, | |
x0, | |||
y0, | |||
z0, | |||
channel, | |||
timepoint, | |||
dx, | |||
dy, | |||
dz | |||
) |
Imaris Connector: mib_setDataSubVolumeRM (public method)
DESCRIPTION
This method sends the data subvolume to Imaris in row-major order. Practically, this means that each plane of a 3D stack from MATLAB is transposed before it is pushed back into Imaris to maintain the same geometry and orientation.
SYNOPSIS
conn.mib_setDataSubVolumeRM(stack, x0, y0, z0, channel, timepoint, dx, dy, dz)
INPUT
stack : 3D array of type uint8, uint16 or single x0, y0, z0 : coordinates (0/1-based depending on indexing start) of the top-left vertex of the subvolume to be sent. channel : channel number (0/1-based depending on indexing start) timepoint : timepoint number (0/1-based depending on indexing start) dX, dY, dZ : extension of the subvolume to be sent
OUTPUT
None
REMARK
The dataset should be present in Imaris. Use this command before using this function, iDataSet = conn.createDataset(class(stack), sz(1), sz(2), sz(3), 1, 1);
References isAlive(), and mib_setDataSubVolume().
function IceImarisConnector.setDataVolume | ( | stack, | |
channel, | |||
timepoint | |||
) |
IceImarisConnector: setDataVolume (public method)
DESCRIPTION
This method sets the data volume to Imaris.
SYNOPSIS
conn.setDataVolume(stack, channel, timepoint)
INPUT
stack : 3D array of type uint8, uint16 or single channel : channel number (0/1-based depending on indexing start) timepoint: timepoint number (0/1-based depending on indexing start)
OUTPUT
none
REMARK
If a dataset exists, the X, Y, and Z dimensions must match the ones of the stack being copied in. If no dataset exists, one will be created to fit it with default other values.
References getSizes(), isAlive(), and mImarisApplication.
function success = IceImarisConnector.startImaris | ( | userControl | ) |
IceImarisConnector: startImaris (public method)
DESCRIPTION
This method starts an Imaris instance and stores the ImarisApplication ICE object.
SYNOPSIS
success = conn.startImaris(userControl)
INPUT
userControl : (optional, default = 0) The optional parameter userControl sets the fate of Imaris when the client is closed: if userControl is true (1), Imaris terminates when the IceImarisConnector object (conn) is deleted. If is it set to false (0), Imaris stays open after the IceImarisConnector object (conn) is deleted.
OUTPUT
success : 1 if starting Imaris was successful, 0 otherwise
References closeImaris(), isAlive(), and mImarisApplication.
|
static |
IceImarisConnector: version (public static method)
DESCRIPTION
This method returns the IceImarisConnector version number.
SYNOPSIS
v = IceImarisConnector.version()
INPUT
None
OUTPUT
v : IceImarisConnector version
Referenced by getImarisVersionAsInteger(), info(), and bwdistsc1>VersionNewerThan().
IceImarisConnector.mImarisApplication = "[]" |
Referenced by autocast(), closeImaris(), createAndSetSpots(), display(), getAllSurpassChildren(), getDataSubVolume(), getDataVolume(), getExtends(), getImarisVersionAsInteger(), getMatlabDatatype(), getSizes(), getSurpassCameraRotationMatrix(), getVoxelSizes(), isAlive(), mapPositionsUnitsToVoxels(), mapPositionsVoxelsToUnits(), mib_setDataSubVolume(), setDataVolume(), and startImaris().