KlassenKlassenKlassenKlassen | | | | Operatoren

grab_imagegrab_imageGrabImagegrab_imageGrabImageGrabImage (Operator)

Name

grab_imagegrab_imageGrabImagegrab_imageGrabImageGrabImage — Synchroner Einzug eines Bildes vom angegebenen Bildeinzugsgerät.

Signatur

grab_image( : Image : AcqHandle : )

Herror grab_image(Hobject* Image, const Hlong AcqHandle)

Herror T_grab_image(Hobject* Image, const Htuple AcqHandle)

Herror grab_image(Hobject* Image, const HTuple& AcqHandle)

HImage HImage::GrabImage(const HFramegrabber& AcqHandle)

HImage HFramegrabber::GrabImage() const

void GrabImage(HObject* Image, const HTuple& AcqHandle)

void HImage::GrabImage(const HFramegrabber& AcqHandle)

HImage HFramegrabber::GrabImage() const

void HOperatorSetX.GrabImage(
[out] IHUntypedObjectX*Image, [in] VARIANT AcqHandle)

void HImageX.GrabImage([in] IHFramegrabberX* AcqHandle)

IHImageX* HFramegrabberX.GrabImage()

static void HOperatorSet.GrabImage(out HObject image, HTuple acqHandle)

void HImage.GrabImage(HFramegrabber acqHandle)

HImage HFramegrabber.GrabImage()

Beschreibung

grab_imagegrab_imageGrabImagegrab_imageGrabImageGrabImage zieht über das durch AcqHandleAcqHandleAcqHandleAcqHandleAcqHandleacqHandle spezifizierte Bildeinzugsgerät ein Bild ein. Der gewünschte Betriebsmodus des Bildeinzugsgeräts, ein passender Bildausschnitt sowie weitere Schnittstellen-spezifische Einstellungen können mittels der Operatoren open_framegrabberopen_framegrabberOpenFramegrabberopen_framegrabberOpenFramegrabberOpenFramegrabber und set_framegrabber_paramset_framegrabber_paramSetFramegrabberParamset_framegrabber_paramSetFramegrabberParamSetFramegrabberParam vorgenommen werden.

Der Abbruch des Bildeinzugs kann mit dem Operator set_framegrabber_paramset_framegrabber_paramSetFramegrabberParamset_framegrabber_paramSetFramegrabberParamSetFramegrabberParam erfolgen, sofern die jeweilige Bildeinzugsschnittstelle den dazu notwendigen Parameter 'do_abort_grab' unterstützt. Es ist zu beachten, dass ,als Ausnahme von der Beschreibung der gleichzeitigen Verwendung mehrerer Threads (siehe unten), 'do_abort_grab' auch aus einem anderen Thread aufgerufen werden kann.

Achtung

Ein AcqHandleAcqHandleAcqHandleAcqHandleAcqHandleacqHandle kann grundsätzlich nicht von mehreren Threads gleichzeitig verwendet werden. Etwaige Ausnahmen sind in der spezifischen Dokumentation des jeweiligen Image Acquisition Interfaces aufgeführt. Unterschiedliche Handles können in jeweils eigenen Threads genutzt werden.

Aus Sicht einer Anwendung mit mehreren Threads bilden alle Bildeinzugsoperatoren (wie in open_framegrabberopen_framegrabberOpenFramegrabberopen_framegrabberOpenFramegrabberOpenFramegrabber aufgelistet) eine eigene Gruppe innerhalb der info_framegrabberinfo_framegrabberInfoFramegrabberinfo_framegrabberInfoFramegrabberInfoFramegrabber, open_framegrabberopen_framegrabberOpenFramegrabberopen_framegrabberOpenFramegrabberOpenFramegrabber, close_framegrabberclose_framegrabberCloseFramegrabberclose_framegrabberCloseFramegrabberCloseFramegrabber und close_all_framegrabbersclose_all_framegrabbersCloseAllFramegrabbersclose_all_framegrabbersCloseAllFramegrabbersCloseAllFramegrabbers exklusiv ausgeführt werden.

grab_imagegrab_imageGrabImagegrab_imageGrabImageGrabImage läuft mit allen nicht exklusiven Operatoren innerhalb und außerhalb der Gruppe parallel.

Parallelisierung

Parameter

ImageImageImageImageImageimage (output_object)  image objectHImageHImageHImageHImageXHobject * (byte / uint2)

Eingezogenes Bild.

AcqHandleAcqHandleAcqHandleAcqHandleAcqHandleacqHandle (input_control)  framegrabber HFramegrabber, HTupleHTupleHFramegrabber, HTupleHFramegrabberX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Zu benutzendes Bildeinzugsgerät.

Beispiel (HDevelop)

* Select a suitable image acquisition interface name AcqName
info_framegrabber(AcqName,'port',Information,Values)
* Open image acquisition device using the default settings, see
* documentation of the actually used interface for more details
open_framegrabber(AcqName,1,1,0,0,0,0,'default',-1,'default',-1.0, \
                  'default','default','default',-1,-1,AcqHandle)
grab_image(Image,AcqHandle)
close_framegrabber(AcqHandle)

Beispiel (C)

/* Select a suitable image acquisition interface name AcqName */
info_framegrabber(AcqName,"port",&Information,&Values) ;
/* Open image acquisition device using the default settings, see
   documentation of the actually used interface for more details */
open_framegrabber(AcqName,1,1,0,0,0,0,'default',-1,'default',-1.0,
                  'default','default','default',-1,-1,&AcqHandle) ;
grab_image(Image,AcqHandle) ;
close_framegrabber(AcqHandle) ;

Beispiel (HDevelop)

* Select a suitable image acquisition interface name AcqName
info_framegrabber(AcqName,'port',Information,Values)
* Open image acquisition device using the default settings, see
* documentation of the actually used interface for more details
open_framegrabber(AcqName,1,1,0,0,0,0,'default',-1,'default',-1.0, \
                  'default','default','default',-1,-1,AcqHandle)
grab_image(Image,AcqHandle)
close_framegrabber(AcqHandle)

Beispiel (HDevelop)

* Select a suitable image acquisition interface name AcqName
info_framegrabber(AcqName,'port',Information,Values)
* Open image acquisition device using the default settings, see
* documentation of the actually used interface for more details
open_framegrabber(AcqName,1,1,0,0,0,0,'default',-1,'default',-1.0, \
                  'default','default','default',-1,-1,AcqHandle)
grab_image(Image,AcqHandle)
close_framegrabber(AcqHandle)

Beispiel (HDevelop)

* Select a suitable image acquisition interface name AcqName
info_framegrabber(AcqName,'port',Information,Values)
* Open image acquisition device using the default settings, see
* documentation of the actually used interface for more details
open_framegrabber(AcqName,1,1,0,0,0,0,'default',-1,'default',-1.0, \
                  'default','default','default',-1,-1,AcqHandle)
grab_image(Image,AcqHandle)
close_framegrabber(AcqHandle)

Beispiel (HDevelop)

* Select a suitable image acquisition interface name AcqName
info_framegrabber(AcqName,'port',Information,Values)
* Open image acquisition device using the default settings, see
* documentation of the actually used interface for more details
open_framegrabber(AcqName,1,1,0,0,0,0,'default',-1,'default',-1.0, \
                  'default','default','default',-1,-1,AcqHandle)
grab_image(Image,AcqHandle)
close_framegrabber(AcqHandle)

Ergebnis

Wenn der Bildeinzug erfolgreich verlaufen ist, liefert grab_imagegrab_imageGrabImagegrab_imageGrabImageGrabImage den Wert 2 (H_MSG_TRUE). Ansonsten wird eine Fehlerbehandlung durchgeführt.

Vorgänger

open_framegrabberopen_framegrabberOpenFramegrabberopen_framegrabberOpenFramegrabberOpenFramegrabber, set_framegrabber_paramset_framegrabber_paramSetFramegrabberParamset_framegrabber_paramSetFramegrabberParamSetFramegrabberParam

Nachfolger

grab_image_startgrab_image_startGrabImageStartgrab_image_startGrabImageStartGrabImageStart, grab_image_asyncgrab_image_asyncGrabImageAsyncgrab_image_asyncGrabImageAsyncGrabImageAsync, close_framegrabberclose_framegrabberCloseFramegrabberclose_framegrabberCloseFramegrabberCloseFramegrabber

Siehe auch

open_framegrabberopen_framegrabberOpenFramegrabberopen_framegrabberOpenFramegrabberOpenFramegrabber, info_framegrabberinfo_framegrabberInfoFramegrabberinfo_framegrabberInfoFramegrabberInfoFramegrabber, set_framegrabber_paramset_framegrabber_paramSetFramegrabberParamset_framegrabber_paramSetFramegrabberParamSetFramegrabberParam

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren