# jit.euler2quat

## Description

Convert Euler X/Y/Z representation of an orientation to a quaternion. Jitter quaternions are ordered X Y Z W.

## Discussion

A quaternion is a mathematical construct that is a four dimensional vector, and can be visualized as a rotation around an arbitrary axis. Quaternions are a useful representation of an orientation in 3D space.

## Attributes

### euler [3 floats]

The Euler angles to be converted. (default = 0 0 0)

### normalize [int]

Normalize the quaternion before outputting (default = 0).

### quat [4 floats]

g/s(get)

The resulting quaternion after the conversion.

### rotate_order [symbol]

Set the order rotations are applied (default = auto). E.G. if set to xyz , the object is first rotated around its X axis, then Y, and finally Z. The default of auto implements yzx ordering. To replicate Max 5, use zyx . Possible values:

'auto'
'xyz'
'xzy'
'yxz'
'yzx'
'zxy'
'zyx'

### annotation [symbol]

Sets the text that will be displayed in the Clue window when the user moves the mouse over the object.

### background [int] (default: 0)

Adds or removes the object from the patcher's background layer. background 1 adds the object to the background layer, background 0 removes it. Objects in the background layer are shown behind all objects in the default foreground layer.

### color [4 floats]

Sets the color for the object box outline.

### fontface [int]

Sets the type style used by the object. The options are:

plain
bold
italic
bold italic Possible values:

0 = 'regular'
1 = 'bold'
2 = 'italic'
3 = 'bold italic'

### fontname [symbol]

Sets the object's font.

### fontsize [float]

Sets the object's font size (in points). Possible values:

'8'
'9'
'10'
'11'
'12'
'13'
'14'
'16'
'18'
'20'
'24'
'30'
'36'
'48'
'64'
'72'

### hidden [int] (default: 0)

Toggles whether an object is hidden when the patcher is locked.

### hint [symbol]

Sets the text that will be displayed in as a pop-up hint when the user moves the mouse over the object in a locked patcher.

### ignoreclick [int] (default: 0)

Toggles whether an object ignores mouse clicks in a locked patcher.

JS Painter File

### patching_rect [4 floats] (default: 0. 0. 100. 0.)

Sets the position and size of the object in the patcher window.

### position [2 floats]

g/s(set)

Sets the object's x and y position in both patching and presentation modes (if the object belongs to its patcher's presentation), leaving its size unchanged.

### presentation [int] (default: 0)

Sets whether an object belongs to the patcher's presentation.

### presentation_rect [4 floats] (default: 0. 0. 0. 0.)

Sets the x and y position and width and height of the object in the patcher's presentation, leaving its patching position unchanged.

### rect [4 floats]

g/s(set)

Sets the x and y position and width and height of the object in both patching and presentation modes (if the object belongs to its patcher's presentation).

### size [2 floats]

g/s(set)

Sets the object's width and height in both patching and presentation modes (if the object belongs to its patcher's presentation), leaving its position unchanged.

### textcolor [4 floats]

Sets the color for the object's text in RGBA format.

### textjustification [int]

Sets the justification for the object's text. Possible values:

0 = 'left'
1 = 'center'
2 = 'right'

### varname [symbol]

Sets the patcher's scripting name, which can be used to address the object by name in pattr, scripting messages to thispatcher, and the js object.

## Messages

### bang

Output the resulting quaternion conversion.

### list

#### Arguments

x [float]
y [float]
z [float]
A three element list of floating point numbers interpreted as Euler angles in degrees, is converted to a quaternion and output.