12 #ifndef hifi_ObjectConstraintConeTwist_h
13 #define hifi_ObjectConstraintConeTwist_h
15 #include "ObjectConstraint.h"
19 class ObjectConstraintConeTwist :
public ObjectConstraint {
21 ObjectConstraintConeTwist(
const QUuid&
id, EntityItemPointer ownerEntity);
22 virtual ~ObjectConstraintConeTwist();
24 virtual void prepareForPhysicsSimulation()
override;
26 virtual bool updateArguments(QVariantMap arguments)
override;
27 virtual QVariantMap getArguments()
override;
29 virtual QByteArray serialize()
const override;
30 virtual void deserialize(QByteArray serializedArguments)
override;
32 virtual QList<btRigidBody*> getRigidBodies()
override;
33 virtual btTypedConstraint* getConstraint()
override;
36 static const uint16_t constraintVersion;
38 void updateConeTwist();
46 float _swingSpan1 { TWO_PI };
47 float _swingSpan2 { TWO_PI };;
48 float _twistSpan { TWO_PI };;