15#include <vsg/animation/Animation.h>
16#include <vsg/app/ViewMatrix.h>
17#include <vsg/maths/transform.h>
27 bool operator<(
const VectorKey& rhs)
const {
return time < rhs.time; }
35 bool operator<(
const QuatKey& rhs)
const {
return time < rhs.time; }
62 void add(
double time,
const dvec3& position,
const dquat& rotation)
64 positions.push_back(
VectorKey{time, position});
65 rotations.push_back(QuatKey{time, rotation});
68 void add(
double time,
const dvec3& position,
const dquat& rotation,
const dvec3& scale)
70 positions.push_back(VectorKey{time, position});
71 rotations.push_back(QuatKey{time, rotation});
72 scales.push_back(VectorKey{time, scale});
75 void read(Input& input)
override;
76 void write(Output& output)
const override;
95 void update(
double time)
override;
96 double maxTime()
const override;
98 inline dmat4 transform()
const {
return translate(position) * vsg::rotate(rotation) * vsg::scale(scale); }
104 void read(
Input& input)
override;
105 void write(
Output& output)
const override;
107 void apply(mat4Value& mat)
override;
108 void apply(dmat4Value& mat)
override;
110 void apply(
Joint& joint)
override;
111 void apply(
LookAt& lookAt)
override;
112 void apply(
Camera& camera)
override;
LookAt is a ViewMatrix that implements the gluLookAt model for specifying the view matrix.
Definition ViewMatrix.h:36
Definition TransformSampler.h:31
Definition TransformSampler.h:23