Browse Source

debuggers: display when a Quaternion is a unit quaternion

Method is the same as the previous commit for the vectors.
pull/168/head
fauder 3 years ago committed by Vladimír Vondruš
parent
commit
e7e2a032aa
  1. 17
      src/debuggers/natvis/magnum.natvis

17
src/debuggers/natvis/magnum.natvis

@ -136,10 +136,21 @@
<DisplayString IncludeView="simple">{{ {hue._value,g}, {saturation,g}, {value,g} }}</DisplayString>
<DisplayString ExcludeView="simple">{{ h={hue._value,g} s={saturation,g} v={value,g} }}</DisplayString>
</Type>
<!-- Math::Quaternion -->
<Type Name="Magnum::Math::Quaternion&lt;*&gt;">
<!-- Math::Quaternion<Float> -->
<Type Name="Magnum::Math::Quaternion&lt;float&gt;">
<Intrinsic Name="Dot" Expression="_vector._data[0]*_vector._data[0]+_vector._data[1]*_vector._data[1]+_vector._data[2]*_vector._data[2]+_scalar*_scalar"></Intrinsic>
<Intrinsic Name="IsNormalized" Expression="Dot()&gt;0.99980000000500002&amp;Dot()&lt;1.0001999999950000"></Intrinsic>
<DisplayString IncludeView="simple">{{ {_vector._data[0],g}, {_vector._data[1],g}, {_vector._data[2],g}, {_scalar,g} }}</DisplayString>
<DisplayString ExcludeView="simple" Condition="!IsNormalized()">{{ x={_vector._data[0],g} y={_vector._data[1],g} z={_vector._data[2],g} w={_scalar,g} }}</DisplayString>
<DisplayString ExcludeView="simple" Condition="IsNormalized()">{{ x={_vector._data[0],g} y={_vector._data[1],g} z={_vector._data[2],g} w={_scalar,g} (normalized) }}</DisplayString>
</Type>
<!-- Math::Quaternion<Double> -->
<Type Name="Magnum::Math::Quaternion&lt;double&gt;">
<Intrinsic Name="Dot" Expression="_vector._data[0]*_vector._data[0]+_vector._data[1]*_vector._data[1]+_vector._data[2]*_vector._data[2]+_scalar*_scalar"></Intrinsic>
<Intrinsic Name="IsNormalized" Expression="Dot()&gt;0.99999999999998002&amp;Dot()&lt;1.0000000000000200"></Intrinsic>
<DisplayString IncludeView="simple">{{ {_vector._data[0],g}, {_vector._data[1],g}, {_vector._data[2],g}, {_scalar,g} }}</DisplayString>
<DisplayString ExcludeView="simple">{{ x={_vector._data[0],g} y={_vector._data[1],g} z={_vector._data[2],g} w={_scalar,g} }}</DisplayString>
<DisplayString ExcludeView="simple" Condition="!IsNormalized()">{{ x={_vector._data[0],g} y={_vector._data[1],g} z={_vector._data[2],g} w={_scalar,g} }}</DisplayString>
<DisplayString ExcludeView="simple" Condition="IsNormalized()">{{ x={_vector._data[0],g} y={_vector._data[1],g} z={_vector._data[2],g} w={_scalar,g} (normalized) }}</DisplayString>
</Type>
<!-- Math::RectangularMatrix -->
<Type Name="Magnum::Math::RectangularMatrix&lt;*&gt;">

Loading…
Cancel
Save