.\" Automatically generated by Pandoc 3.1.12.1 .\" .TH "al_set_mouse_wheel_precision" "3" "" "Allegro reference manual" "" .SH NAME al_set_mouse_wheel_precision \- Allegro 5 API .SH SYNOPSIS .IP .EX #include \f[B]\f[R] void al_set_mouse_wheel_precision(int precision) .EE .SH DESCRIPTION Sets the precision of the mouse wheel (the z and w coordinates). This precision manifests itself as a multiplier on the \f[CR]dz\f[R] and \f[CR]dw\f[R] fields in mouse events. It also affects the \f[CR]z\f[R] and \f[CR]w\f[R] fields of events and ALLEGRO_MOUSE_STATE(3), but not in a simple way if you alter the precision often, so it is suggested to reset those axes to 0 when you change precision. Setting this to a high value allows you to detect small changes in those two axes for some high precision mice. A flexible way of using this precision is to set it to a high value (120 is likely sufficient for most, if not all, mice) and use a floating point \f[CR]dz\f[R] and \f[CR]dw\f[R] like so: .IP .EX al_set_mouse_wheel_precision(120); ALLEGRO_EVENT event; al_wait_for_event(event_queue, &event); \f[B]if\f[R] (event.type == ALLEGRO_EVENT_MOUSE_AXES) { double dz = (double)event.mouse.dz / al_get_mouse_wheel_precision(); \f[I]/* Use dz in some way... */\f[R] } .EE .PP Precision is set to 1 by default. It is impossible to set it to a lower precision than that. .SH SINCE 5.1.10 .SH SEE ALSO al_get_mouse_wheel_precision(3)