Przemo,

If you don't have problem with my fun filled patch, I think these two
patches can be merged.  You can move this routine to wcmFilter.c and
remove the file altogether.  I agree with you that wcmFilter.c fits
better than wcmCommon.c.

Please confirm.  Thank you.

Ping

2010/1/12 Ping <pingli...@gmail.com>:
> 2010/1/12 Przemysław Firszt <prz...@firszt.eu>:
>
>>> weird, how comes this line was moved by the diff?
>> Looks like some mess in my private tree. I'll fix it as soon as we'll
>> get test results from Ping.
>
> Attached patch is based on Przemo's.  Not much difference from
> driver's perspective. However, it's a pain to see Przemo take all the
> joy by himself :).
>
> Ping
>
> From a36fbf77cf829920d1f877f8e7652cc7d42ee590 Mon Sep 17 00:00:00 2001
> From: Ping Cheng <pi...@wacom.com>
> Date: Tue, 12 Jan 2010 13:34:46 -0800
> Subject: [PATCH 2/2] Being part of the tilt2Rotation team
>
> For the fun of coding and hopefully, as a by-product, improving the precision
>
> Signed-off-by:  Ping Cheng <pingli...@gmail.com>
> ---
>  src/wcmTilt2Rotation.c |   13 ++++++-------
>  1 files changed, 6 insertions(+), 7 deletions(-)
>
> diff --git a/src/wcmTilt2Rotation.c b/src/wcmTilt2Rotation.c
> index 925bbd4..e7e69af 100644
> --- a/src/wcmTilt2Rotation.c
> +++ b/src/wcmTilt2Rotation.c
> @@ -23,11 +23,6 @@
>  #include "xf86Wacom.h"
>  #include <math.h>
>
> -#ifndef M_PI
> -#define M_PI 3.14159265358979323846
> -#endif
> -
> -
>  void wcmTilt2R(WacomDeviceStatePtr ds);
>
>  /*****************************************************************************
> @@ -40,11 +35,15 @@ void wcmTilt2R(WacomDeviceStatePtr ds)
>  {
>        short tilt_x = ds->tiltx;
>        short tilt_y = ds->tilty;
> +       double rotation = 0.0;
>
> -       ds->rotation = ABS(round(((180 * atan2(tilt_x,tilt_y)) / M_PI) - 
> 180));
> +       /* other tilt-enabled devices need to apply round() after this call */
> +       if (tilt_x || tilt_y)
> +               rotation = ((180.0 * atan2(-tilt_x,tilt_y)) / M_PI) + 180.0;
>
>        /* Intuos4 mouse has an (180-5) offset */
> -       ds->rotation = ((360 - ds->rotation + 180 - 5) % 360) * 5;
> +       ds->rotation = round((360.0 - rotation + 180.0 - 5.0) * 5.0);
> +       ds->rotation %= 1800;
>
>        if (ds->rotation >= 900)
>                ds->rotation = 1800 - ds->rotation;
> --
> 1.6.5.2
>

------------------------------------------------------------------------------
Throughout its 18-year history, RSA Conference consistently attracts the
world's best and brightest in the field, creating opportunities for Conference
attendees to learn about information security's most important issues through
interactions with peers, luminaries and emerging and established companies.
http://p.sf.net/sfu/rsaconf-dev2dev
_______________________________________________
Linuxwacom-devel mailing list
Linuxwacom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel

Reply via email to