Method and apparatus for manipulating two-dimensional windows within a three-dimensional display model
First Claim
1. A method for manipulating a window within a three-dimensional (3D) display model, comprising:
- receiving an input from a 2D pointing device, wherein the input specifies a 2D offset within a 2D display, wherein the 2D display provides a view into the 3D display model;
using the 2D offset to move a cursor to a position in the 2D display;
determining if the cursor overlaps a window within the 3D display model by projecting a ray from a predefined viewpoint in the 3D display model through the cursor, which is located in a rectangle representing the 2D display in the 3D display model, toward one or more windows in the 3D display model and determining if the ray intersects a window;
if the cursor overlaps a window,determining a 2D position of the cursor with respect to a 2D coordinate system for the window, andcommunicating the 2D position to an application associated with the window to enable a user of the 2D pointing device to interact with the application; and
displaying the window as a 3D object;
wherein when the window is rotated, a spine located on a side edge of the window becomes visible, wherein the spine contains a title for the same window, and wherein the thickness of the spine is significantly less than the dimension of the window.
2 Assignments
0 Petitions
Accused Products
Abstract
One embodiment of the present invention provides a system that facilitates manipulating a 2D window within a three-dimensional (3D) display model. During operation, the system receives an input from a 2D pointing device, wherein the input specifies a 2D offset within a 2D display, and wherein the 2D display provides a view into the 3D display model. Next, the system uses the 2D offset to move a cursor to a position in the 2D display, and then determines if the cursor overlaps a window within the 3D display model. If so, the system determines a 2D position of the cursor with respect to a 2D coordinate system for the window, and communicates this 2D position to an application associated with the window. This enables a user of the 2D pointing device to interact with the application.
-
Citations
31 Claims
-
1. A method for manipulating a window within a three-dimensional (3D) display model, comprising:
-
receiving an input from a 2D pointing device, wherein the input specifies a 2D offset within a 2D display, wherein the 2D display provides a view into the 3D display model; using the 2D offset to move a cursor to a position in the 2D display; determining if the cursor overlaps a window within the 3D display model by projecting a ray from a predefined viewpoint in the 3D display model through the cursor, which is located in a rectangle representing the 2D display in the 3D display model, toward one or more windows in the 3D display model and determining if the ray intersects a window; if the cursor overlaps a window, determining a 2D position of the cursor with respect to a 2D coordinate system for the window, and communicating the 2D position to an application associated with the window to enable a user of the 2D pointing device to interact with the application; and displaying the window as a 3D object;
wherein when the window is rotated, a spine located on a side edge of the window becomes visible, wherein the spine contains a title for the same window, and wherein the thickness of the spine is significantly less than the dimension of the window. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for manipulating a two-dimensional (2D) window within a three-dimensional (3D) display model, the method comprising:
-
receiving an input from a 2D pointing device, wherein the input specifies a 2D offset within a 2D display, wherein the 2D display provides a view into the 3D display model; using the 2D offset to move a cursor to a position in the 2D display; determining if the cursor overlaps a window within the 3D display model by projecting a ray from a predefined viewpoint in the 3D display model through the cursor, which is located in a rectangle representing the 2D display in the 3D display model, toward one or more windows in the 3D display model and determining if the ray intersects a window; if the cursor overlaps a window, determining a 2D position of the cursor with respect to a 2D coordinate system for the window, and communicating the 2D position to an application associated with the window to enable a user of the 2D pointing device to interact with the application; and displaying the window as a 3D object;
wherein when the window is rotated, a spine located on a side edge of the window becomes visible, wherein the spine contains a title for the same window, and wherein the thickness of the spine is significantly less than the dimension of the window. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. An apparatus that manipulates a two-dimensional (2D) window within a three-dimensional (3D) display model, comprising:
-
an input mechanism configured to receive an input from a 2D pointing device, wherein the input specifies a 2D offset within a 2D display, wherein the 2D display provides a view into the 3D display model; a cursor mechanism configured to use the 2D offset to move a cursor to a position in the 2D display; a window manipulation mechanism configured to determine if the cursor overlaps a window within the 3D display model by projecting a ray from a predefined viewpoint in the 3D display model through the cursor, which is located in a rectangle representing the 2D display in the 3D display model, toward one or more windows in the 3D display model and determining if the ray intersects a window; wherein if the cursor overlaps a window, the window manipulation mechanism is configured to, determine a 2D position of the cursor with respect to a 2D coordinate system for the window, and to communicate the 2D position to an application associated with the window to enable a user of the 2D pointing device to interact with the application; and a display mechanism configured to display the window as a 3D object;
wherein when the window is rotated, a spine located on a side edge of the window becomes visible, wherein the spine contains a title for the same window, and wherein the thickness of the spine is significantly less than the dimension of the window. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A means for manipulating a two-dimensional (2D) window within a three-dimensional (3D) display model, comprising:
-
an input means for receiving an input from a 2D pointing device, wherein the input specifies a 2D offset within a 2D display, wherein the 2D display provides a view into the 3D display model; a cursor means configured to use the 2D offset to move a cursor to a position in the 2D display; a window manipulation means configured to determine if the cursor overlaps a window within the 3D display model by projecting a ray from a predefined viewpoint in the 3D display model through the cursor, which is located in a rectangle representing the 2D display in the 3D display model, toward one or more windows in the 3D display model and determining if the ray intersects a window; wherein if the cursor overlaps a window, the window manipulation means is configured to, determine a 2D position of the cursor with respect to a 2D coordinate system for the window, and to communicate the 2D position to an application associated with the window to enable a user of the 2D pointing device to interact with the application; and a display means for displaying the window as a 3D object;
wherein when the window is rotated, a spine located on a side edge of the window becomes visible, wherein the spine contains a title for the same window, and wherein the thickness of the spine is significantly less than the dimension of the window.
-
Specification