public class TLspLookAtTrackingCameraConstraint2D<T extends TLspViewXYZWorldTransformation2D> extends ALspCameraConstraint<T>
Constraint for TLspViewXYZWorldTransformation2D
that forces it to follow a target
object. If the object is oriented, there is the option to follow the orientation as well.
By default, this constraint doesn't track any objects. To do this setTrackingPointProvider
should be called
first.
Constructor and Description |
---|
TLspLookAtTrackingCameraConstraint2D(boolean aFollowOrientation)
Creates a look-at camera constraint for a given set of objects (whose motion is to be
tracked).
|
Modifier and Type | Method and Description |
---|---|
void |
constrain(T aSource,
T aTargetSFCT)
Constrains the given view world transformation.
|
ALspTrackingPointProvider |
getTrackingPointProvider()
Returns the used tracking point provider, or
null if no tracking point provider is
used. |
void |
setTrackingPointProvider(ALspTrackingPointProvider aTrackingPointProvider)
Sets the tracking point provider.
|
addConstraintChangeListener, fireConstraintChangeEvent, removeConstraintChangeListener
public TLspLookAtTrackingCameraConstraint2D(boolean aFollowOrientation)
aFollowOrientation
- indicates whether the rotation of the view should take the
orientation of the tracked objects into account.public void constrain(T aSource, T aTargetSFCT)
ALspCameraConstraint
Constrains the given view world transformation. This method can be implemented by
modifying aTargetSFCT
.
When the original view world transformation is
modified, the changes are first applied on a copy of the transformation (aTargetSFCT
).
This copy is passed to the constraints, which can also modify it. After all constraints are
evaluated, all changes are applied on the original transformation.
aSource
is the original transformation. It is given as context information.
constrain
in class ALspCameraConstraint<T extends TLspViewXYZWorldTransformation2D>
aSource
- the original transformation, on which all changes will be applied after
all constraints are evaluated. It is given as context information.aTargetSFCT
- the view transformation copy which contains the modifications. Constraints
should be applied on this transformation.public ALspTrackingPointProvider getTrackingPointProvider()
null
if no tracking point provider is
used.null
if no tracking point provider is
used.setTrackingPointProvider(ALspTrackingPointProvider)
public void setTrackingPointProvider(ALspTrackingPointProvider aTrackingPointProvider)
aTrackingPointProvider
- a tracking point provider.getTrackingPointProvider()