IDataSet Interface Reference

import "Imaris.idl";

Public Types

typedef enum IDataSet::tType_ tType
enum  tType_ { eTypeUnknown = 0, eTypeUInt8 = 1, eTypeUInt16 = 2, eTypeFloat = 3 }

Public Member Functions

HRESULT Clone ([out, retval] IDataSet **aDataSet)
HRESULT Create ([in] tType aType,[in] ULONG aSizeX,[in] ULONG aSizeY,[in, defaultvalue(1)] ULONG aSizeZ,[in, defaultvalue(1)] ULONG aSizeC,[in, defaultvalue(1)] ULONG aSizeT)
HRESULT CreateDataBuffer ([in] ULONG aSizeZ,[out, retval] IDataBuffer **aDataBuffer)
HRESULT Crop ([in] LONG aIndexX,[in] ULONG aSizeX,[in] LONG aIndexY,[in] ULONG aSizeY,[in] LONG aIndexZ,[in] ULONG aSizeZ,[in] LONG aIndexC,[in] ULONG aSizeC,[in] LONG aIndexT,[in] ULONG aSizeT)
HRESULT GetChannelColor ([in] ULONG aIndexC,[out] FLOAT *aR,[out] FLOAT *aG,[out] FLOAT *aB,[out] FLOAT *aA)
HRESULT GetChannelColorABGR ([in] ULONG aIndexC,[out, retval] OLE_COLOR *aColorABGR)
HRESULT GetChannelColorTable ([in] ULONG aIndexC,[out] VARIANT *aColorRGB,[out] FLOAT *aA)
HRESULT GetChannelDescription ([in] ULONG aIndexC,[out, retval] BSTR *aDescription)
HRESULT GetChannelName ([in] ULONG aIndexC,[out, retval] BSTR *aName)
HRESULT GetChannelRange ([in] ULONG aIndexC,[out] FLOAT *aMin,[out] FLOAT *aMax)
HRESULT GetData ([out, retval] VARIANT *aData)
HRESULT GetDataSlice ([in] ULONG aIndexZ,[in] ULONG aIndexC,[in] ULONG aIndexT,[out, retval] VARIANT *aData)
HRESULT GetDataSubSlice ([in] ULONG aIndexX,[in] ULONG aIndexY,[in] ULONG aIndexZ,[in] ULONG aIndexC,[in] ULONG aIndexT,[in] ULONG aSizeX,[in] ULONG aSizeY,[out, retval] VARIANT *aData)
HRESULT GetDataSubVolume ([in] ULONG aIndexX,[in] ULONG aIndexY,[in] ULONG aIndexZ,[in] ULONG aIndexC,[in] ULONG aIndexT,[in] ULONG aSizeX,[in] ULONG aSizeY,[in] ULONG aSizeZ,[out, retval] VARIANT *aData)
HRESULT GetDataSubVolumeAs1DArray ([in] ULONG aIndexX,[in] ULONG aIndexY,[in] ULONG aIndexZ,[in] ULONG aIndexC,[in] ULONG aIndexT,[in] ULONG aSizeX,[in] ULONG aSizeY,[in] ULONG aSizeZ,[out, retval] VARIANT *aData)
HRESULT GetDataVolume ([in] ULONG aIndexC,[in] ULONG aIndexT,[out, retval] VARIANT *aData)
HRESULT GetDataVolumeAs1DArray ([in] ULONG aIndexC,[in] ULONG aIndexT,[out, retval] VARIANT *aData)
HRESULT GetParameter ([in] BSTR aParameterSection,[in] BSTR aParameterName,[out, retval] BSTR *aParameterValue)
HRESULT GetTimePoint ([in] ULONG aIndexT,[out, retval] BSTR *aTimePoint)
HRESULT Redraw ()
HRESULT Resize ([in] LONG aIndexX,[in] ULONG aSizeX,[in] LONG aIndexY,[in] ULONG aSizeY,[in] LONG aIndexZ,[in] ULONG aSizeZ,[in] LONG aIndexC,[in] ULONG aSizeC,[in] LONG aIndexT,[in] ULONG aSizeT)
HRESULT SetChannelColor ([in] ULONG aIndexC,[in] FLOAT aR,[in] FLOAT aG,[in] FLOAT aB,[in] FLOAT aA)
HRESULT SetChannelColorABGR ([in] ULONG aIndexC,[in] OLE_COLOR aColorABGR)
HRESULT SetChannelColorTable ([in] ULONG aIndexC,[in] VARIANT aColorRGB,[in] FLOAT aA)
HRESULT SetChannelDescription ([in] ULONG aIndexC,[in] BSTR aDescription)
HRESULT SetChannelName ([in] ULONG aIndexC,[in] BSTR aName)
HRESULT SetChannelRange ([in] ULONG aIndexC,[in] FLOAT aMin,[in] FLOAT aMax)
HRESULT SetData ([in] VARIANT aData)
HRESULT SetDataBuffer ([in] IDataBuffer *aDataBuffer,[in] ULONG aIndexZ,[in] ULONG aIndexC,[in] ULONG aIndexT,[in, defaultvalue(-1)] VARIANT_BOOL aRedraw)
HRESULT SetDataBufferRedraw ([in] IDataBuffer *aDataBuffer,[in] ULONG aIndexZ,[in] ULONG aIndexC,[in] ULONG aIndexT,[in] FLOAT aFramesPerSecond)
HRESULT SetDataSlice ([in] VARIANT aData,[in, defaultvalue(0)] ULONG aIndexZ,[in, defaultvalue(0)] ULONG aIndexC,[in, defaultvalue(0)] ULONG aIndexT)
HRESULT SetDataSubSlice ([in] VARIANT aData,[in] ULONG aIndexX,[in] ULONG aIndexY,[in] ULONG aIndexZ,[in] ULONG aIndexC,[in] ULONG aIndexT)
HRESULT SetDataSubVolume ([in] VARIANT aData,[in] ULONG aIndexX,[in] ULONG aIndexY,[in] ULONG aIndexZ,[in] ULONG aIndexC,[in] ULONG aIndexT)
HRESULT SetDataSubVolumeAs1DArray ([in] VARIANT aData,[in] ULONG aIndexX,[in] ULONG aIndexY,[in] ULONG aIndexZ,[in] ULONG aIndexC,[in] ULONG aIndexT,[in] ULONG aSizeX,[in] ULONG aSizeY,[in] ULONG aSizeZ)
HRESULT SetDataVolume ([in] VARIANT aData,[in, defaultvalue(0)] ULONG aIndexC,[in, defaultvalue(0)] ULONG aIndexT)
HRESULT SetDataVolumeAs1DArray ([in] VARIANT aData,[in, defaultvalue(0)] ULONG aIndexC,[in, defaultvalue(0)] ULONG aIndexT)
HRESULT SetParameter ([in] BSTR aParameterSection,[in] BSTR aParameterName,[in] BSTR aParameterValue)
HRESULT SetTimePoint ([in] ULONG aIndexT,[in] BSTR aTimePoint)

Properties

FLOAT mExtendMaxX [get, set]
FLOAT mExtendMaxY [get, set]
FLOAT mExtendMaxZ [get, set]
FLOAT mExtendMinX [get, set]
FLOAT mExtendMinY [get, set]
FLOAT mExtendMinZ [get, set]
VARIANT_BOOL mModified [get, set]
ULONG mSizeC [get, set]
ULONG mSizeT [get, set]
ULONG mSizeX [get, set]
ULONG mSizeY [get, set]
ULONG mSizeZ [get, set]
tType mType [get, set]
BSTR mUnit [get, set]

Detailed Description

This class allows the exchange of image raw data and parameters like the voxel size. A client may create many instances of a DataSet, but can only visualize one instance at a time in Imaris. The following example creates a 256x256x32 dataset with one channel and one time point. Since we don't initialize the data, the resulting stack is a black image.

  %%% Start Imaris and make it visible
  vImarisApplication=actxserver('Imaris.Application');
  vImarisApplication.mVisible=true;
  %%% Create a new dataset and visualize it by Imaris
  vDataSet=vImarisApplication.mFactory.CreateDataSet;
  vDataSet.Create('eTypeUInt8',256,256,32,1,1);
  vImarisApplication.mDataSet=vDataSet;
 

Member Typedef Documentation

Data type of the voxel intensities.


Member Enumeration Documentation

Data type of the voxel intensities.

Enumerator:
eTypeUnknown 

Unknown data type. Normally a dataset can not have this type. The data type of a dataset is only unknown, if the dataset has not yet been created.

eTypeUInt8 

8 bit unsigned integer

eTypeUInt16 

16 bit unsigned integer

eTypeFloat 

32 bit float


Member Function Documentation

HRESULT IDataSet::Clone ( [out, retval] IDataSet **  aDataSet  ) 

Creates an exact copy of the dataset.

Parameters:
aDataSet [out] Cloned dataset
 %% The following MATLAB code creates an exact copy of current dataset
 aDataSet=vImarisApplication.mDataSet.Clone;
 
HRESULT IDataSet::Create ( [in] tType  aType,
[in] ULONG  aSizeX,
[in] ULONG  aSizeY,
[in, defaultvalue(1)] ULONG  aSizeZ,
[in, defaultvalue(1)] ULONG  aSizeC,
[in, defaultvalue(1)] ULONG  aSizeT 
)

Create a new dataset with specified size (allocates the required memory and initializes all voxels with zero). Use subsequent calls of "SetDataSlice" or "SetDataVolume" to set the voxel intensities.

Parameters:
aType [in] Type of the data: one of 'eTypeUnknown', 'eTypeUInt8', 'eTypeUInt16', 'eTypeFloat'
aSizeX [in] Dimension of the dataset along X
aSizeY [in] Dimension of the dataset along Y
aSizeZ [in] (optional, default=1) Dimension of the dataset along Z
aSizeC [in] (optional, default=1) Number of channels
aSizeT [in] (optional, default=1) Number of time points
 %% The following MATLAB code creates a new dataset
 aType='eTypeUInt8';
 aSizeX=128;
 aSizeY=128;
 aSizeZ=10;
 aSizeC=3;
 aSizeT=5;
 vImarisApplication.mDataSet.Create(aType,aSizeX,aSizeY,aSizeZ,aSizeC,aSizeT);
 
HRESULT IDataSet::CreateDataBuffer ( [in] ULONG  aSizeZ,
[out, retval] IDataBuffer **  aDataBuffer 
)

Create a data buffer with a specified number of slices, which matches to the current dataset.

Parameters:
aSizeZ [in] Number of slices
aDataBuffer [out] New data buffer object
 %% The following MATLAB code creates a databuffer for current dataset
 aSizeZ=25;
 aDataBuffer=vImarisApplication.mDataSet.CreateDataBuffer(aSizeZ);
 
HRESULT IDataSet::Crop ( [in] LONG  aIndexX,
[in] ULONG  aSizeX,
[in] LONG  aIndexY,
[in] ULONG  aSizeY,
[in] LONG  aIndexZ,
[in] ULONG  aSizeZ,
[in] LONG  aIndexC,
[in] ULONG  aSizeC,
[in] LONG  aIndexT,
[in] ULONG  aSizeT 
)

Cut out a specified region from the dataset, or enlarge the dataset. Set the position index to a negative value to prepend, or increase the size to append additional voxels. New voxels outside of the current data are set to 0. Both the Crop-method and the Resize-method do exactly the same. Index counting starts with 0.

Parameters:
aIndexX [in] Starting position in X (integer)
aSizeX [in] Number of pixels in X direction (integer)
aIndexY [in] Starting position in Y (integer)
aSizeY [in] Number of pixels in Y direction (integer)
aIndexZ [in] Starting position in Z (integer)
aSizeZ [in] Number of pixels in Z direction (integer)
aIndexC [in] Starting channel index (integer)
aSizeC [in] Number of channels (integer)
aIndexT [in] Starting time point (integer)
aSizeT [in] Number of time points (integer)
 %% The following MATLAB code crops current dataset (in place)
 aIndexX=25;
 aSizeX=200;
 aIndexY=50;
 aSizeY=170;
 aIndexZ=5;
 aSizeZ=20;
 aIndexC=0;
 aSizeC=3;
 aIndexT=30;
 aSizeT=20;
 vImarisApplication.mDataSet.Crop(aIndexX,aSizeX,aIndexY,aSizeY,aIndexZ,aSizeZ,aIndexC,aSizeC,aIndexT,aSizeT);
 
HRESULT IDataSet::GetChannelColor ( [in] ULONG  aIndexC,
[out] FLOAT *  aR,
[out] FLOAT *  aG,
[out] FLOAT *  aB,
[out] FLOAT *  aA 
)

Get the base color of a channel

Parameters:
aIndexC [in] Channel index (counting starts with 0)
aR [in] The red component from the color [0..1]
aG [in] The green component from the color [0..1]
aB [in] The blue component from the color [0..1]
aA [in] The alpha component (1-opacity) from the color [0..1]
 %% The following MATLAB code gets the base color of the specified channel
 aIndexC=2;
 [aR,aG,aB,aA]=vImarisApplication.mDataSet.SetChannelColor(aIndexC)
 aR =
    0.30
 aG =
    0.72
 aB =
    0.91
 aA =
    0.50
 
HRESULT IDataSet::GetChannelColorABGR ( [in] ULONG  aIndexC,
[out, retval] OLE_COLOR *  aColorABGR 
)

Get the base color of a channel.

Parameters:
aIndexC [in] Channel index (counting starts with 0)
aColorABGR [out] Return value. 32-bit packed color value. aabbggrr (alpha, blue, green, red)
 %% The following MATLAB code gets the base color of the specified channel
 aIndexC=0;
 aColorABGR=vImarisApplication.mDataSet.SetChannelColorABGR(aIndexC)
 aColorABGR =
    255
 
HRESULT IDataSet::GetChannelColorTable ( [in] ULONG  aIndexC,
[out] VARIANT *  aColorRGB,
[out] FLOAT *  aA 
)

Get the base color of a channel.

Parameters:
aIndexC [in] Channel index (counting starts with 0)
aColorRGB [out] Array or r, g, b float values (2D array)
aA [out] The alpha component (1-opacity) from the color [0..1]
 %% The following MATLAB code gets the base color of the specified channel
 aIndexC=2;
 [aColorRGB,aA]=vImarisApplication.mDataSet.GetChannelColorTable(aIndexC)
 aColorRGB =
    0.3000    0.5000    0.7000
 aA =
    0.7000
 
HRESULT IDataSet::GetChannelDescription ( [in] ULONG  aIndexC,
[out, retval] BSTR *  aDescription 
)

Get the description of a channel.

Parameters:
aIndexC [in] Channel index (counting starts with 0)
aDescription [out] Channel name (string)
 %% The following MATLAB code gets the description of the specified channel
 aIndexC=1;
 aDescription=vImarisApplication.mDataSet.GetChannelDescription(aIndexC)
 aDescription =
    F-actin was labeled...
 
HRESULT IDataSet::GetChannelName ( [in] ULONG  aIndexC,
[out, retval] BSTR *  aName 
)

Get the name of a channel (index counting starts with 0).

Parameters:
aIndexC [in] Channel index (counting starts with 0)
aName [out] Channel name (string)
 %% The following MATLAB code gets the name of the specified channel
 aIndexC=1;
 aName=vImarisApplication.mDataSet.GetChannelName(aIndexC)
 aName =
    X-Rhodamine actin (red)
 
HRESULT IDataSet::GetChannelRange ( [in] ULONG  aIndexC,
[out] FLOAT *  aMin,
[out] FLOAT *  aMax 
)

Get the display range of a channel.

Parameters:
aIndexC [in] Channel index (counting starts with 0)
aMin [in] Lower intensity bound (float)
aMax [in] Upper intensity bound (float)
 %% The following MATLAB code gets the display range of the specified channel
 aIndexC=1;
 [aMin,aMax]=vImarisApplication.mDataSet.GetChannelRange(aIndexC)
 aMin
    0
 aMax
    255
 
HRESULT IDataSet::GetData ( [out, retval] VARIANT *  aData  ) 

Returns a 5d-array of uint8, uint16, or float. Please note that Matlab 7 has an issue in receiving array with more than 2 dimensions. Use "GetDataSlice" instead. Be careful when using this method with huge data sets. The data must fit into a continuous memory block, and in a 32-bit system the COM-server as well as the client will have a serious problem if the size exceeds 512 MB.

Parameters:
aData [out] Return value (5d-array)
 %% The following MATLAB code gets a 5D data block from current dataset (THIS WON'T WORK IN MATLAB 7: USE GetDataSlice INSTEAD)
 aData=vImarisApplication.mDataSet.GetData;
 
HRESULT IDataSet::GetDataSlice ( [in] ULONG  aIndexZ,
[in] ULONG  aIndexC,
[in] ULONG  aIndexT,
[out, retval] VARIANT *  aData 
)

Returns a 2D array (xy-slice) of uint8, uint16, or float.

Parameters:
aIndexZ [in] Slice index (counting starts with 0)
aIndexC [in] Channel index (counting starts with 0)
aIndexT [in] Time point (counting starts with 0)
aData [out] Return value (2D array)
 %% The following MATLAB code gets a 2D data slice from current dataset
 aIndexZ=10;
 aIndexC=0;
 aIndexT=10;
 aData=vImarisApplication.mDataSet.GetDataSlice(aIndexZ,aIndexC,aIndexT);
 
HRESULT IDataSet::GetDataSubSlice ( [in] ULONG  aIndexX,
[in] ULONG  aIndexY,
[in] ULONG  aIndexZ,
[in] ULONG  aIndexC,
[in] ULONG  aIndexT,
[in] ULONG  aSizeX,
[in] ULONG  aSizeY,
[out, retval] VARIANT *  aData 
)

Get the intensities of a rectangular region of an xy-slice. The size of the specified rectangle must fit completely into the size of the dataset. See also "GetDataSlice".

Parameters:
aIndexX [in] Source index for left corner (counting starts with 0)
aIndexY [in] Source index for bottom corner index (counting starts with 0)
aIndexZ [in] Source index for slice (counting starts with 0)
aIndexC [in] Channel index (counting starts with 0)
aIndexT [in] Time point (counting starts with 0).
aSizeX [in] Width of the rectangle
aSizeY [in] Height of the rectangle
aData [out] 2D array of uint8, uint16, or float (32 bit).
 %% The following MATLAB code copies a 2D slice with the size 200 x 150 from
 %% the location X=50, y=10, Z=30, C=0, T=0, and displays the image.
 %% (the example works, if the "retina.ims" dataset is loaded)
 vData = vImarisApplication.mDataSet.GetDataSubSlice(50, 10, 30, 0, 0, 200, 150);
 imshow(vData);
 
HRESULT IDataSet::GetDataSubVolume ( [in] ULONG  aIndexX,
[in] ULONG  aIndexY,
[in] ULONG  aIndexZ,
[in] ULONG  aIndexC,
[in] ULONG  aIndexT,
[in] ULONG  aSizeX,
[in] ULONG  aSizeY,
[in] ULONG  aSizeZ,
[out, retval] VARIANT *  aData 
)

Get the intensities of a 3d sub-region. The size of the specified block must fit completely into the size of the dataset. See also "GetDataVolume".

Please note: Matlab 7.0 has an issue with receving arrays with more than 2 dimensions. This might be solved for future versions of Matlab (or not). Nevertheless The method works for C#, C++, or Java. In order to transfer a 3D block to Matlab, use "GetDataSubVolumeAs1DArray" instead, and then use the Matlab function "reshape".

Parameters:
aIndexX [in] Source index for left corner (counting starts with 0)
aIndexY [in] Source index for bottom corner index (counting starts with 0)
aIndexZ [in] Source index for slice (counting starts with 0)
aIndexC [in] Channel index (counting starts with 0)
aIndexT [in] Time point (counting starts with 0).
aSizeX [in] Width of the block
aSizeY [in] Height of the block
aSizeZ [in] Depth of the block
aData [out] 3D array of uint8, uint16, or float (32 bit).
 %% The following MATLAB code copies a 2D slice with the size 200 x 150 x 20 from
 %% the location X=50, y=10, Z=30, C=0, T=0, and displays the image.
 %% (the example works, if the "retina.ims" dataset is loaded)
 vData = vImarisApplication.mDataSet.GetDataSubVolume(50, 10, 30, 0, 0, 200, 150, 20);
 
HRESULT IDataSet::GetDataSubVolumeAs1DArray ( [in] ULONG  aIndexX,
[in] ULONG  aIndexY,
[in] ULONG  aIndexZ,
[in] ULONG  aIndexC,
[in] ULONG  aIndexT,
[in] ULONG  aSizeX,
[in] ULONG  aSizeY,
[in] ULONG  aSizeZ,
[out, retval] VARIANT *  aData 
)

Get the intensities of a 3d sub-region. The size of the specified block must fit completely into the size of the dataset. See also "GetDataSubVolume".

Parameters:
aIndexX [in] Source index for left corner (counting starts with 0)
aIndexY [in] Source index for bottom corner index (counting starts with 0)
aIndexZ [in] Source index for slice (counting starts with 0)
aIndexC [in] Channel index (counting starts with 0)
aIndexT [in] Time point (counting starts with 0).
aSizeX [in] Width of the block
aSizeY [in] Height of the block
aSizeZ [in] Depth of the block
aData [out] 1D array of uint8, uint16, or float (32 bit). Its length is the product of the specified sizes.
 %% The following MATLAB code copies a 3D block with the size 200 x 128 x 40 from
 %% the location X=10, y=10, Z=10 from the first to the secon channel of the dataset.
 %% (the example works, if the "retina.ims" dataset is loaded)
 vData1D = vImarisApplication.mDataSet.GetDataSubVolumeAs1DArray(10, 10, 10, 0, 0, 200, 128, 40);
 vData3D = reshape(vData1D, 200, 128, 40);
 vImarisApplication.mDataSet.SetDataSubVolume(vData3D, 10, 10, 10, 1, 0);
 
HRESULT IDataSet::GetDataVolume ( [in] ULONG  aIndexC,
[in] ULONG  aIndexT,
[out, retval] VARIANT *  aData 
)

Returns a 3D array (xyz-volume) of uint8, uint16, or float. Please note that Matlab 7 has an issue in receiving array with more than 2 dimensions. Use "GetDataSlice" instead.

Parameters:
aIndexC [in] Channel index (counting starts with 0)
aIndexT [in] Time point (counting starts with 0)
aData [out] Return value (3D array)
 %% The following MATLAB code gets a 3D data volume from current dataset (THIS WON'T WORK IN MATLAB 7: USE GetDataSlice INSTEAD)
 aIndexC=0;
 aIndexT=10;
 aData=vImarisApplication.mDataSet.GetDataVolume(aIndexC,aIndexT);
 
HRESULT IDataSet::GetDataVolumeAs1DArray ( [in] ULONG  aIndexC,
[in] ULONG  aIndexT,
[out, retval] VARIANT *  aData 
)

Returns a 1D array (N = X x Y x Z) of uint8, uint16, or float.

Parameters:
aIndexC [in] Channel index (counting starts with 0)
aIndexT [in] Time point (counting starts with 0)
aData [out] Return value (1D array)
 %% The following MATLAB code gets a 1D data array from current dataset
 aIndexC=0;
 aIndexT=10;
 aData=vImarisApplication.mDataSet.GetDataVolumeAs1DArray(aIndexC,aIndexT);
 
HRESULT IDataSet::GetParameter ( [in] BSTR  aParameterSection,
[in] BSTR  aParameterName,
[out, retval] BSTR *  aParameterValue 
)

Get a parameter.

Parameters:
aParameterSection [in] Name of the parameter section (string)
aParameterName [in] Name of the parameter (string)
aParameterValue [out] Value of the parameter (string)
 %% The following MATLAB code sets a parameter for the dataset
 aParameterSection='Image';
 aParameterName='NumericalAperture';
 aParameterValue=vImarisApplication.mDataSet.GetParameter(aParameterSection,aParameterName)
 aParameterValue =
    1.4
 
HRESULT IDataSet::GetTimePoint ( [in] ULONG  aIndexT,
[out, retval] BSTR *  aTimePoint 
)

Get the time calibration.

Parameters:
aIndexT [in] Time index (index counting starts with 0)
aTimePoint [out] Time calibration "YYYY-MM-DD HH:MM:SS.SSS".
 %% The following MATLAB code gets the time calibration for the specified time point
 aIndexT=25;
 aTimePoint=vImarisApplication.mDataSet.GetTimePoint(aIndexT)
 aTimePoint =
    2006-05-11 13:30:00.000
 
HRESULT IDataSet::Redraw (  ) 

Redraw. In general it's not necessary to force a refresh of the display. It might only be necessary if a "SetDataBuffer" was called.

 %% The following MATLAB code forces a display refresh
 vImarisApplication.mDataSet.Redraw;
 
HRESULT IDataSet::Resize ( [in] LONG  aIndexX,
[in] ULONG  aSizeX,
[in] LONG  aIndexY,
[in] ULONG  aSizeY,
[in] LONG  aIndexZ,
[in] ULONG  aSizeZ,
[in] LONG  aIndexC,
[in] ULONG  aSizeC,
[in] LONG  aIndexT,
[in] ULONG  aSizeT 
)

Cut out a specified region from the dataset, or enlarge the dataset. Set the position index to a negative value to prepend, or increase the size to append additional voxels. New voxels outside of the current data are set to 0. Both the Crop-method and the Resize-method do exactly the same. Index counting starts with 0.

Parameters:
aIndexX [in] Starting position in X (integer)
aSizeX [in] Number of pixels in X direction (integer)
aIndexY [in] Starting position in Y (integer)
aSizeY [in] Number of pixels in Y direction (integer)
aIndexZ [in] Starting position in Z (integer)
aSizeZ [in] Number of pixels in Z direction (integer)
aIndexC [in] Starting channel index (integer)
aSizeC [in] Number of channels (integer)
aIndexT [in] Starting time point (integer)
aSizeT [in] Number of time points (integer)
 %% The following MATLAB code crops current dataset (in place)
 aIndexX=25;
 aSizeX=200;
 aIndexY=50;
 aSizeY=170;
 aIndexZ=5;
 aSizeZ=20;
 aIndexC=0;
 aSizeC=3;
 aIndexT=30;
 aSizeT=20;
 vImarisApplication.mDataSet.Resize(aIndexX,aSizeX,aIndexY,aSizeY,aIndexZ,aSizeZ,aIndexC,aSizeC,aIndexT,aSizeT);
 
HRESULT IDataSet::SetChannelColor ( [in] ULONG  aIndexC,
[in] FLOAT  aR,
[in] FLOAT  aG,
[in] FLOAT  aB,
[in] FLOAT  aA 
)

Set the base color of a channel

Parameters:
aR [in] The red component from the color [0..1]
aG [in] The green component from the color [0..1]
aB [in] The blue component from the color [0..1]
aA [in] The alpha component (1-opacity) from the color [0..1]
aIndexC [in] Channel index (counting starts with 0)
 %% The following MATLAB code sets the base color of the specified channel
 aIndexC=2;
 aR=0.30;
 aG=0.72;
 aB=0.91;
 aA=0.50;
 vImarisApplication.mDataSet.SetChannelColor(aIndexC,aR,aG,aB,aA)
 
HRESULT IDataSet::SetChannelColorABGR ( [in] ULONG  aIndexC,
[in] OLE_COLOR  aColorABGR 
)

Set the base color of a channel

Parameters:
aColorABGR [in] 32-bit packed color value: aabbggrr (alpha, blue, green, red)
aIndexC [in] Channel index (counting starts with 0)
 %% The following MATLAB code sets the base color of the specified channel
 aIndexC=0;
 aColorABGR=255;
 vImarisApplication.mDataSet.SetChannelColorABGR(aIndexC,aColorABGR);
 
HRESULT IDataSet::SetChannelColorTable ( [in] ULONG  aIndexC,
[in] VARIANT  aColorRGB,
[in] FLOAT  aA 
)

Set the base color of a channel.

Parameters:
aIndexC [in] Channel index (counting starts with 0)
aColorRGB [in] Array or r, g, b float values (2D array)
aA [in] The alpha component (1-opacity) from the color [0..1]
 %% The following MATLAB code sets the base color of the specified channel
 aIndexC=2;
 aColorRGB=[0.3 0.5 0.7];
 aA=0.7;
 vImarisApplication.mDataSet.SetChannelColorTable(aIndexC,aColorRGB,aA);
 
HRESULT IDataSet::SetChannelDescription ( [in] ULONG  aIndexC,
[in] BSTR  aDescription 
)

Set the description of a channel.

Parameters:
aIndexC [in] Channel index (counting starts with 0)
aDescription [in] Channel description (string)
 %% The following MATLAB code sets the name of the specified channel
 aIndexC=1;
 aDescription='F-actin was labeled...';
 vImarisApplication.mDataSet.SetChannelDescription(aIndexC,aDescription);
 
HRESULT IDataSet::SetChannelName ( [in] ULONG  aIndexC,
[in] BSTR  aName 
)

Set the name of a channel.

Parameters:
aIndexC [in] Channel index (counting starts with 0)
aName [in] Channel name (string)
 %% The following MATLAB code sets the name of the specified channel
 aIndexC=1;
 aName='X-Rhodamine actin (red)';
 vImarisApplication.mDataSet.SetChannelName(aIndexC,aName);
 
HRESULT IDataSet::SetChannelRange ( [in] ULONG  aIndexC,
[in] FLOAT  aMin,
[in] FLOAT  aMax 
)

Set the display range of a channel.

Parameters:
aIndexC [in] Channel index (counting starts with 0)
aMin [in] Lower intensity bound (float)
aMax [in] Upper intensity bound (float)
 %% The following MATLAB code sets the display range of the specified channel
 aIndexC=1;
 aMin=23;
 aMax=174;
 vImarisApplication.mDataSet.SetChannelRange(aIndexC,aMin,aMax);
 
HRESULT IDataSet::SetData ( [in] VARIANT  aData  ) 

Set the intensities of a whole dataset. The size of the dataset will be adjusted to the size of "aData". Use this method with caution: if the client has to transfer huge data sets, it will allocate the data in a single memory block. This might cause memory issues for the client as well as for the server. If data exceeds 512 MB on a 32-bit system use subsequent calls of "SetDataSlice" or "SetDataVolume".

Parameters:
aData [in] Array (1..5 dimensions) of uint8, uint16, or float (32 bit).
 %% The following MATLAB code sets the intensities of a whole dataset
 aData=zeros(100,100,50,'uint8');
 vImarisApplication.mDataSet.SetData(aData);
 
HRESULT IDataSet::SetDataBuffer ( [in] IDataBuffer aDataBuffer,
[in] ULONG  aIndexZ,
[in] ULONG  aIndexC,
[in] ULONG  aIndexT,
[in, defaultvalue(-1)] VARIANT_BOOL  aRedraw 
)

Copy the content of the data buffer into the dataset.

Parameters:
aDataBuffer [in] The data source (must fit to the size of the current dataset)
aIndexZ [in] Slice index destination (counting starts with 0)
aIndexC [in] Channel index destination (counting starts with 0)
aIndexT [in] Time point destination (counting starts with 0)
aRedraw [in] (Optional, default=-1) Set it to true (1) to force an immediate redraw. Call "Redraw" later if it's false.
 %% The following MATLAB code copies the content of the databuffer into the dataset
 aSizeZ=25;
 aIndexC=0;
 aIndexT=5;
 aRedraw=0;
 vImarisApplication.mDataSet.SetDataBuffer(aDataBuffer,aSizeZ,aIndexC,aIndexT,aRedraw);
 
HRESULT IDataSet::SetDataBufferRedraw ( [in] IDataBuffer aDataBuffer,
[in] ULONG  aIndexZ,
[in] ULONG  aIndexC,
[in] ULONG  aIndexT,
[in] FLOAT  aFramesPerSecond 
)

Direct Imaris to read the content of the data buffer asynchronously. Imaris will update the voxel intensities periodically and redraw the screen at a specified rate.

Parameters:
aDataBuffer [in] The data source (must fit to the size of the current dataset)
aIndexZ [in] Slice index destination (counting starts with 0)
aIndexC [in] Channel index destination (counting starts with 0)
aIndexT [in] Time point destination (counting starts with 0)
aFramesPerSecond [in] The frequency of the data buffer reads and texture refreshes per second. Set this value to 0.1 or lower to stop the automatic refresh.
 %% The following MATLAB code reads the content of the data buffer asynchronously and refreshes the display at a specified rate
 aIndexZ=11;
 aIndexC=0;
 aIndexT=5;
 aFramesPerSecond=0.5;
 vImarisApplication.mDataSet.SetDataBufferRedraw(aDataBuffer,aIndexZ,aIndexC,aIndexT,aFramesPerSecond);
 
HRESULT IDataSet::SetDataSlice ( [in] VARIANT  aData,
[in, defaultvalue(0)] ULONG  aIndexZ,
[in, defaultvalue(0)] ULONG  aIndexC,
[in, defaultvalue(0)] ULONG  aIndexT 
)

Set the intensities of a xy-slice. Data type and size MUST match the existing dataset's. The position has to be inside the existing dataset.

Parameters:
aData [in] 2D array of uint8, uint16, or float (32 bit). Type and size (XY) must match the dataset's
aIndexZ [in] Slice index (counting starts with 0)
aIndexC [in] Channel index (counting starts with 0)
aIndexT [in] Time point (counting starts with 0).
 %% The following MATLAB code creates and sets a slice into the current dataset
 %% Create a 2D array of uint8
 aData=uint8(255*rand(256,256));
 %% Copy the created data into slice 10 of the dataset (in channel 0 at time point 0)
 aIndexZ=10;
 aIndexC=0;
 aIndexT=0;
 vImarisApplication.mDataSet.SetDataSlice(aData,aIndexZ,aIndexC,aIndexT);
 
HRESULT IDataSet::SetDataSubSlice ( [in] VARIANT  aData,
[in] ULONG  aIndexX,
[in] ULONG  aIndexY,
[in] ULONG  aIndexZ,
[in] ULONG  aIndexC,
[in] ULONG  aIndexT 
)

Set the intensities of a region of an xy-slice. Data type must match the existing dataset's. The size of the region must fit completely into the size of the dataset. See also "SetDataSlice".

Parameters:
aData [in] 2D array of uint8, uint16, or float (32 bit).
aIndexX [in] Destination index for left corner (counting starts with 0)
aIndexY [in] Destination index for bottom corner index (counting starts with 0)
aIndexZ [in] Destination index for slice (counting starts with 0)
aIndexC [in] Channel index (counting starts with 0)
aIndexT [in] Time point (counting starts with 0).
 %% The following MATLAB code creates a 2D slice with random values, and 
 %% copies it to the location X=10, y=10, Z=10, C=0, T=0.
 %% (the example works, if the "retina.ims" dataset is loaded)
 vData = uint8(255*rand(64,64));
 vImarisApplication.mDataSet.SetDataSubSlice(vData, 10, 10, 10, 0, 0);
 
HRESULT IDataSet::SetDataSubVolume ( [in] VARIANT  aData,
[in] ULONG  aIndexX,
[in] ULONG  aIndexY,
[in] ULONG  aIndexZ,
[in] ULONG  aIndexC,
[in] ULONG  aIndexT 
)

Set the intensities of a 3D-subblock. Data type must match the existing dataset's. The size of the input block must fit completely into the size of the dataset. See also "SetDataVolume".

Parameters:
aData [in] 3D array of uint8, uint16, or float (32 bit).
aIndexX [in] Destination index for left corner (counting starts with 0)
aIndexY [in] Destination index for bottom corner index (counting starts with 0)
aIndexZ [in] Destination index for slice (counting starts with 0)
aIndexC [in] Channel index (counting starts with 0)
aIndexT [in] Time point (counting starts with 0).
 %% The following MATLAB code creates a 3D block with random values, and 
 %% copies it to the location X=0, Y=50, Z=0, C=1, T=0.
 %% (the example works, if the "retina.ims" dataset is loaded)
 vData = uint8(255*rand(256,128,64));
 vImarisApplication.mDataSet.SetDataSubVolume(vData, 0, 50, 0, 1, 0);
 
HRESULT IDataSet::SetDataSubVolumeAs1DArray ( [in] VARIANT  aData,
[in] ULONG  aIndexX,
[in] ULONG  aIndexY,
[in] ULONG  aIndexZ,
[in] ULONG  aIndexC,
[in] ULONG  aIndexT,
[in] ULONG  aSizeX,
[in] ULONG  aSizeY,
[in] ULONG  aSizeZ 
)

Set the intensities of a 3D-subblock. Data type have to match the existing dataset's. The size of the input block has to fit completely into the size of the dataset. The input block needs to be an 1D-array, which is then reshaped by Imaris to the specified size. See also "SetDataSubVolume".

Parameters:
aData [in] 1D array of uint8, uint16, or float (32 bit). The total length must be the product of the specified sizes.
aIndexX [in] Destination index for left corner (counting starts with 0)
aIndexY [in] Destination index for bottom corner index (counting starts with 0)
aIndexZ [in] Destination index for slice (counting starts with 0)
aIndexC [in] Channel index (counting starts with 0)
aIndexT [in] Time point (counting starts with 0).
aSizeX [in] Width of the block
aSizeY [in] Height of the block
aSizeZ [in] Depth of the block
 %% The following MATLAB code creates a 1D array with ascending values, and 
 %% copies it to the location X=10, Y=10, Z=10, C=0, T=0. The reshaped block
 %% size in Imaris is 128 x 64 x 32 voxel.
 %% (the example works, if the "retina.ims" dataset is loaded)
 vData = uint8(0.001*(1:128*64*32));
 vImarisApplication.mDataSet.SetDataSubVolumeAs1DArray(vData, 10, 10, 10, 0, 0, 128, 64, 32);
 
HRESULT IDataSet::SetDataVolume ( [in] VARIANT  aData,
[in, defaultvalue(0)] ULONG  aIndexC,
[in, defaultvalue(0)] ULONG  aIndexT 
)

Set the intensities of a xyz-volume. Data type and size MUST match the existing dataset's. The position (channel, time point) has to be inside the existing dataset.

Parameters:
aData [in] 3D array of uint8, uint16, or float (32 bit). Type and size (XYZ) must match the dataset's
aIndexC [in] Channel index (counting starts with 0)
aIndexT [in] Time point (counting starts with 0).
 %% The following MATLAB code creates and sets a 3D volume into the current dataset
 %% Create a 3D array of uint8
 aData=uint8(255*rand(256,256,32));
 %% Copy the created data into channel 1 at time point 0
 aIndexC=1;
 aIndexT=0;
 vImarisApplication.mDataSet.SetDataVolume(aData,aIndexC,aIndexT);
 
HRESULT IDataSet::SetDataVolumeAs1DArray ( [in] VARIANT  aData,
[in, defaultvalue(0)] ULONG  aIndexC,
[in, defaultvalue(0)] ULONG  aIndexT 
)

Set the intensities of a xyz-volume. Data type and number of elements MUST match the existing dataset's. The position (channel, time point) has to be inside the existing dataset.

Parameters:
aData [in] 1D array of uint8, uint16, or float (32 bit). Type and number of elements (N = X x Y x Z) must match the dataset's
aIndexC [in] Channel index (counting starts with 0)
aIndexT [in] Time point (counting starts with 0).
 %% The following MATLAB code creates and sets a 3D volume into the current dataset
 %% Create a 3D array of uint8
 vSize = vImarisApplication.mDataSet.mSizeX*vImarisApplication.mDataSet.mSizeY*vImarisApplication.mDataSet.mSizeZ;
 aData=uint8(255*[1:vSize]/vSize);
 %% Copy the created data into channel 1 at time point 0
 aIndexC=1;
 aIndexT=0;
 vImarisApplication.mDataSet.SetDataVolumeAs1DArray(aData,aIndexC,aIndexT);
 
HRESULT IDataSet::SetParameter ( [in] BSTR  aParameterSection,
[in] BSTR  aParameterName,
[in] BSTR  aParameterValue 
)

Set a parameter.

Parameters:
aParameterSection [in] Name of the parameter section (string)
aParameterName [in] Name of the parameter (string)
aParameterValue [in] Value of the parameter (string)
 %% The following MATLAB code sets a parameter for the dataset
 aParameterSection='Image';
 aParameterName='NumericalAperture';
 aParameterValue='1.4';
 vImarisApplication.mDataSet.SetParameter(aParameterSection,aParameterName,aParameterValue);
 
HRESULT IDataSet::SetTimePoint ( [in] ULONG  aIndexT,
[in] BSTR  aTimePoint 
)

Set the time calibration.

Parameters:
aIndexT [in] Time index (index counting starts with 0)
aTimePoint [in] Time calibration "YYYY-MM-DD HH:MM:SS.SSS".
 %% The following MATLAB code sets the time calibration for the specified time point
 aIndexT=25;
 aTimePoint='2006-05-11 13:30:00.000';
 vImarisApplication.mDataSet.SetTimePoint(aIndexT,aTimePoint);
 

Property Documentation

FLOAT IDataSet::mExtendMaxX [get, set]

Get the maximum extend of the volume along X (coordinate of a corner of the volume's bounding box).

Parameters:
aExtendMaxX [out] Maximum extend of the volume along X (float)
 %% The following MATLAB code gets the maximum extend of the volume along X
 aExtendMaxX=vImarisApplication.mDataSet.mExtendMaxX
 aExtendMaxX =
    48.6542
 

Set the maximum extend of the volume along X (coordinate of a corner of the volume's bounding box).

Parameters:
aExtendMaxX [in] Maximum extend of the volume along X (float)
 %% The following MATLAB code sets the maximum extend of the volume along X
 aExtendMaxX=40.00;
 vImarisApplication.mDataSet.mExtendMaxX=aExtendMaxX;
 
FLOAT IDataSet::mExtendMaxY [get, set]

Get the maximum extend of the volume along Y (coordinate of a corner of the volume's bounding box).

Parameters:
aExtendMaxY [out] Maximum extend of the volume along Y (float)
 %% The following MATLAB code gets the maximum extend of the volume along Y
 aExtendMaxY=vImarisApplication.mDataSet.mExtendMaxY
 aExtendMaxY =
    48.6542
 

Set the maximum extend of the volume along Y (coordinate of a corner of the volume's bounding box).

Parameters:
aExtendMaxY [in] Maximum extend of the volume along Y (float)
 %% The following MATLAB code sets the maximum extend of the volume along Y
 aExtendMaxY=40.00;
 vImarisApplication.mDataSet.mExtendMaxY=aExtendMaxY;
 
FLOAT IDataSet::mExtendMaxZ [get, set]

Get the maximum extend of the volume along Z (coordinate of a corner of the volume's bounding box).

Parameters:
aExtendMaxZ [out] Maximum extend of the volume along Z (float)
 %% The following MATLAB code gets the maximum extend of the volume along Z
 aExtendMaxZ=vImarisApplication.mDataSet.mExtendMaxZ
 aExtendMaxZ =
    19.9750
 

Set the maximum extend of the volume along Z (coordinate of a corner of the volume's bounding box).

Parameters:
aExtendMaxZ [in] Maximum extend of the volume along Z (float)
 %% The following MATLAB code sets the maximum extend of the volume along Z
 aExtendMaxZ=15.00;
 vImarisApplication.mDataSet.mExtendMaxZ=aExtendMaxZ;
 
FLOAT IDataSet::mExtendMinX [get, set]

Get the minimum extend of the volume along X (coordinate of a corner of the volume's bounding box).

Parameters:
aExtendMinX [out] Minimum extend of the volume along X (float)
 %% The following MATLAB code gets the minimum extend of the volume along X
 aExtendMinX=vImarisApplication.mDataSet.mExtendMinX
 aExtendMinX =
    0
 

Set the minimum extend of the volume along X (coordinate of a corner of the volume's bounding box).

Parameters:
aExtendMinX [in] Minimum extend of the volume along X (float)
 %% The following MATLAB code sets the minimum extend of the volume along X
 aExtendMinX=5.00;
 vImarisApplication.mDataSet.mExtendMinX=aExtendMinX;
 
FLOAT IDataSet::mExtendMinY [get, set]

Get the minimum extend of the volume along Y (coordinate of a corner of the volume's bounding box).

Parameters:
aExtendMinY [out] Minimum extend of the volume along Y (float)
 %% The following MATLAB code gets the minimum extend of the volume along Y
 aExtendMinY=vImarisApplication.mDataSet.mExtendMinY
 aExtendMinY =
    0
 

Set the minimum extend of the volume along Y (coordinate of a corner of the volume's bounding box).

Parameters:
aExtendMinY [in] Minimum extend of the volume along Y (float)
 %% The following MATLAB code sets the minimum extend of the volume along Y
 aExtendMinY=5.00;
 vImarisApplication.mDataSet.mExtendMinY=aExtendMinY;
 
FLOAT IDataSet::mExtendMinZ [get, set]

Get the minimum extend of the volume along Z (coordinate of a corner of the volume's bounding box).

Parameters:
aExtendMinZ [out] Minimum extend of the volume along Z (float)
 %% The following MATLAB code gets the minimum extend of the volume along Z
 aExtendMinZ=vImarisApplication.mDataSet.mExtendMinZ
 aExtendMinZ =
    0
 

Set the minimum extend of the volume along Z (coordinate of a corner of the volume's bounding box).

Parameters:
aExtendMinZ [in] Minimum extend of the volume along Z (float)
 %% The following MATLAB code sets the minimum extend of the volume along Z
 aExtendMinZ=5.00;
 vImarisApplication.mDataSet.mExtendMinZ=aExtendMinZ;
 
VARIANT_BOOL IDataSet::mModified [get, set]

Return true if the dataset was modifed (changed voxel intensities, voxel size, number of voxels, etc.)

Parameters:
aModified [out] 1 (true) if the dataset was modified
 %% The following MATLAB code checks whether the dataset was modified
 aModified=vImarisApplication.mDataSet.mModified
 aModified =
    1
 %% Yes, it was.
 

Set the modification flag. Imaris asks whether to save a modified dataset, if mModified is set to true (1). Set it to false (0), if you want Imaris to terminate without prompting.

Parameters:
aModified [in] 0 (false) or 1 (true)
 %% The following MATLAB code sets the mModified flag to false
 aModified=0;
 vImarisApplication.mDataSet.mModified=aModified;
 
ULONG IDataSet::mSizeC [get, set]

Get the number of channels.

Parameters:
aSizeC [out] Number of channels in the dataset
 %% The following MATLAB code gets the number of channels in the dataset
 aSizeC=vImarisApplication.mDataSet.mSizeC
 aSizeC =
       3
 

Set the number of channels.

Parameters:
aSizeC [in] Number of channels in the dataset
 %% The following MATLAB code sets the number of channels in the dataset
 aSizeC=3;
 vImarisApplication.mDataSet.mSizeC=aSizeC;
 
ULONG IDataSet::mSizeT [get, set]

Get the number of time points.

Parameters:
aSizeT [out] Number of time points in the dataset
 %% The following MATLAB code gets the number of time points in the dataset
 aSizeT=vImarisApplication.mDataSet.mSizeT
 aSizeT =
       128
 

Set the number of time points.

Parameters:
aSizeT [in] Number of time points in the dataset
 %% The following MATLAB code sets the number of time points in the dataset
 aSizeT=25;
 vImarisApplication.mDataSet.mSizeT=aSizeT;
 
ULONG IDataSet::mSizeX [get, set]

Get the number of voxels along the X dimension.

Parameters:
aSizeX [out] Dimension of the dataset along X
 %% The following MATLAB code gets the dimension of the dataset along X
 aSizeX=vImarisApplication.mDataSet.mSizeX
 aSizeX =
       256
 

Set the number of voxels in dimension X.

Parameters:
aSizeX [in] Size of the dataset along the dimension X
 %% The following MATLAB code sets the size of the dataset along the dimension X
 aSizeX=512;
 vImarisApplication.mDataSet.mSizeX=aSizeX;
 
ULONG IDataSet::mSizeY [get, set]

Get the number of voxels along the Y dimension.

Parameters:
aSizeY [out] Dimension of the dataset along Y
 %% The following MATLAB code gets the dimension of the dataset along Y
 aSizeY=vImarisApplication.mDataSet.mSizeY
 aSizeY =
       256
 

Set the number of voxels in dimension Y.

Parameters:
aSizeY [in] Size of the dataset along the dimension Y
 %% The following MATLAB code sets the size of the dataset along the dimension Y
 aSizeY=512;
 vImarisApplication.mDataSet.mSizeY=aSizeY;
 
ULONG IDataSet::mSizeZ [get, set]

Get the number of voxels along the Z dimension.

Parameters:
aSizeZ [out] Dimension of the dataset along Z
 %% The following MATLAB code gets the dimension of the dataset along Z
 aSizeZ=vImarisApplication.mDataSet.mSizeZ
 aSizeZ =
       100
 

Set the number of voxels in dimension Z.

Parameters:
aSizeZ [in] Size of the dataset along the dimension Z
 %% The following MATLAB code sets the size of the dataset along the dimension Z
 aSizeZ=100;
 vImarisApplication.mDataSet.mSizeZ=aSizeZ;
 
tType IDataSet::mType [get, set]

Get the type of the dataset.

Parameters:
aType [out] Type of the data: one of 'eTypeUnknown', 'eTypeUInt8', 'eTypeUInt16', 'eTypeFloat'
 %% The following MATLAB code gets the type of the dataset
 aType=vImarisApplication.mDataSet.mType
 aType =
       eTypeUInt8
 

Set the type of the of the dataset.

Parameters:
aType [in] Type of the data: one of 'eTypeUnknown', 'eTypeUInt8', 'eTypeUInt16', 'eTypeFloat'
 %% The following MATLAB code sets the type of the dataset
 aType=eTypeUInt16;
 vImarisApplication.mDataSet.mType=aType;
 
BSTR IDataSet::mUnit [get, set]

Get the unit of the extends.

Parameters:
aUnit [out] Unit of the extend (string)
 %% The following MATLAB code gets the unit of the extend
 aUnit=vImarisApplication.mDataSet.mUnit
 aUnit =
    um
 

Set the unit of the extends.

Parameters:
aUnit [in] Unit of the extend (string)
 %% The following MATLAB code sets the unit of the extend
 aUnit='nm';
 vImarisApplication.mDataSet.mUnit=aUnit;
 

The documentation for this interface was generated from the following file:

Generated on Mon Jun 14 20:23:41 2010 for Imaris 7.1 COM Interface by  doxygen 1.6.1