Lines Matching refs:axes
104 const struct tablet_axes *axes)
109 tablet->history.samples[index] = *axes;
115 tablet_history_push(tablet, axes);
417 x = tablet->axes.tilt.x;
418 y = tablet->axes.tilt.y;
426 tablet->axes.rotation = angle;
468 tablet->axes.point.x = value;
477 tablet->axes.point.y = value;
479 evdev_transform_absolute(device, &tablet->axes.point);
487 struct tablet_axes *axes,
502 delta.x = axes->point.x - tablet->last_smooth_point.x;
503 delta.y = axes->point.y - tablet->last_smooth_point.y;
506 if (axes->point.x != tablet->last_smooth_point.x)
508 if (axes->point.y != tablet->last_smooth_point.y)
511 tablet->last_smooth_point = axes->point;
538 tablet->axes.pressure = normalize_pressure(absinfo, tool);
554 tablet->axes.distance = normalize_distance(absinfo);
570 tablet->axes.slider = normalize_slider(absinfo);
584 /* mouse rotation resets tilt to 0 so always fetch both axes if
592 tablet->axes.tilt.x = adjust_tilt(absinfo);
595 tablet->axes.tilt.y = adjust_tilt(absinfo);
598 tablet->axes.tilt.x *= -1;
599 tablet->axes.tilt.y *= -1;
618 tablet->axes.rotation = convert_to_degrees(absinfo, 90);
638 /* We must check ROTATION_Z after TILT_X/Y so that the tilt axes are
645 tablet->axes.tilt.x = 0;
646 tablet->axes.tilt.y = 0;
655 double r = tablet->axes.rotation;
656 tablet->axes.rotation = fmod(180 + r, 360);
669 /* tablet->axes.wheel_discrete is already set */
670 tablet->axes.wheel = normalize_wheel(tablet,
671 tablet->axes.wheel_discrete);
673 tablet->axes.wheel = 0;
674 tablet->axes.wheel_discrete = 0;
680 struct tablet_axes *axes)
696 axes->point.x = smooth.point.x/count;
697 axes->point.y = smooth.point.y/count;
699 axes->tilt.x = smooth.tilt.x/count;
700 axes->tilt.y = smooth.tilt.y/count;
710 struct tablet_axes axes = {0};
715 axes = tablet->axes;
725 /* We must check ROTATION_Z after TILT_X/Y so that the tilt axes are
729 axes.point = tablet->axes.point;
730 axes.pressure = tablet->axes.pressure;
731 axes.distance = tablet->axes.distance;
732 axes.slider = tablet->axes.slider;
733 axes.tilt = tablet->axes.tilt;
734 axes.wheel = tablet->axes.wheel;
735 axes.wheel_discrete = tablet->axes.wheel_discrete;
736 axes.rotation = tablet->axes.rotation;
749 tablet_history_push(tablet, &tablet->axes);
750 tablet_smoothen_axes(tablet, &axes);
753 axes.delta = tablet_tool_process_delta(tablet, tool, device, &axes, time);
755 *axes_out = axes;
880 tablet->axes.wheel_discrete = -1 * e->value;
944 WacomAxisTypeFlags axes;
970 axes = libwacom_stylus_get_axes(s);
972 if (axes & WACOM_AXIS_TYPE_TILT) {
986 if (axes & WACOM_AXIS_TYPE_ROTATION_Z)
988 if (axes & WACOM_AXIS_TYPE_DISTANCE)
990 if (axes & WACOM_AXIS_TYPE_SLIDER)
992 if (axes & WACOM_AXIS_TYPE_PRESSURE)
1224 &tablet->axes,
1284 tablet->axes.distance = 0;
1288 tablet->axes.pressure = 0;
1292 if (tablet->axes.pressure == 0)
1296 tablet->axes.pressure = 0;
1552 mm = evdev_device_units_to_mm(device, &tablet->axes.point);
1562 if (tablet->axes.tilt.x > 0) {
1588 const struct tablet_axes *axes,
1612 struct tablet_axes *axes,
1623 axes);
1628 axes->delta.x = 0;
1629 axes->delta.y = 0;
1638 struct tablet_axes *axes,
1649 axes);
1655 axes->delta.x = 0;
1656 axes->delta.y = 0;
1665 struct tablet_axes *axes,
1674 axes);
1680 axes->delta.x = 0;
1681 axes->delta.y = 0;
1692 axes);
1698 axes->delta.x = 0;
1699 axes->delta.y = 0;
1711 struct tablet_axes *axes,
1730 axes);
1733 axes->delta.x = 0;
1734 axes->delta.y = 0;
1768 struct tablet_axes axes = {0};
1773 * current state and skip over updating the axes.
1775 axes = tablet->axes;
1781 if (tablet_check_notify_axes(tablet, device, tool, &axes, time))
1782 tablet_update_touch_device_rect(tablet, &axes, time);
1785 assert(tablet->axes.delta.x == 0);
1786 assert(tablet->axes.delta.y == 0);
1788 tablet_send_proximity_in(tablet, tool, device, &axes, time);
1789 if (!tablet_send_tip(tablet, tool, device, &axes, time))
1790 tablet_send_axes(tablet, tool, device, &axes, time);
1797 if (tablet_send_proximity_out(tablet, tool, device, &axes, time)) {
2046 } else if (tablet->axes.tilt.x == 0) {