Merge pull request #5201 from Hinsbart/quat_op
Expose missing Quaternion operators.
This commit is contained in:
commit
60fa2b9815
|
@ -477,7 +477,7 @@ void Variant::evaluate(const Operator& p_op, const Variant& p_a, const Variant&
|
||||||
DEFAULT_OP_FAIL(MATRIX32);
|
DEFAULT_OP_FAIL(MATRIX32);
|
||||||
DEFAULT_OP_LOCALMEM(+,VECTOR3,Vector3);
|
DEFAULT_OP_LOCALMEM(+,VECTOR3,Vector3);
|
||||||
DEFAULT_OP_FAIL(PLANE);
|
DEFAULT_OP_FAIL(PLANE);
|
||||||
DEFAULT_OP_FAIL(QUAT);
|
DEFAULT_OP_LOCALMEM(+, QUAT, Quat);
|
||||||
DEFAULT_OP_FAIL(_AABB);
|
DEFAULT_OP_FAIL(_AABB);
|
||||||
DEFAULT_OP_FAIL(MATRIX3);
|
DEFAULT_OP_FAIL(MATRIX3);
|
||||||
DEFAULT_OP_FAIL(TRANSFORM);
|
DEFAULT_OP_FAIL(TRANSFORM);
|
||||||
|
@ -535,7 +535,7 @@ void Variant::evaluate(const Operator& p_op, const Variant& p_a, const Variant&
|
||||||
DEFAULT_OP_FAIL(MATRIX32);
|
DEFAULT_OP_FAIL(MATRIX32);
|
||||||
DEFAULT_OP_LOCALMEM(-,VECTOR3,Vector3);
|
DEFAULT_OP_LOCALMEM(-,VECTOR3,Vector3);
|
||||||
DEFAULT_OP_FAIL(PLANE);
|
DEFAULT_OP_FAIL(PLANE);
|
||||||
DEFAULT_OP_FAIL(QUAT);
|
DEFAULT_OP_LOCALMEM(-, QUAT, Quat);
|
||||||
DEFAULT_OP_FAIL(_AABB);
|
DEFAULT_OP_FAIL(_AABB);
|
||||||
DEFAULT_OP_FAIL(MATRIX3);
|
DEFAULT_OP_FAIL(MATRIX3);
|
||||||
DEFAULT_OP_FAIL(TRANSFORM);
|
DEFAULT_OP_FAIL(TRANSFORM);
|
||||||
|
@ -597,6 +597,9 @@ void Variant::evaluate(const Operator& p_op, const Variant& p_a, const Variant&
|
||||||
|
|
||||||
_RETURN( *reinterpret_cast<const Quat*>(p_a._data._mem) * *reinterpret_cast<const Quat*>(p_b._data._mem) );
|
_RETURN( *reinterpret_cast<const Quat*>(p_a._data._mem) * *reinterpret_cast<const Quat*>(p_b._data._mem) );
|
||||||
} break;
|
} break;
|
||||||
|
case REAL: {
|
||||||
|
_RETURN( *reinterpret_cast<const Quat*>(p_a._data._mem) * p_b._data._real);
|
||||||
|
} break;
|
||||||
};
|
};
|
||||||
r_valid=false;
|
r_valid=false;
|
||||||
return;
|
return;
|
||||||
|
@ -699,7 +702,13 @@ void Variant::evaluate(const Operator& p_op, const Variant& p_a, const Variant&
|
||||||
DEFAULT_OP_FAIL(MATRIX32);
|
DEFAULT_OP_FAIL(MATRIX32);
|
||||||
DEFAULT_OP_LOCALMEM_NUM(/,VECTOR3,Vector3);
|
DEFAULT_OP_LOCALMEM_NUM(/,VECTOR3,Vector3);
|
||||||
DEFAULT_OP_FAIL(PLANE);
|
DEFAULT_OP_FAIL(PLANE);
|
||||||
DEFAULT_OP_FAIL(QUAT);
|
case QUAT: {
|
||||||
|
if (p_b.type != REAL) {
|
||||||
|
r_valid = false;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
_RETURN( *reinterpret_cast<const Quat*>(p_a._data._mem) / p_b._data._real);
|
||||||
|
} break;
|
||||||
DEFAULT_OP_FAIL(_AABB);
|
DEFAULT_OP_FAIL(_AABB);
|
||||||
DEFAULT_OP_FAIL(MATRIX3);
|
DEFAULT_OP_FAIL(MATRIX3);
|
||||||
DEFAULT_OP_FAIL(TRANSFORM);
|
DEFAULT_OP_FAIL(TRANSFORM);
|
||||||
|
|
Loading…
Reference in New Issue