Force effects for object types in a graphical user interface
First Claim
1. A method for interfacing a multi-tasking graphical environment implemented on a host computer with a force feedback interface device coupled to said host computer, wherein a plurality of application programs are running in said multi-tasking environment, the method comprising:
- creating a context associated with each application program running in said multi-tasking graphical environment, said contexts being allocated in memory of said host computer;
receiving force effect commands from said application programs, said force effect commands commanding said force feedback interface device to output a force effect specified by said command;
storing said force effect commands into said contexts, wherein each of said contexts is associated with one of said application programs running on said host computer, and wherein each of said force effect commands is stored in a context associated with said application program that sent said force effect command; and
sending said force effect commands in said context of an application program to said force feedback device when said application program is active in said multi-tasking environment.
1 Assignment
0 Petitions
Accused Products
Abstract
A force feedback system provides components for use in a force feedback system including a host computer and a force feedback interface device. An architecture for a host computer allows multi-tasking application programs to interface with the force feedback device without conflicts. One embodiment of a force feedback device provides both relative position reporting and absolute position reporting to allow great flexibility. A different device embodiment provides relative position reporting device allowing maximum compatibility with existing software. Information such as ballistic parameters and screen size sent from the host to the force feedback device allow accurate mouse positions and cursor positions to be determined in the force feedback environment. Force feedback effects and structures are further described, such as events and enclosures.
126 Citations
40 Claims
-
1. A method for interfacing a multi-tasking graphical environment implemented on a host computer with a force feedback interface device coupled to said host computer, wherein a plurality of application programs are running in said multi-tasking environment, the method comprising:
-
creating a context associated with each application program running in said multi-tasking graphical environment, said contexts being allocated in memory of said host computer;
receiving force effect commands from said application programs, said force effect commands commanding said force feedback interface device to output a force effect specified by said command;
storing said force effect commands into said contexts, wherein each of said contexts is associated with one of said application programs running on said host computer, and wherein each of said force effect commands is stored in a context associated with said application program that sent said force effect command; and
sending said force effect commands in said context of an application program to said force feedback device when said application program is active in said multi-tasking environment. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for controlling a force feedback interface device coupled to a host computer displaying a graphical environment and a cursor within said graphical environment on a display screen, the method comprising:
-
reading sensor data and determining a position of a user manipulandum in a device frame of said force feedback interface device from said sensor data, said manipulandum being physically contacted and moveable by a user;
determining a device delta position of said manipulandum that includes the change in position of said manipulandum from a previous position, and reporting said device delta position to said host computer when said host computer is not enabled to receive a screen position of said cursor from said force feedback interface device; and
when said host computer is enabled to receive said screen position of said cursor from said force feedback interface device, determining said screen position from said device delta position, said screen position provided in a screen frame of said display screen, reporting said screen position to said host computer to allow said host computer to display said cursor in said screen frame at said screen position, and using a scaled position of said manipulandum related to said screen position of said cursor in determining a force to be output by actuators of said force feedback interface device. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A force feedback interface device coupled to a host computer displaying a graphical environment and a user-controlled graphical object within said graphical environment on a display device, the interface device comprising:
-
a user manipulandum physically contacted by a user and movable in a planar workspace in two degrees of freedom;
a sensor that provides raw data describing a device position of said manipulandum in said workspace;
a plurality of actuators coupled to said manipulandum that provide a force on said manipulandum in said planar workspace; and
a local microprocessor, separate from said host computer and coupled to said sensor and to said actuators, said local microprocessor;
determining a delta position of said manipulandum that includes the change in position of said manipulandum from a previous position, said microprocessor reporting said delta position to said host computer when said host computer is not enabled to receive a screen position;
determining said screen position of said user-controlled graphical object from said delta position, reporting said screen position to said host computer to allow said host computer to display said user-controlled graphical object at said screen position, and using said screen position in determination of said force output by said actuators. - View Dependent Claims (23, 24, 25, 26, 27, 28)
-
-
29. A force feedback interface device coupled to a host computer displaying a graphical environment and a user-controlled graphical object within said graphical environment on a display device, the interface device comprising:
-
a user manipulandum physically contacted by a user and movable in a planar workspace in two degrees of freedom;
a sensor that provides raw data describing a device position of said manipulandum in said workspace;
a plurality of actuators coupled to said manipulandum that provide a force on said manipulandum in said planar workspace; and
a local microprocessor, separate from said host computer and coupled to said sensor and to said actuators, said local microprocessor;
determining a delta position of said manipulandum that includes the change in position of said manipulandum from a previous position, said microprocessor reporting said delta position to said host computer;
modeling a screen position of said user-controlled graphical object from said delta position and using said modeled screen position in determination of said force output by said actuators; and
receiving an actual screen position of said user-controlled graphical object from said host computer and correcting said modeled screen position using said actual screen position. - View Dependent Claims (30, 31, 32, 33, 34, 35)
-
-
36. A method for controlling a force feedback interface device coupled to a host computer displaying a graphical environment and a cursor within said graphical environment on a display screen, the method comprising:
-
reading sensor data and determining a position of a user manipulandum in a workspace of said force feedback interface device from said sensor data, said manipulandum being physically contacted and moveable by a user;
reporting a position of said manipulandum to said host computer, said position used by said host to display said cursor in said graphical environment; and
receiving information from said host computer describing a current screen size of said display screen of said host computer, wherein said current screen size is included in a determination of said position reported to said host. - View Dependent Claims (37, 38, 39, 40)
-
Specification