Click or drag to resize

CameraCapture Method (Settings)

Capture a single frame

Namespace:  Zivid.NET
Assembly:  ZividCoreNET (in ZividCoreNET.dll) Version: 0.0.0.0
Syntax
public Frame Capture(
	Settings settings
)

Parameters

settings
Type: Zivid.NETSettings
Settings to use for the capture

Return Value

Type: Frame
A frame containing a 3D point cloud and metadata
Remarks
This method returns right after the acquisition of the images is complete, and the camera has stopped projecting patterns. Therefore, after this method has returned, the camera can be moved, or objects in the scene can be moved, or a capture from another camera with overlapping field of view can be triggered, without affecting the point cloud. When this method returns, there is still remaining data to transfer from the camera to the PC, and the processing of the final point cloud is not completed. Transfer and processing of the point cloud will continue in the background. When you call a method on the returned Frame object that requires the capture to be finished, for example PointCloud, that method will block until the processing is finished and the point cloud is available. If an exception occurs after the acquisition of images is complete (during transfer or processing of the capture), then that exception is instead thrown when you access the Frame object. The `capture` function can be invoked back-to-back, for doing rapid back-to-back acquisition of multiple (2D or 3D) captures on the same camera. This is for example useful if you want to do one high-resolution 2D capture followed by a lower-resolution 3D capture. The acquisition of the next capture will begin quickly after acquisition of the previous capture completed, even when there is remaining transfer and processing for the first capture. This allows pipelining several 2D and/or 3D captures, by doing acquisition in parallel with data transfer and processing. Note: There can be maximum of two in-progress uncompleted 3D captures simultaneously per Zivid camera. If you invoke `capture` when there are two uncompleted 3D captures in-progress, then the capture will not start until the first of the in-progress 3D captures has finished all transfer and processing. There is a similar limit of maximum two in-process 2D captures per camera. `capture` can be called from multiple threads at the same time. Multiple capture commands on the same camera object from different threads will be queued and executed in order (first in, first out). `capture` can also be called on multiple cameras simultaneously. However, if the cameras have overlapping field-of-view then you need to take consideration and sequence the capture calls to avoid the captures interfering with each other. Note that all of these remarks apply for both 3D and 2D captures.
See Also