# quat_to_matrix(3alleg4) [opendarwin man page]

```quat_to_matrix(3alleg4) 					  Allegro manual					   quat_to_matrix(3alleg4)

NAME
quat_to_matrix - Constructs a rotation matrix from a quaternion. Allegro game programming library.

SYNOPSIS
#include <allegro.h>

void quat_to_matrix(const QUAT *q, MATRIX_f *m);

DESCRIPTION
Constructs a rotation matrix from a quaternion.

exquat(3alleg4)

Allegro 							   version 4.4.2					   quat_to_matrix(3alleg4)```

## Check Out this Related Man Page

```exquat(3alleg4) 						  Allegro manual						   exquat(3alleg4)

NAME
exquat - A comparison between Euler angles and quaternions. Allegro game programming library.

SYNOPSIS
#include <allegro.h>

Example exquat

DESCRIPTION
Euler  angles  are  convenient  for  storing  and creating 3D orientations.  However, this program demonstrates that they are not good when
interpolating between two different orientations. The problem is solved by using Allegro's quaternion operations.

In this program, two cubes are rotated between random orientations.  Notice that although they have the same beginning and ending  orienta-
tions, they do not follow the same path between orientations.

One  cube  is being rotated by directly incrementing or decrementing the Euler angles from the starting point to the ending point.  This is
an intuitive notion, but it is incorrect because it does not cause the object to turn around a single unchanging  axis  of  rotation.   The
axis  of  rotation  wobbles resulting in the object spinning in strange ways. The object will eventually end up in the orientation that the
user intended, but it gets there in a way that is unattractive.	Imagine if this method was used to update the position of a  camera  in  a
game! Sometimes it would swing wildly and disorient the player.

The other cube is animated using quaternions. This results in a much more pleasing animation because the cube turns around a single axis of
rotation.

BITMAP(3alleg4),   END_OF_MAIN(3alleg4),   MATRIX_f(3alleg4),   QUAT(3alleg4),	acquire_bitmap(3alleg4),   allegro_error(3alleg4),   alle-
gro_init(3alleg4),    allegro_message(3alleg4),	  apply_matrix_f(3alleg4),    blit(3alleg4),	circle(3alleg4),    clear_keybuf(3alleg4),
clear_to_color(3alleg4),    create_bitmap(3alleg4),    desktop_palette(3alleg4),    destroy_bitmap(3alleg4),    font(3alleg4),	  get_cam-
era_matrix_f(3alleg4), get_rotation_matrix(3alleg4), get_rotation_matrix_f(3alleg4), get_rotation_quat(3alleg4), install_keyboard(3alleg4),
keypressed(3alleg4), line(3alleg4),  matrix_mul_f(3alleg4),  palette_color(3alleg4),  persp_project_f(3alleg4),	quat_interpolate(3alleg4),
quat_to_matrix(3alleg4),   readkey(3alleg4),   release_bitmap(3alleg4),	rest(3alleg4),	screen(3alleg4),  set_gfx_mode(3alleg4),  set_pal-
ette(3alleg4), set_projection_viewport(3alleg4), textout_ex(3alleg4)

Allegro 							   version 4.4.2						   exquat(3alleg4)```
Man Page

## Shopt -s histappend

What is the point of this? Whenever I close my shell it appends to the history file without adding this. I have never seen it overwrite my history file. # When the shell exits, append to the history file instead of overwriting it shopt -s histappend

## Undeletable file

Greetings, I'm trying to delete a file with a weird name from within Terminal on a Mac. It's a very old file (1992) with null characters in the name: ââWord FinderÂŽ Plusâ˘. Here are some examples of what I've tried: 12FX009:5 dpontius\$ ls ââWord FinderÂŽ Plusâ˘ 12FX009:5 dpontius\$ rm...