MIL_ID DestBufId, | //in |
MIL_INT NumPixels, | //in |
const MIL_DOUBLE *PixXArrayPtr, | //in |
const MIL_DOUBLE *PixYArrayPtr, | //in |
MIL_INT64 OverscanMode, | //in |
const void *UserArrayPtr | //in |
This function overwrites the values in the destination buffer at the specified positions, with values taken from a user-defined array. If non-integer positions are given, the values are written to the closest integer positions.
When executing the operation on a buffer that has multiple bands, the red band is processed first; the red values at the specified positions are replaced by those in the first third of the user-defined array. Then, the green band is processed; the green values at the specified positions are replaced by those in the second third of the user-defined array (immediately following the red values). Finally, the blue band is processed; the blue values at the specified positions are replaced by those in the last third of the user-defined array (immediately following the green values). For example, if you want to overwrite 3 pixels, the function will process the red band of each pixel, then green band, and finally the blue band (RRR, GGG, BBB not RGB, RGB, RGB).
Note that if the destination buffer has multiple bands, its format should match the implicit format of the user array (that is, planar RGB); otherwise, the operation is executed using a temporary buffer and then an internal conversion has to be done (from the temporary buffer to the destination). Likewise, if the destination buffer is compressed, the operation is executed using a temporary buffer and then an internal compression has to be done (from the temporary buffer to the destination).
Specifies the identifier of the destination buffer. This buffer can be a single-band (monochrome) or multi-band buffer and is not limited to image buffers.
If the specified buffer is an image buffer with an associated region of interest (ROI), an error will occur.
Specifies the number of values to put into the destination buffer.
When using a standard vector (std::vector) overload function in C++, you can pass M_DEFAULT to this parameter and MIL will automatically determine the size based on the number of items in the vector passed to the parameter.
Specifies the address of an array containing the X-coordinate of the positions in the buffer to overwrite.
Specifies the address of an array containing the Y-coordinate of the positions in the buffer to overwrite.
Specifies the overscan mode. This specified mode controls how the function behaves with positions that fall outside the destination buffer.
This parameter must be set to one of the values below.
For specifying the overscan mode
|
|||||||||||||||||||||||||||||||||||||||
Value | Description | ||||||||||||||||||||||||||||||||||||||
M_DEFAULT |
Same as M_OVERSCAN_ENABLE. |
||||||||||||||||||||||||||||||||||||||
M_OVERSCAN_DISABLE |
Specifies that if a position falls outside the destination buffer, the corresponding entry in the user-defined array is not used. |
||||||||||||||||||||||||||||||||||||||
M_OVERSCAN_ENABLE |
Specifies that if a position falls outside the destination buffer, the function will try to modify the destination's ancestor (if applicable), if the given position is within its limits. Otherwise, the corresponding entry in the user-defined array is not used. (summarize)Specifies that if a position falls outside the destination buffer, the function will try to modify the destination's ancestor (if applicable), if the given position is within its limits. (more details...) |
Data type: array of the same
type as the buffer (DestBufId) [optionally, in C++: a reference to a
std::vector of the same type
as the buffer]
Required array size:(NumPixels) * MbufInquire ( M_SIZE_BAND )
Specifies the address of a user-defined array which contains values to write into the destination buffer. The data type of this array must match the data type of the destination buffer. Its number of entries is determined by the number of values to put and also by the number of bands of the destination buffer.
void MbufPutListDouble
(MIL_ID DestBufId,
MIL_INT NumPixels,
const MIL_DOUBLE *PixXArrayPtr,
const MIL_DOUBLE *PixYArrayPtr,
MIL_INT64 OverscanMode,
const void *UserArrayPtr)
Parameters
DestBufId See DestBufId of the main function for a description. NumPixels See NumPixels of the main function for a description. PixXArrayPtr See PixXArrayPtr of the main function for a description. PixYArrayPtr See PixYArrayPtr of the main function for a description. OverscanMode See OverscanMode of the main function for a description. UserArrayPtr See UserArrayPtr of the main function for a description. |
void MbufPutListInt32
(MIL_ID DestBufId,
MIL_INT NumPixels,
const MIL_INT32 *PixXArrayPtr,
const MIL_INT32 *PixYArrayPtr,
MIL_INT64 OverscanMode,
const void *UserArrayPtr)
Parameters
DestBufId See DestBufId of the main function for a description. NumPixels See NumPixels of the main function for a description. PixXArrayPtr See PixXArrayPtr of the main function for a description. PixYArrayPtr See PixYArrayPtr of the main function for a description. OverscanMode See OverscanMode of the main function for a description. UserArrayPtr See UserArrayPtr of the main function for a description. |
void MbufPutListInt64
(MIL_ID DestBufId,
MIL_INT NumPixels,
const MIL_INT64 *PixXArrayPtr,
const MIL_INT64 *PixYArrayPtr,
MIL_INT64 OverscanMode,
const void *UserArrayPtr)
Parameters
DestBufId See DestBufId of the main function for a description. NumPixels See NumPixels of the main function for a description. PixXArrayPtr See PixXArrayPtr of the main function for a description. PixYArrayPtr See PixYArrayPtr of the main function for a description. OverscanMode See OverscanMode of the main function for a description. UserArrayPtr See UserArrayPtr of the main function for a description. |
Header | Include mil.h. |
Library | Use mil.lib. |
DLL | Requires mil.dll. |