×

3D mouse and game controller based on spherical coordinates system and system for use

  • US 7,683,883 B2
  • Filed: 10/31/2005
  • Issued: 03/23/2010
  • Est. Priority Date: 11/02/2004
  • Status: Expired due to Fees
First Claim
Patent Images

1. A system for manipulating a three-dimensional object presented on a two-dimensional display, the system comprising:

  • a hand-held device comprising;

    an accelerometer that generates a tilt signal relative to a gravitational vector wherein;

    the tilt signal is measured as a response of the projection of static gravity on the tilted accelerometer;

    tilt signal generation does not rely on a detector selected from the group consisting of a gyroscope, an acoustic detector, a magnetic detector, and an optical detector to generate a movement signal;

    the accelerometer is most sensitive to tilt when the accelerometer is perpendicular to gravity; and

    the tilt signal comprises a pitch signal and a roll signal where pitch and roll are rotations about two perpendicular axes orthogonal to the gravitational vector;

    a linear input element that generates an electrical signal in response to user input wherein the linear input element comprises a push button and wherein;

    the linear input element does not use a detector selected from the group consisting of an acoustic detector, a magnetic detector, and an optical detector to generate the electrical signal;

    the linear input element does not use information received from outside the device to generate the electrical signal;

    the linear input element generates the electrical signal of a magnitude controlled by the user;

    the linear input element generates the electrical signal of a magnitude proportionate to user input action; and

    an electronic circuit connected to the accelerometer and connected to the linear input element wherein the circuit;

    comprises a control unit, a memory unit, a communications unit; and

    a battery;

    wherein the control unit further comprises a micro-controller;

    a digital signal processor, a field programmable gate array, and at least one other machine readable storage device;

    calculates the pitch and the roll from the tilt signal without using input from a device selected from the group consisting of a gyroscope, an acoustic detector, a magnetic detector, and an optical detector;

    calculates pitch and roll according to the following equations;

    Pitch = Arc



    Sin

    ( Ax 1

    g
    )
    Roll = Arc



    Sin

    ( Ay 1

    g
    )


    wherein Ax is the acceleration in an arbitrarily direction parallel to the earth'"'"'s surface, Ay is the acceleration in a second direction parallel to the earth'"'"'s surface that is perpendicular to the direction defined by Ax, and g is gravity;

    receives the electrical signal from the linear input element to determine a variable radial distance;

    calculates the location and orientation of the three-dimensional object using the following equation;

    R 1

    B
    = [ cos

    ( ψ

    )
    ·

    cos

    ( θ

    )
    sin

    ( ψ

    )
    ·

    cos

    ( θ

    )
    - sin

    ( θ

    )
    cos

    ( ψ

    )
    ·

    sin

    ( θ

    )
    ·

    sin

    ( φ

    )
    -
    sin

    ( ψ

    )
    ·

    cos

    ( φ

    )
    sin

    ( ψ

    )
    ·

    sin

    ( θ

    )
    ·

    sin

    ( φ

    )
    -
    cos

    ( ψ

    )
    ·

    cos

    ( φ

    )
    cos

    ( θ

    )
    ·

    sin

    ( φ

    )
    cos

    ( ψ

    )
    ·

    sin

    ( θ

    )
    ·

    cos

    ( φ

    )
    -
    sin

    ( ψ

    )
    ·

    sin

    ( φ

    )
    sin

    ( ψ

    )
    ·

    sin

    ( θ

    )
    ·

    cos

    ( φ

    )
    -
    cos

    ( ψ

    )
    ·

    sin

    ( φ

    )
    cos

    ( θ

    )
    ·

    cos

    ( φ

    )
    ]
    ;



    wherein ψ

    is rotation about a vertical axis pointing vertically upward from the earth, θ

    rotation about an axis that this perpendicular to the axis used to determine ψ

    , and φ

    is rotation about an axis that is orthogonal to the axes of rotation for both ψ and

    θ

    ;

    calculates the location and movement direction of the object in a three-dimensional environment based on spherical coordinates; and

    expresses the instantaneous position of the object in an inertial reference frame in Cartesian coordinates as a function of the radius and spherical angles according to the following equations;


    X=R(t).Cos(α

    ).Sin(β

    )
    Y=R(t).Sin(α

    ).Sin(β

    )
    Z=R(t).Cos(β

    )  

    wherein X, Y, and Z represent a location in a Cartesian coordinate domain having the same origin as a spherical coordinate domain defined by the radius R(t) responsive to the electrical signal, an α

    angle representing the longitudinal relationship between R(t) and the ZX plane in the Cartesian coordinates, and a β

    angle representing the colatitudinal relationship between R(t) and the Z axis, wherein the α

    angle is responsive to roll and β

    angle is responsive to pitch and;

    generates a yaw dimension signal on the device using a mathematical transformation to graphically simulate a rotation of the field of view without the use of a module selected from the group consisting of a gyroscope and a magnetometer; and

    generates the yaw dimension signal having a field-of-view rotation responsive to the electrical signal from the linear input element; and

    a computer responsive to the communications unit comprising;

    the two-dimensional display;

    an information processing unit selected from the group consisting of a personal digital assistant, a personal computer, a mainframe, a mini-computer, an electronic game, and a micro-processor based systems used to control a device from the group consisting of a personal device, an industrial vehicle, a medical vehicle, and an appliance;

    a communications module; and

    computer-readable code for manipulating, presenting, and managing 3-dimensional objects wherein;

    the communications module receives the location and orientation information;

    the communications module receives the yaw dimension signal;

    the computer presents the received information and presents an updated view of the object in virtual spherical coordinates on the display; and

    the computer modifies the field of view in response to the yaw dimension signal.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×