Tracked Barcode

Defined in package com.scandit.datacapture.barcode.tracking.data

TrackedBarcode
class TrackedBarcode

Added in version 6.0.0

A barcode tracked over the course of multiple frames.

The state of a TrackedBarcode can be observed using a BarcodeTrackingListener.

The BarcodeTrackingListener.onSessionUpdated() callback will be invoked every time a new frame is processed and at least one of the following events took place:

  1. A track is established.

  2. A track location has changed.

  3. A track is lost and can no longer be tracked.

location
@NonNull Quadrilateral getLocation()

Added in version 6.4.0

The location of the code. The coordinates are in image-space, meaning that the coordinates correspond to actual pixels in the image. For display, the coordinates need first to be converted into screen-space using the data capture view.

The meaning of the values of Quadrilateral.topLeft is such that the top left point corresponds to the top left corner of the barcode, independent of how the code is oriented in the image. Same for the other conrners.

Note

Using this property requires the MatrixScan AR add-on. In case the feature is not licensed, a quadrilateral with all corners set to 0, 0 is returned.

deltaTimeToPrediction
@NonNull TimeInterval getDeltaTimeToPrediction()

Added in version 6.0.0

The time (in seconds) it will take the tracked barcode to move to the predictedLocation. This value can be used to animate the predicted change of location of the tracked barcode.

Deprecated since version 6.5.0: Replaced by location which returns a continuously interpolated location instead of the previously fixed future location.

predictedLocation
@NonNull Quadrilateral getPredictedLocation()

Added in version 6.0.0

The location where the tracked barcode is predicted to be in deltaTimeToPrediction.

Note

Using this property requires the MatrixScan AR add-on. In case the feature is not licensed, a quadrilateral with all corners set to 0, 0 is returned.

Deprecated since version 6.5.0: Replaced by location which returns a continuously interpolated location instead of the previously fixed future location.

shouldAnimateFromPreviousToNextState
boolean getShouldAnimateFromPreviousToNextState()

Added in version 6.0.0

True if it’s safe to animate from the current state to the next. As there are state transitions that do not guarantee a stable ordering of the location’s corners you should always check this property before animating a location change.

Deprecated since version 6.18.0: location returns a continuously interpolated location so animating between locations is no longer needed.

identifier
int getIdentifier()

Added in version 6.0.0

The unique identifier for the tracked barcode. The identifier is unique for each barcode. The same identifier may be reused once the barcode is lost for another barcode.

barcode
@NonNull Barcode getBarcode()

Added in version 6.0.0

The barcode associated to this track.

getAnchorPosition(anchor)
@NonNull Point getAnchorPosition(Anchor anchor)

Added in version 6.4.0

The position of an anchor point of the tracked barcode.

toJson()
@NonNull String toJson()

Added in version 6.2.0

Returns the JSON representation of the tracked barcode.