10 #ifndef hifi_Controllers_Filters_Translate_h
11 #define hifi_Controllers_Filters_Translate_h
13 #include <glm/gtx/transform.hpp>
15 #include "../Filter.h"
17 namespace controller {
19 class TranslateFilter :
public Filter {
20 REGISTER_FILTER_CLASS(TranslateFilter);
22 TranslateFilter() =
default;
23 TranslateFilter(glm::vec3 translate) : _translate(translate) {}
25 virtual AxisValue apply(AxisValue value)
const override {
return value; }
26 virtual Pose apply(Pose value)
const override {
return value.transform(glm::translate(_translate)); }
27 virtual bool parseParameters(
const QJsonValue& parameters)
override {
return parseVec3Parameter(parameters, _translate); }
30 glm::vec3 _translate { 0.0f };