The RotationXWidget JavaScript class. A rotatable circle widget around the x axis.
A rotation script widget along the x axis. This widget offers a circle in the YZ axis. The circle can be picked and dragged by the user to generate a rotation around the x axis. The following properties are supported by the widget:
Property | Type | Default Value | Description |
data | String | - | The name of the automatically generated double floating point attribute (if none is provided) |
data | Attribute | - | An attribute of double (floating point) type that can be shared with another widget or node. |
radius | float | 1 | The radius of the circle in fields. |
width | float | 0.03 | The width between the external and internal circles (band) in fields. |
color | ColorRGBA | 255, 0, 0, 120 | The colour of the circle manipulator. |
selection_color | ColorRGBA | light red | The colour of the circle manipulator when selected. |
The following components constitute the widget:
Component | Type |
attribute | DOUBLE |
drag_manipulator | ROTATION_X |
painter | CIRCLE_X |
picker | MONO |
local_transformation | ROTATION_X |
Connect to this scriptWidget valueChanged signal to be notified when a modification has been applied to the widget.
{
{
radius : 2,
width : 0.05,
} );
}
In the callback function, convert the widget value into an action.
function myRotationChanged(newRotation)
{
rotationMatrix.rotateDegrees(newRotation, xaxis);
for(var i=0; i < myPegs.length; ++i)
{
var newPosition = rotationMatrix.multiply(myPegs[i].position);
}
}