ImarisConnector( )
SYNOPSIS
imarisConnector = ImarisConnector( vImarisApplication )
INPUT
vImarisApplication : (optional) if omitted, an ImarisConnector object
is created that is not connected to any Imaris
instance.
Imaris can then be started (and connected) using
the startImaris( ) method, i.e.
imarisConnector.startImaris( )
Alternatively, vImarisApplication can be:
(i) an Imaris Application ID
(as provided by Imaris),
(ii) an ImarisConnector object
(and then the constructor will return a
reference to the passed object),
(iii) an Imaris Application COM object
REMARK
The Imaris Application COM object is stored in the read-only property
mImarisApplication. The mImarisApplication property gives access to
the entire Imaris COM methods. Example:
imarisConnector.mImarisApplication.mSurpassSelection( )
returns the currently selected object in the Imaris surpass scene.
OUTPUT
imarisConnector : an object of class ImarisConnector or a reference
thereof
closeImaris( )
This method closes the Imaris instance
associated to the ImarisConnector and resets the mImarisApplication
property
(more...)
SYNOPSIS
success = imarisConnector.closeImaris( )
INPUT
None
OUTPUT
success : 1 if closing Imaris was successful, 0 otherwise
getAllSurpassChildren( )
This method returns all children of the
surpass scene recursively. Folders (i.e. IDataContainer objects)
may be scanned (recursively) but are not returned
(more...)
SYNOPSIS
children = imarisConnector.getAllSurpassChildren( recursive )
INPUT
recursive: { 0 | 1 } If 1, folders will be scanned recursively;
if 0, only objects at root level will be inspected.
OUTPUT
children : cell array of objects
getDataVolume( )
This method returns the data volume quickly
while working around the COM bug that prevents calling the
ImarisXT mDataSet.GetDataVolume( ) function
(more...)
SYNOPSIS
(1) stack = imarisConnector.getDataVolume( channel, timepoint )
(2) stack = imarisConnector.getDataVolume( channel, timepoint, iDataset )
INPUT
channel : channel number (0-based)
timepoint: timepoint number (0-based)
iDataset : (optional) get the data volume from the passed IDataset
object instead of current one; if omitted, current dataset
(i.e. this.mImarisApplication.mDataset) will be used.
This is useful for instance when masking channels.
OUTPUT
stack : data volume (3D matrix)
getExtends( )
This method returns the dataset
extends
(more...)
SYNOPSIS
extends = imarisConnector.getExtends( )
INPUT
None
OUTPUT
extends : vector of extends, [ minX maxX minY maxY minZ maxZ ]
getImarisVersionAsInteger( )
This method returns the version number of
Imaris as integer
(more...)
SYNOPSIS
version = imarisConnector.getVersionAsInteger( )
INPUT
None
OUTPUT
version : Imaris version as integer
v = 100000 * Major + 10000 * Minor + 100 * Patch
getMatlabDatatype( )
This method returns the datatype of the
dataset as a MATLAB type (e.g. one of 'uint8', 'uint16', 'single' )
(more...)
SYNOPSIS
type = imarisConnector.getMatlabDatatype( )
INPUT
None
OUTPUT
type : datatype of the dataset as a MATLAB type
getSizes( )
This method returns the dataset sizes
(more...)
SYNOPSIS
sizes = imarisConnector.getSizes( )
INPUT
None
OUTPUT
sizes : vector of sizes, [ sizeX sizeY sizeZ sizeC sizeT ]
getVoxelSizes( )
This method returns the X, Y, and Z voxel
sizes of the dataset
(more...)
SYNOPSIS
voxelSizes = imarisConnector.getVoxelSizes( )
INPUT
None
OUTPUT
voxelSizes : vector of voxel sizes, [ voxelX voxelY voxelZ ]
isAlive( )
This method checks whether the (stored)
connection to Imaris is still alive
(more...)
SYNOPSIS
alive = imarisConnector.isAlive( )
INPUT
None
OUTPUT
alive : 1 if the connection is still alive, 0 otherwise
mapPositionsUnitsToVoxels( )
This method maps voxel coordinates in
dataset units to voxel indices
(more...)
SYNOPSIS
(1) pos = imarisConnector.mapPositionsUnitsToVoxels( uPos )
(2) pos = ...
imarisConnector.mapPositionsUnitsToVoxels( uPosX, uPosY, uPosZ )
(3) [ posX, posY, posZ ] = ...
imarisConnector.mapPositionsUnitsToVoxels( uPos )
(4) [ posX, posY, posZ ] = ...
imarisConnector.mapPositionsUnitsToVoxels( uPosX, uPosY, uPosZ )
INPUT
Synopses 1 and 3:
uPos : ( N x 3 ) matrix containing the X, Y, Z coordinates in dataset
units
Synopses 2 and 4:
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
Synopses 1 and 2:
pos : ( N x 3 ) matrix containing the X, Y, Z voxel indices
Synopses 3 and 4:
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.
mapPositionsVoxelsToUnits( )
This method maps voxel indices in dataset
units to unit coordinates
(more...)
SYNOPSIS
(1) pos = imarisConnector.mapPositionsVoxelsToUnits( vPos )
(2) pos = ...
imarisConnector.mapPositionsVoxelsToUnits( vPosX, vPosY, vPosZ )
(3) [ posX, posY, posZ ] = ...
imarisConnector.mapPositionsVoxelsToUnits( vPos )
(4) [ posX, posY, posZ ] = ...
imarisConnector.mapPositionsVoxelsToUnits( vPosX, vPosY, vPosZ )
INPUT
Synopses 1 and 3:
vPos : ( N x 3 ) matrix containing the X, Y, Z unit coordinates
mapped onto a voxel grid
Synopses 2 and 4:
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
Synopses 1 and 2:
pos : ( N x 3 ) matrix containing the X, Y, Z coordinates in
dataset units
Synopses 3 and 4:
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.
setDataVolume( ) [only in IceImarisConnector]
This method sets the data volume to Imaris
(more...)
SYNOPSIS
stack = imarisConnector.setDataVolume( stack, channel, timepoint )
INPUT
stack : 3D array of type uint8, uint16 or single
channel : channel number (0-based)
timepoint: timepoint number (0-based)
OUTPUT
success : 1 if setting the data volume was successful, 0 otherwise
startImaris( )
This method starts an Imaris instance and
stores the ImarisApplication object
(more...)
SYNOPSIS
success = imarisConnector.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 last instance of
a COM object is deleted. If is it set to false (0),
Imaris stays open after the client is closed.
OUTPUT
success : 1 if starting Imaris was successful, 0 otherwise
getVersion( ) [static]
This method returns the version of the
ImarisConnector library
(more...)
SYNOPSIS
version = imarisConnector.getVersion( )
INPUT
None
OUTPUT
version : version of the ImarisConnector library (char)