KlassenKlassenKlassenKlassen | | | | Operatoren

tile_imagestile_imagesTileImagestile_imagesTileImagesTileImages (Operator)

Name

tile_imagestile_imagesTileImagestile_imagesTileImagesTileImages — Zusammenfügen von mehreren Bildobjekten zu einem großen Bild.

Signatur

tile_images(Images : TiledImage : NumColumns, TileOrder : )

Herror tile_images(const Hobject Images, Hobject* TiledImage, const Hlong NumColumns, const char* TileOrder)

Herror T_tile_images(const Hobject Images, Hobject* TiledImage, const Htuple NumColumns, const Htuple TileOrder)

Herror tile_images(Hobject Images, Hobject* TiledImage, const HTuple& NumColumns, const HTuple& TileOrder)

HImage HImageArray::TileImages(const HTuple& NumColumns, const HTuple& TileOrder) const

void TileImages(const HObject& Images, HObject* TiledImage, const HTuple& NumColumns, const HTuple& TileOrder)

HImage HImage::TileImages(Hlong NumColumns, const HString& TileOrder) const

HImage HImage::TileImages(Hlong NumColumns, const char* TileOrder) const

void HOperatorSetX.TileImages(
[in] IHUntypedObjectX* Images, [out] IHUntypedObjectX*TiledImage, [in] VARIANT NumColumns, [in] VARIANT TileOrder)

IHImageX* HImageX.TileImages(
[in] Hlong NumColumns, [in] BSTR TileOrder)

static void HOperatorSet.TileImages(HObject images, out HObject tiledImage, HTuple numColumns, HTuple tileOrder)

HImage HImage.TileImages(int numColumns, string tileOrder)

Beschreibung

tile_imagestile_imagesTileImagestile_imagesTileImagesTileImages fügt mehrere Bildobjekte, die die gleiche Anzahl von Kanälen besitzen müssen, durch Kachelung zu einem großen Bild zusammen. Das Eingabeobjekt ImagesImagesImagesImagesImagesimages besteht aus Num Bildern, die unterschiedlich groß sein können. Das Ausgabebild TiledImageTiledImageTiledImageTiledImageTiledImagetiledImage besteht aus einem Bildobjekt, das genauso viele Kanäle besitzt, wie die Eingabebilder. Im Ausgabebild sind die Num Eingabekanäle in NumColumnsNumColumnsNumColumnsNumColumnsNumColumnsnumColumns Spalten gekachelt. Jede Kachel besitzt dieselbe Größe, die sich aus der maximalen Breite und Höhe der Eingabebilder bestimmt. Falls ein Eingabebild kleiner als die Kachelgröße ist, wird es in die Mitte der entsprechenden Kachel kopiert. Der Parameter TileOrderTileOrderTileOrderTileOrderTileOrdertileOrder legt die Richtung fest, in der die Eingabekanäle in die Ausgabe kopiert werden, falls dies nicht schon durch NumColumnsNumColumnsNumColumnsNumColumnsNumColumnsnumColumns festgelegt wird (d.h., falls NumColumnsNumColumnsNumColumnsNumColumnsNumColumnsnumColumns != 1 und NumColumnsNumColumnsNumColumnsNumColumnsNumColumnsnumColumns != Num). Falls TileOrderTileOrderTileOrderTileOrderTileOrdertileOrder = 'horizontal'"horizontal""horizontal""horizontal""horizontal""horizontal", werden die Bilder in horizontaler Richtung kopiert, d.h. das zweite Eingabebild liegt rechts neben dem ersten Eingabebild. Falls TileOrderTileOrderTileOrderTileOrderTileOrdertileOrder = 'vertical'"vertical""vertical""vertical""vertical""vertical", werden die Bilder in vertikaler Richtung kopiert, d.h. das zweite Eingabebild liegt unter dem ersten Eingabebild. Der Definitionsbereich (die Region) des Ausgabebildes TiledImageTiledImageTiledImageTiledImageTiledImagetiledImage wird berechnet, indem die Regionen des Eingabebildes ImagesImagesImagesImagesImagesimages an die entsprechenden Stellen im Ausgabebild kopiert werden. Falls Num kein Vielfaches von NumColumnsNumColumnsNumColumnsNumColumnsNumColumnsnumColumns ist, hat das Ausgabebild undefinierte Grauwerte in der unteren linken Ecke des Bildes. Die Ausgaberegion ist entsprechend gesetzt.

Parallelisierung

Parameter

ImagesImagesImagesImagesImagesimages (input_object)  (multichannel-)image-array objectHImageHImageHImageArrayHImageXHobject (byte / direction / cyclic / int1 / int2 / uint2 / int4 / int8 / real)

Eingabebilder.

TiledImageTiledImageTiledImageTiledImageTiledImagetiledImage (output_object)  (multichannel-)image objectHImageHImageHImageHImageXHobject * (byte / direction / cyclic / int1 / int2 / uint2 / int4 / int8 / real)

Gekacheltes Ausgabegild.

NumColumnsNumColumnsNumColumnsNumColumnsNumColumnsnumColumns (input_control)  integer HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Anzahl der Spalten, die für das Ausgabebild verwendet werden

Defaultwert: 1

Wertevorschläge: 1, 2, 3, 4, 5, 6, 7

Restriktion: NumColumns >= 1

TileOrderTileOrderTileOrderTileOrderTileOrdertileOrder (input_control)  string HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Reihenfolge der Eingabebilder im Ausgabebild.

Defaultwert: 'vertical' "vertical" "vertical" "vertical" "vertical" "vertical"

Werteliste: 'horizontal'"horizontal""horizontal""horizontal""horizontal""horizontal", 'vertical'"vertical""vertical""vertical""vertical""vertical"

Beispiel (HDevelop)

* Grab 5 (multi-channel) images and stack them vertically.
gen_empty_obj (Images)
for I := 1 to 5 by 1
    grab_image_async (ImageGrabbed, AcqHandle, -1)
    concat_obj (Images, ImageGrabbed, Images)
endfor
tile_images (Images, TiledImage, 1, 'vertical')

Ergebnis

Sind die Parameterwerte korrekt und tritt kein Fehler während der Berechnung auf, liefert tile_imagestile_imagesTileImagestile_imagesTileImagesTileImages den Wert 2 (H_MSG_TRUE). Das Verhalten bei leerer Eingabe (keine Eingabebilder vorhanden) lässt sich mittels set_system(::'no_object_result',<Result>:)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>) festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

append_channelappend_channelAppendChannelappend_channelAppendChannelAppendChannel

Alternativen

tile_channelstile_channelsTileChannelstile_channelsTileChannelsTileChannels, tile_images_offsettile_images_offsetTileImagesOffsettile_images_offsetTileImagesOffsetTileImagesOffset

Siehe auch

change_formatchange_formatChangeFormatchange_formatChangeFormatChangeFormat, crop_partcrop_partCropPartcrop_partCropPartCropPart, crop_rectangle1crop_rectangle1CropRectangle1crop_rectangle1CropRectangle1CropRectangle1

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren