Method and system for displaying visual content in a virtual three-dimensional space
First Claim
1. A method implemented by a programmed computer, for displaying a projection of a virtual three-dimensional (3D) space via a display device, comprising:
- a) designating a 2D base plane in the virtual 3D space;
b) positioning a first page and at least a second page or a content element in the 3D space with at least the first page parallel to the base plane, wherein each page is a 2D array of 2D and/or volumetric 3D content elements and each page has a layout;
c) selecting a single viewpoint and a viewing ray extending from the viewpoint and intersecting the base plane at an angle between 0 and 90°
;
d) positioning a first planar 2D surface in the 3D space at a predetermined distance from the viewpoint, so that the first planar 2D surface intersects the viewing ray between the viewpoint and the base plane so as to define a viewing frustum, within which is a viewing space, wherein the viewing space contains at least a portion of the first page and at least a portion of the second page or content element;
e) projecting the entire viewing space onto the first planar 2D surface using a single perspective projection determined by the viewing ray, such that for every point in the viewing space that is projected onto a corresponding point on the first 2D surface, that point of the viewing space, the corresponding point projected onto the first 2D surface, and the viewpoint are collinear;
f) optionally projecting the single perspective projection on the first 2D surface onto a second 2D surface; and
g) displaying the first 2D planar surface or the second 2D surface via a display device.
0 Assignments
0 Petitions
Accused Products
Abstract
A system and system for positioning content elements in a virtual 3D space. A 2D base plane is designated in the 3D space, and the visual content is positioned in the 3D space with at least one page being parallel to the base plane. A viewpoint and a viewing ray are selected in the 3D space from which to view the 3D space with the viewing ray being neither parallel nor perpendicular to the base plane. A 2D surface is then positioned in the 3D space so that the 2D surface intersects the view ray between the viewpoint and the base plane. At least a portion of the 3D space is then projected onto the 2D surface by a perspective projection determined by the viewing ray. The process may be repeated as desired each time optionally selecting a new viewpoint and/or selecting a new viewing ray and/or altering a property of one or more content elements. The projection onto the viewing surface may be displayed on a display device such as a computer monitor.
-
Citations
67 Claims
-
1. A method implemented by a programmed computer, for displaying a projection of a virtual three-dimensional (3D) space via a display device, comprising:
-
a) designating a 2D base plane in the virtual 3D space; b) positioning a first page and at least a second page or a content element in the 3D space with at least the first page parallel to the base plane, wherein each page is a 2D array of 2D and/or volumetric 3D content elements and each page has a layout; c) selecting a single viewpoint and a viewing ray extending from the viewpoint and intersecting the base plane at an angle between 0 and 90°
;d) positioning a first planar 2D surface in the 3D space at a predetermined distance from the viewpoint, so that the first planar 2D surface intersects the viewing ray between the viewpoint and the base plane so as to define a viewing frustum, within which is a viewing space, wherein the viewing space contains at least a portion of the first page and at least a portion of the second page or content element; e) projecting the entire viewing space onto the first planar 2D surface using a single perspective projection determined by the viewing ray, such that for every point in the viewing space that is projected onto a corresponding point on the first 2D surface, that point of the viewing space, the corresponding point projected onto the first 2D surface, and the viewpoint are collinear; f) optionally projecting the single perspective projection on the first 2D surface onto a second 2D surface; and g) displaying the first 2D planar surface or the second 2D surface via a display device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 65, 66, 67)
-
-
41. A system for displaying a projection of a virtual three-dimensional (3D) space via a display device, comprising:
-
a computer processor configured to (a) designate a 2D base plane in the virtual 3D space; (b) position a first page and at least a second page or a content element in the 3D space with at least one page parallel to the base plane, wherein each page is a 2D array of 2D and/or volumetric 3D content elements and each page has a layout; (c) select a single viewpoint and a viewing ray extending from the viewpoint and intersecting the base plane at an angle between 0 and 90°
;(d) position a first planar 2D surface in the 3D space at a predetermined distance from the viewpoint, so that the first planar 2D surface intersects the viewing ray between the viewpoint and the base plane so as to define a viewing frustum, within which is the viewing space, wherein a viewing space contains at least a portion of the first page and at least a portion of the second page or content element; (e) project the entire viewing space onto the first planar 2D surface using a single perspective projection determined by the viewing ray such that for every point in the viewing space that is projected onto a corresponding point on the first 2D surface, that point of the viewing space, the corresponding point projected onto the first 2D surface, and the viewpoint are collinear; and (f) optionally project the single perspective projection on the first 2D surface onto a second 2D surface; and (g) display the first 2D surface or the second 2D surface via the display device. - View Dependent Claims (42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63)
-
-
64. A computer readable non-transitory medium encoded with a computer program code for performing the following computer processor tasks when said program code is executed by a computer processor:
-
(a) designate a 2D base plane in the virtual three-dimensional (3D) space; (b) position a first page and at least a second page or a content element in the 3D space with at least one page parallel to the base plane, wherein each page is a 2D array of 2D and/or volumetric 3D content elements and each page has a layout; (c) select a single viewpoint and a viewing ray extending from the viewpoint and intersecting the base plane at an angle between 0 and 90°
;(d) position a first planar 2D surface in the 3D space at a predetermined distance from the viewpoint, so that the first planar 2D surface intersects the viewing ray between the viewpoint and the base plane so as to define a viewing frustum, within which is the viewing space, wherein a viewing space contains at least a portion of the first page and at least a portion of the second page or content element; (e) project the entire viewing space onto the first planar 2D surface using a single perspective projection determined by the viewing ray such that for every point in the viewing space that is projected onto a corresponding point on the first 2D surface, that point of the viewing space, the corresponding point projected onto the first 2D surface, and the viewpoint are collinear; and (f) optionally project the single perspective projection on the first 2D surface onto a second 2D surface; and (g) display the first 2D surface or the second 2D surface via the display device.
-
Specification