Information
-
Patent Application
-
20020180808
-
Publication Number
20020180808
-
Date Filed
September 24, 200122 years ago
-
Date Published
December 05, 200221 years ago
-
Inventors
-
Original Assignees
-
CPC
-
US Classifications
-
International Classifications
Abstract
For easier access to a desired one of information objects for displaying by traversing links between them, an information processing apparatus includes holding means which holds content type specific intermediate data generating means and content type specific display image generating means both in an executable condition. The apparatus includes first means which causes the intermediate data generating means to generate intermediate data for displaying an information object in accordance with a geometric relation of the object to a visual field. The apparatus also includes second means which causes the display image generating means to generate a display image of the object from the intermediate data in accordance with the geometric relation of the object to the field. The intermediate data generating means and the display image generating means operate asynchronously with each other.
Description
FIELD OF THE INVENTION
[0001] This invention relates to displaying linked information objects in a virtual space and, more particularly, to displaying a plurality of linked information contents disposed in a virtual space.
BACKGROUND OF THE INVENTION
[0002] A typical example of prior art information content display means is Microsoft Internet Explorer®, a browser of Microsoft Corporation. This browser is arranged such that a plurality of successively linked hypertext contents such as HTML documents can be displayed on one window on a computer display screen. When a mouse is clicked on a displayed content at a location where linking to other content is defined, the other content to be linked to is displayed on the same window as or on a different window from the window on which the first content is displayed. With this browser, when one content changes to another linked content, change of the displayed images is not continuous. Therefore, it is difficult for a user to understand the relations between successively linked contents, and, sometimes the user tends to become at a loss where in the linkage he or she is.
[0003] The inventors have proposed means for solving the above-descried problems. Specifically, they disclosed “APPLICATION PROGRAM STARTING METHOD, RECORDING MEDIUM ON WHICH SAID APPLICATION PROGRAM IS RECORDED, AND COMPUTER SYSTEM” in Japanese Unexamined Patent Publication No HEI 11-24878 A laid open for public inspection on Jan. 29, 1999, which corresponds to U.S. patent application Ser. No. 08/974,246 filed on Nov. 19, 1997; “ELECTRONIC INFORMATION DISPLAYING METHOD, ELECTRONIC INFORMATION BROWSING APPARATUS AND ELECTRONIC INFORMATION BROWSING PROGRAM RECORDING MEDIUM” in Japanese Unexamined Patent Publication No. 2000-172248 A laid open for public inspection on Jun. 23, 2000, which corresponds to U.S. Ser. No. 09/407,376 filed on Sep. 28, 1999; “DOCUMENT DISPLAY APPARATUS AND METHOD FOR DISPLAYING DOCUMENTS” in Japanese Unexamined Patent Publication No. 2000-207269 A laid open for public inspection on Jul. 28, 2000, which corresponds to U.S. Ser. No. 09/473,049 filed on Dec. 28, 1999; and “DOCUMENT BROWSING SYSTEM, AND DATA READ-IN APPARATUS AND DOCUMENT DISPLAY APPARATUS FOR USE IN DOCUMENT BROWSING SYSTEM” in Japanese Unexamined Patent Publication No 2001-60166 A laid open for public inspection on Mar. 6, 2001. These publications disclose a technique enabling browsing successively linked information contents by traversing the linkage by smoothly moving a viewpoint, whereby a user can instantly understand the linkage between the contents during browsing.
[0004] However, with the techniques disclosed in the Japanese publications cited above, depending on system conditions or content conditions, it is frequently impossible to smoothly change the images by shifting a visual field, in such a case that the wait state occurs due to reading in content data or an amount of processing increases to thereby lessen the processing capacity for the purpose when the content data is read in. Furthermore, since content data reading and display preparation procedures of the systems are not optimized, it frequently takes a long time until a desired content is displayed. Also, there remain undeveloped areas in methods for displaying, on the same display screen, different types of contents including three-dimensional images and moving images or for enabling contents of additional types to be displayed.
[0005] An object of the present invention is to provide means which enables easier attainment of a desired one of information objects, in displaying the linked information objects in an information processing apparatus, by traversing the links between successively linked information objects.
[0006] Another object of the invention is to provide smoother image change with visual field shifting in displaying linked information objects in an information processing apparatus.
[0007] Still another object of the invention is to reduce time required for a desired content to be displayed.
[0008] Further objects of the invention are to enable different types of contents to be displayed, to provide integrating means for displaying different types of contents, and to facilitate an additional type of content to be displayed.
SUMMARY OF THE INVENTION
[0009] According to one aspect of the present invention, an information processing apparatus displays a plurality of linked information objects in a virtual space in accordance with visual field data. One of the information objects represents a content of one content type. The visual field data defines a visual field in the virtual space. The information processing apparatus includes hold means and first and second means. The hold means holds, in an executable condition, intermediate data generating means specific to the content type and display image generating means specific to the content type. The first means causes the intermediate data generating means to generate intermediate data for displaying the one information object, when it is determined, from the geometric relation between the visual field and the one information object, that the intermediate data of the one information object should be generated. The second means causes the display image generating means to generate a display image of the one information object based on the generated intermediate data, when it is determined, from the geometric relation between the visual field and the one information object, that the display image of the one information object should be generated.
[0010] According to another feature of the invention, the hold means of the information processing apparatus holds at least one content type specific data processing means in an executable state. The data processing means includes the intermediate data generating means, the display image generating means, capturing means specific to the content type for capturing content data of the one information object, and deleting means specific to the content type for deleting the generated intermediate data in an intermediate data memory.
[0011] The information processing apparatus may include third means for selecting one of the information objects as a representative object and defining the visual field by defining the geometric relation between the visual field and the representative object. The third means changes the representative object in response to the movement of the visual field in the virtual space, without changing the geometric relation of the plural information objects to the visual field. The first means traverses links between the information objects, starting from the representative object, and determines whether or not the intermediate data of the one information object should be generated.
[0012] The information processing apparatus may include further a memory region and memory managing means. Display data, including intermediate data for displaying the plurality of information objects, is stored in the memory region. The memory managing means determines the amount of the memory region occupied by the display data and deletes sequentially at least part of the intermediate data in the memory region which has not been used for the longest time for display image generation each time it determines that the amount occupied by the display data is larger than a predetermined threshold.
[0013] According to another aspect of the invention, a program for use in an information processing apparatus is provided for displaying a plurality of linked information objects in a virtual space in accordance with a visual field data. One of the plural information objects represents a content of a certain content type. The visual field data defines a visual field in the virtual space. The information processing apparatus includes a hold region which holds, in an executable condition, a program specific to the content type for causing an intermediate data generating step and a display image generating step to be executed. The intermediate data generating step is for generating intermediate data specific to the content type, and the display image generating step is for generating, from the generated intermediate data, a display image specific to the content type. The first program includes a step of generating an intermediate data for displaying the one information object by means of the intermediate data generating step, when it is determined, from the geometric relation between the visual filed and the one information object, that the intermediate data for the one information object should be generated. The first program further includes a step of generating, from the generated intermediate data, a display image of the one information object by means of the display image generating step, when it is determined, from the geometric relation between the visual field and the one information object, that the one information object should be displayed.
[0014] According to the invention, in displaying linked information objects in an information processing apparatus, it is easier to reach a desired one of the linked information objects by traversing the links between the information objects.
[0015] According to the invention, smoother image change with shift of a visual field can be realized in displaying linked information object in an information processing apparatus.
[0016] According to the invention, time required for a desired content to be displayed can be reduced.
[0017] According to the invention, the different types of contents can be displayed, displaying different types of contents can be realized by integrating means, and displaying additional types of contents is also facilitated.
[0018] According to the invention, in displaying information contents existing in a memory device of a computer and in a computer and the like which may be connected to networks, such as the Internet, a desired one of a vast amount of linked information contents, such as HTML texts in WWW, can be readily reached by traversing the links. Specifically, a visual field is smoothly moved over a plurality of linked contents displayed on the same one display, to thereby traverse the linkage, and the contents are displayed in accordance with the visual field, whereby a large amount of information can be browsed comfortably by continuously moving the visual field.
BRIEF DESCRIPTION OF THE DRAWINGS
[0019]
FIG. 1 shows an arrangement of an information processing apparatus according to an embodiment of the present invention.
[0020]
FIG. 2 shows content type specific data processing programs stored in a program storage section.
[0021]
FIG. 3 shows the structure in detail of object display managing data for each information object shown in FIG. 1, and relation between the object display managing data, object display intermediate data associated with the object display managing data and a content type specific data processor function.
[0022]
FIG. 4 illustrates an example of the structure of visual field data.
[0023]
FIG. 5 illustrates an example of the structure of object display intermediate data.
[0024]
FIG. 6 is a general flow chart of information display processing according to the embodiment of the invention.
[0025]
FIG. 7 is a flow chart of traversing links.
[0026]
FIG. 8 is a flow chart of preparing display data.
[0027]
FIG. 9 is a flow chart of generating display a picture.
[0028]
FIG. 10 is a flow chart of reducing data.
[0029]
FIG. 11 is a flow chart of generating object display intermediate data.
[0030]
FIG. 12 exemplifies an intermediate data generating thread in the flow chart shown FIG. 11.
[0031]
FIG. 13 illustrates geometric relation between a visual field and an information object.
[0032]
FIG. 14 illustrates an example of a linkage structure of information objects as displayed according to the embodiment of the invention.
[0033] FIGS. 15A-15H illustrate an example of display screens when display pictures are generated by continuously changing the viewpoint and visual field shown in FIG. 13 with respect to the information objects with the links shown in FIG. 14.
PREFERRED EMBODIMENT OF THE INVENTION
[0034] The present invention is described by an example of displaying a plurality of linked information objects disposed in a three dimensional virtual space. An information object visually and/or audibly represents any information content treated as a unit in a virtual space, e.g. one text document, one document including text and graphics, one image, a stream of moving images, one three-dimensional image formed of plural parts, or an audio stream. Such an information object may be dynamically generated by a program.
[0035]
FIG. 1 shows an information processing apparatus 100 according to an embodiment of the invention. The information processing apparatus 100 includes an input device 101, visual field data managing means or manager 102, overall processing control means 103, object data managing means 104, display picture generation managing means 105, a display device 106, an information storage device 107, a network interface 108, a cache data storage device 109, memory managing means 110, an object data processor 111, a data processing program memory unit 112 and an object data memory unit 113.
[0036] The visual field data managing means 102, the overall processing control means 104, the display picture generation managing means 105 and the memory managing means 110 may be implemented in the form of a processor or processors having programs for the respective means, or may be a processor or processors including the functions of the respective means in the form of integrated circuits.
[0037]
FIG. 2 shows content type specific data processing programs 10p, 20p, . . . , 21p corresponding to a plurality of content type specific data processor functions 10, 20, . . . , 21. The content type specific data processing programs 10p, 20p, . . . , 21p are stored in the program memory unit 112 in such a manner that they can be executed by the object data processor 111. The programs lop, 20p, . . . , 21p are executed in the object data processor 111 to provide the content type specific data processor functions 10, 20, . . . , 21. The content type specific data processing programs 10p, 20p, . . . , 21p are specific to types of contents to be displayed, and the number of the programs prepared is equal to the number of types of contents to be displayed.
[0038] The content type specific data processing program lop includes a content data capturing or taking-in program lip, an object displaying intermediate data generating program 12p, an object displaying intermediate data deleting program 13p, and an object display image generating program 14p. The other content type specific data processing programs 20p, . . . , 21p have the same configuration as the program 10p.
[0039] Alternatively, the data processing programs 10p, 20p, . . . , 21p may be held in a memory in the object data processor 111 in an executable manner, as in the program memory unit 112.
[0040] The object data memory unit 113 stores therein a plurality of object display managing data (i.e. managing data for displaying objects) 30, 24, 25, . . . , and a plurality of object display intermediate data (i.e. intermediate data for displaying objects) 50, 27, 28, . . . . An object display managing data and an object display intermediate data are prepared for each of the information objects to be displayed.
[0041] The input device 101 generates operation input data relating to display picture visual field movement and the like in response to the operation of the device 101 by a user, and supplies the input data to the visual field data managing means 102. The visual data managing means 102 holds visual data 60 and renews or updates it in accordance with the data inputted by the user.
[0042] The overall processing control means 103 controls overall processing done in the information processing apparatus 100, including operations of the visual filed data managing means 102, the object data managing means 104 and the display picture generation managing means 105. The overall processing control means 103 controls operations of various sections of the information processing apparatus 100 so that processing for display can be done in real time.
[0043] The object data managing means 104 generates, renews or deletes the object display managing data 30, 34, 25, . . . , and the object display intermediate data 50, 27, 28, . . . , using an object display intermediate data generator function 12 and an object display intermediate data deletion function 13 within the object type specific data processor function 10, in accordance with the visual field data 60.
[0044] The object data managing means 104 performs traverse or search of links between the information objects, starting from a representative or base object, and then performs processing for preparation for information object display, whereby the link traverse and display preparation for information objects involved in display image generation can be processed efficiently.
[0045] The object data managing means 104 determines for each information object, whether the object display intermediate data generation should be executed or not, based on the geometric relation between a visual field 71 and that information object. In accordance with the determination, the object data managing means 104 causes the object display intermediate data generator function 12 to execute the object display intermediate data generation, to thereby generate the object displaying intermediate data at an appropriate timing with change of the visual field 71.
[0046] The display picture generation managing means 105 manages a display list 90 and generates a display picture by rendering, on a frame memory 91, two-dimensional image data generated by the object display image generator function 14 in accordance with the visual field data 60 and the object display intermediate data 50.
[0047] The display device 106 displays a picture generated by the display picture generation managing means 105. The display picture generation managing means 105 determines, from the geometric relation between the visual field 71 and information objects, whether or not a particular information object should be displayed on the display screen, and causes the object display image generator function 14 to execute real-time rendering of that information object on the display frame screen if that information object is determined to be displayed. In this manner, an information object to be displayed is properly selected for displaying in accordance with the shift of the visual field 71. The object display image generator function 14 can display information objects in different forms in accordance with display priority of the information objects and/or geometric relations between the visual field 71 and the information objects. This enables proper displaying of the information objects for the geometric relation between the visual field 71 and the information objects, whereby the amount of processing for low display priority information objects can be limited low, and the information objects can be displayed in variable form depending on the geometric relations between the visual field 71 and the information objects.
[0048] The information storage device 107 stores source content data. The device 107 includes, e.g. a hard disc, a CD, an MO, a DVD, a flash memory and the like.
[0049] The network interface 108 includes, e.g. a modem and a dialer and is used for connecting the information processing apparatus 100 for communication with an external network (not shown), e.g. the Internet. The network interface 108 is connected to the external network for communication therewith when, for example, a content data capturer or taking-in device function 11 captures or takes in source content data from the external network.
[0050] The cache data storage device 109 temporarily stores the content data captured by the content data capturer function 11 and other data to be used in display, for subsequent use in the information processing apparatus 100.
[0051] The memory managing means 110 monitors the amount of memory used to store the object display intermediate data 50 and the like and to reduce or delete data in the memory when, for example, the amount of used memory increases.
[0052]
FIG. 3 shows the details of the structure of the object display managing data 30 for each information object, and also the relation of the object display managing data 30 with its corresponding object display intermediate data 50 and content type specific data processor function 10.
[0053] The object display managing data 30 for each information object includes a plurality of fields for content identification 31, content type specific data processing function identification 32, data 33 representing the geometric relation to the visual field, display priority 34, access record 35, object display intermediate data identification 36, and a link data list 40.
[0054] The content identification 31 is information, such as URL, file name, or directory, for identifying the content to be displayed.
[0055] The content type specific data processing function identification 32 is information for identifying the content type specific data processor function 10 for the data processing of the information object being managed by the object information managing data 30.
[0056] The geometric relation representative data 33 defines the geometric relation of an information object 73 to a virtual visual field coordinate system 72 established for displaying information objects disposed in a two-dimensional or three-dimensional virtual space. The geometric relation is a relative relation in position, orientation, scale ratio and the like.
[0057]
FIG. 13 illustrates the geometric relation between the visual field 71 of a user and an information object. In FIG. 13, the visual field 71 is defined in a virtual three-dimensional space, in which an information object 73 is disposed. A visual field coordinate system 72 fixed to the visual field 71 and an information object local coordinate system 74 fixed on the information object 73 are defined. A view point 70 is defined at the origin of the visual field coordinate system 72. The geometric relation representative data 33 can be defined by, for example, transform matrix for transforming the information object local coordinate system 74 into the visual field coordinate system 72, or any other suitable means.
[0058] Referring back to FIG. 3, the display priority 34 is a variable for use in processing for information object display. The higher that priority, the more the information object display is desired. The value of the display priority is determined bay calculation mainly based on the data 33 representing the geometric relation of the information object to the visual field. Each time the geometric relation representive data 33 changes, the value is calculated anew and renewed. In general, an information object 73 in such a geometric relation as to be more easily seen has a higher priority value. The display priority 34 may be a single variable or separately prepared plural variables. As will be described later, the display priority is compared with a predetermined threshold value, for generation of object display intermediate data and display of an information object.
[0059] The access record 35 is a record of the time of the processing last made for displaying an information object. The access record 35 is mainly used as the basis on which it is determined whether the object display intermediate data 50 or the object display managing data 30 of information objects which have not been displayed for a long time should be deleted or reduced or not.
[0060] The object display intermediate data identification 36 identifies the object information display intermediate data 50 that is directly used in generating a display image of the information object being managed by the object display managing data 30. The identification 36 may be, for example, a pointer to the object display intermediate data 50 in the memory.
[0061] The link data list 40 is a list of information for links from one information object to other information objects, and includes a plurality of link data sets 37.
[0062] Each link data set 37 includes a field for a pointer to another object to be linked to (hereinafter referred to as object linkage pointer) 38 representing the linking of one information object to another, and a field for data 39 representing a geometric relation of another information object to be linked to (hereinafter referred to as other linked information object), which is an information object the current object is linked to, relative to a current object information. The object linkage pointer 38 can be a pointer to the object information managing data of the other linked object information, for example. The data 39 representing the geometric relation of the other linked information object relative to a current information object can be expressed by for example a coordinate transform matrix for transforming the local coordinate system of the other linked information object into the local coordinate system 74 of the current information object.
[0063] When a link is defined between two information objects, the link data list 40 in the object display managing data 30 of one information object contains the link data set 37 for the link to the other object and vice versa in principle. For example, in source data of HTML documents, in general, only a one-way link from a current document to another subsequent document (hereinafter also referred to as other linked document) is described. Even in such a case, when the link data set 37 for the link to the other linked document is prepared in the link data list 40 of the object display managing data 30 of the current document, another link data set 37 for the link with the current document is also prepared in the link data list 40 of the corresponding object display managing data 30 of the other linked document. This makes bidirectional link traverse possible. The link data set 37 may be arranged to distinguish between a previous object linked to the current object and a subsequent object linked from the current object, and may contain a description representing a link with the previous or parent object and a description representing a link to the other linked or child object.
[0064] The content type specific data processor functions 10, 20, . . . , 21 provide different data processing procedures for respective content types. Each content specific data processor function, e.g. 10, includes a content data capturer function 11, an object displaying intermediate data generator function 12, an object displaying intermediate data deleting device function 13, and an object display image generator function 14.
[0065] The content data capturer function 11 captures content data for displaying an information object, through the information storage device 107, the network interface 108 or the cache data storage device 109 of the information processing apparatus 100 when such content data is required for displaying the object, and supplies it to the object displaying intermediate data generator function 12. The content data capturer function 11, when it has captured content data, may stores the content data in the cache data storage device 109 for later re-use.
[0066] The object displaying intermediate data generator function 12 generates and renews object displaying intermediate data 50 in accordance with content data captured through the content data capturer function 11. The object display intermediate data generation and renewal are executed under the control of the object data managing means 104, when the display priority 34 has a value higher than the predetermined threshold value as the data 33 representing the geometric relation of that information object to the visual field changes.
[0067] The object displaying intermediate data deleting device function 13 deletes all or part of object display intermediate data. The deletion is performed under the control of the object data managing means 104 and/or the memory managing means 110.
[0068] Under the control of the display picture generation managing means 105, the object display image generator function 14 generates in real time, in the display picture generating process, part of an object within a display picture that is smoothly changing as the visual field shifts smoothly, using the object display managing data 30 and the object displaying intermediate data 50.
[0069] The object displaying intermediate data generator function 12, the object displaying intermediate data deleting device function 13 and the object display image generator function 14 independently operate asynchronously with respect to each other, which may be done executing them in separate threads or processes.
[0070] The object display intermediate data 50 which is being generated or renewed by the object displaying intermediate data generator function 12, and also the intermediate data 50 part or entire of which has been deleted by the object displaying intermediate data deleting device function 13 can be looked into asynchronously at any desired time by the object display image generator function 14 and can be used in real time display image generation. For that purpose, the object displaying intermediate data generator function 12 and the object displaying intermediate data deleting device function 13 generate and renew and delete the object display intermediate data 50, in such a manner and sequence as not to cause any contradiction when the object display image generator function 14 looks into the object display intermediate data 50 currently being processed and generates the subject display image.
[0071] Asynchronous operation of the object displaying intermediate data generator function 12, the object displaying intermediate data deleting device function 13 and the object display image generator function 14 makes it possible to generate a display picture smoothly changing as the visual field smoothly shifts, using the object display intermediate data 50 currently available. Even when it takes a long time to capture content data and to generate and renew the object displaying intermediate data 50, these functions 12, 13 and 14 are not required to wait until these capture, generation and renewal are completed.
[0072] The content type specific data processor function 10 may be pre-held in the object data processor 111 or in the program memory unit 112 of the information processing apparatus 100. Alternatively, the program for the content type specific data processing function 10 may be captured through the information storage means 107 or the network interface 108 and then held in the object data processor 111 or in the program memory unit 112.
[0073] The object displaying intermediate data 50 is generated by the object displaying intermediate data generator function 12 from the content data captured by the content data capturer function 11 in the content type specific data processor function 10 for an information object being handled, and is used by the object display image generator function 14 to generate a display image.
[0074] The object displaying intermediate data 50 is processed in the corresponding one of the content type specific data processor functions 10 provided for respective content types. Accordingly, the data format of the object displaying intermediate data 50 can be defined for each content type. Since optimum formats can be defined individually for the respective content types, display can be provided efficiently, and, in addition, a new content type specific data processor function 10 can be added easily and corresponding information contents can be processed easily.
[0075] The object data processor 111 holds therein or in the program memory unit 112, one or more content type specific data processor functions 10, 20, . . . , 21, which have functions to capture in different types of content data and to generate, renew, delete and look into specific types of object displaying intermediate data. Accordingly, different types of contents can be displayed, and it becomes easy to add a function for displaying another type of contents.
[0076]
FIG. 4 shows the visual field data 60 in greater detail. The visual field data 60 contains fields for a representative object pointer 61, data 62 representing the geometric relation of a representative object to the visual field (hereinafter referred to as representative-object geometric relation data) and a visual field parameter 63. The representative object pointer 61 is data for identifying a representative or base object in information objects to be displayed, and may be arranged as a pointer to the object display managing data (30) of the representative object. The representative object is an information object from which the link traverse for the object display managing data 30 is started in linkage traverse shown in Step 204 in FIG. 6 as will be described later. The representative object may be an information object having the highest display priority 34.
[0077] The representative-object geometric relation data 62 defines the geometric relation of the representative object to a virtual visual field which is defined in order to display the information object 73 disposed in the two-dimensional or three-dimensional virtual space shown in FIG. 13.
[0078] The visual field parameter 63 defines a visual field angle or the like for generating an image, and is looked into, when a display picture is generated, by the object display image generator function 14 and the like controlled by the display picture generation managing means 105.
[0079] In the embodiment of the invention, a smooth change of the visual field 71 is realized by smoothly changing the representative-object geometric relation 62 relative to the visual field. The visual field data managing means 102 changes the representative-object geometric relation 62 relative to the visual field smoothly and continuously in accordance with the direction given through input data received from the input device 101 or a program.
[0080] The visual field data managing means 102 selects one of the information objects as a representative or base object, stores the selected representative object, defines the visual field by defining the geometric relation between the representative object and the visual field, and renews the visual field data when the representative object is changed without changing geometric relations of the respective information objects to the visual field. In this manner, the visual field can be defined simply by means of the relative geometric relation to a desired one of the information objects. Accordingly, there is no need for defining the absolute coordinate system, and, therefore, the reachable range is not limited by the scale for a particular coordinate system.
[0081] The display picture generation managing means 105 controls the object display image generator function 14 to generate in real time a display image in accordance with the visual field data 60, to thereby obtain a display picture smoothly changing with a smooth visual field change.
[0082] As the representative-object geometric relation 62 to the visual field changes, the geometric relations 33 of the respective information objects to the visual field also change, and the display priorities 34 change, which may cause the display priority 34 of some other information object to be higher than that of the representative object. If such case happens, the information object having the higher display priority is selected as the representative object, and the representative object identification 61 in the visual field data 60 is rewritten. At the same time, the geometric relation to the visual field in the object display managing data 30 of the information object newly selected as the representative object is copied on the representative-object geometric relation data 62 in the visual field data 60, and stored. In this way, the representative object can be changed, while keeping the continuity of the visual field change. Thus, the linkage can be traversed infinitely in principle by shifting the visual field to display information objects without being limited by the scale ratio, by successively changing the representative object so that an information object whose geometric relation to the visual field can be defined with a standard scale is selected to be the representative object.
[0083]
FIG. 5 shows an example of the object display intermediate data. The object display intermediate data 50 includes display form defining data 51, display attribute data 52, texture data 53, transparent mapping data 54, and other intermediate data 59. The display form defining data 51 includes apex defining data, segment defining data, surface defining data and texture mapping defining data. The display attribute data 52 includes color defining data, reflection defining data and transparency defining data. The texture data 53 includes a basic image and a plurality of reduced basic images. The transparent mapping data 54 includes the basic image and a plurality of reduced basic images.
[0084] The object display image generator function 14 contained in the content type specific data processor function 10 for the content type of the information object uses such object display intermediate data 50 to generate in real time the object display image.
[0085] The object display intermediate data 50 may be of any form specific to the content type. The content type specific data processor function 10 and the data format of the object display intermediate data 50 are preset for each content type so that the respective processing procedures in the content type specific data processor function 10 can process the object display intermediate data 50 of the corresponding content types.
[0086]
FIG. 6 is a flow chart of the general information display processing. The processing starts at Step 201. At Step 202, the control means 103 of the information processing apparatus 100 causes the object data managing means 104 to prepare the object display managing data 30 of an initial representative information object and, at the same time, causes the visual field data managing means 102 to set an initial value for the visual field data 60.
[0087] At Step 203, the control means 103 causes the visual field data managing means 102 to renew the visual field data. The visual field data managing means 102 computes the visual field coordinate system 72 so as to smoothly vary the visual field 71 in accordance with the input data from, for example, the input device 101, and renews the visual field data 60. When it is necessary to change the representative object, the control means 103 performs processing involved in the change of the representative object through the object data managing means 104 as described above.
[0088] At Step 204, the control means 103 causes the object data managing means 104 to perform the traverse of the links between information objects. In the linkage traverse, the object display intermediate data generator functions 12 determine the data 33 representing the geometric relations of all of the object display managing data 30, 24, 25, . . . within the object data memory unit 113, relative to the visual field, and determine the display priorities 34 based on the data 33. For that purpose, the object display intermediate data generator functions 12 call the linkage traverse processing. In this case, in the linkage traverse processing TRAVERSE, the representative object pointer 61 is set to the first argument, and the representative-object geometric relation data 62 is set to the second argument. FIG. 7 is a flow chart of the linkage traverse processing TRAVERSE.
[0089] At Step 205, the control means 103 causes the object data managing means 104 to prepare display data. In accordance with the display priorities 34 of the respective information objects, the object data managing means 104 causes the object display intermediate data generator functions 12 and the object display intermediate data deleting device functions 13 of the type specific data processor functions 10 to generate, renew or delete the object display intermediate data 50, and also renews the link data list 40 in the object display managing data 30. FIG. 8 is an example of a flow chart of the display data preparation.
[0090] At Step 206, the control means 103 causes the object data managing means 104 to control the object display image generator functions 14 to generate a display picture. The object image display generator function 14 generates a display image in accordance with the data 33 representing the geometric relation of each information object to the visual field, the display priority 34 and the object display intermediate data 50. FIG. 9 is an example of flow chart of display picture generation.
[0091] Under the control of the control means 103, the display picture generation control means 105 renders the display images generated by the object display image generator function 14 on to the frame memory 91 for displaying on the display device 10.
[0092] At Step 207, the information processing apparatus 100 causes, through the object data managing means 104, the object display image deleting device function 13 to delete data when required. The object data managing means 104 reduce the data stored in the object data memory unit 113 when the amount of memory of the unit 113 occupied exceeds the predetermined threshold value. FIG. 10 is an example of flow chart of the data reduction.
[0093] At Step 208, the control means 103 determines whether the information display should be ended or not. If it determines that the information display should be continued, the processing returns to the Step 203. To end the information display, the procedure advances to Step 209.
[0094]
FIG. 7 is a flow chart of the linkage TRAVERSE. As described previously, when the TRAVERSE with the representative object pointer 61 as the first argument and the representative-object geometric relation data 62 as the second argument is started, the object data managing means 104 executes the linkage traversing shown in FIG. 7.
[0095] In FIG. 7, the object data managing means 104 at Step 302 determines the object display managing data 30 to be processed based on the object pointer which is the first argument.
[0096] At Step 303, the object data managing means 104 stores the geometric relation data which is the second argument, as the data 33 representing the geometric relation to the visual field in the object display managing data 30 to be processed.
[0097] At Step 304, the object data managing means 104 computes the display priority from the geometric relation representative data 33 and stores it in the display priority field 34 in the object display managing data 30.
[0098] Steps between Steps 305 and 308 inclusive form a loop. The object data managing means 104 executes the respective steps in the loop for all of the link data sets 37 in the link data list 40 of the object display managing data 30 to be currently processed.
[0099] At Step 306 in the loop, the object data managing means 104 determines the geometric relation of another linked object, to which the current object is to be linked, to the visual field, on the basis of the data 33 representing the geometric relation of the current object to be processed to the visual field and the data representing the geometric relation 39 of the other linked object to the current object to be processed.
[0100] At Step 307, the object data managing means 104 sets the object linkage pointer 38 to the first argument and sets, to the second argument, the data representing the geometric relation of the other linked object relative to the visual field as determined at Step 306, and iteratively calls and executes the processing TRAVERSE. In the TRAVERSE processing, processing is done as at Steps 302-304.
[0101] At Step 308, the processing in the loop is continued until the processing of all of the link data sets 37 is completed. When the processing loop from Step 305 to Step 308 is completed, the procedure advances to Step 309, where the linkage traverse is ended.
[0102]
FIG. 8 is a flow chart of the display data preparation. As described previously, when the display data preparation is started at Step 205 of FIG. 6, the object data managing means 104 executes the display data preparation shown in FIG. 8.
[0103] Steps between Step 410 and Step 440 inclusive form a loop, and the object data managing means 104 executes the respective steps in the loop for all of the object display managing data 30, 24, 25, . . . , stored in the object data memory unit 113.
[0104] At Step 420 in the loop shown in FIG. 8, the object data managing means 104 determines whether the display priority PD of one object display managing data 30 is higher than a predetermined threshold value PTHG which is the condition for starting the generation of the object display intermediate data 50. If the priority PD 34 is determined to be higher than the threshold PTHG, the procedure advances to Step 421. On the other hand, if the priority PD 34 is determined not to be higher than the threshold PTHG, the procedure advances to Step 431.
[0105] At Step 421, the object data managing means 104 determines, with respect to the object display managing data 30, whether the generation and renewal of the object display intermediate data 50 and the link data list 40 have been completed. If they are determined to have been completed, the procedure advances to Step 440. If they are determined not to have been finished, the procedure advances to Step 422.
[0106] At Step 422, the object data managing means 104 determines whether the number NG of other information objects (or object display managing data) of which a display priority PD is higher than the display priority PD 34 and of which object display intermediate data is being generated or being renewed, is larger than a predetermined threshold value NTH. If the number NG is determined to be larger than the threshold NTH, the procedure advances to Step 424. If the number NG is determined not to be larger than the threshold NTH, the procedure advances to Step 423.
[0107] At Step 423, the object data managing means 104 calls a processing PREPARE for generating object display intermediate data shown in FIG. 11. In the intermediate data generation PREPARE, the object data managing means 104 activates another thread and, in this thread, generates and renews data in the fields of the object display intermediate data 50 and the link data list 40.
[0108] At Step 424, the object data managing means 104 determines, with respect to the link data list 40, whether or not the addition, renewal or deletion of the link data set 37 has been done. If such addition, renewal or deletion is determined to have been done, the procedure advances to Step 425. If such addition, renewal or deletion is determined not to have been done, the procedure advances to Step 440.
[0109] At Step 425, in relation to the added, renewed or deleted link data set 37, the object data managing means 104 generates, renews or deletes object managing data for the other linked object. Thereafter, the procedure advances to Step 440.
[0110] At Step 431 branching from Step 420, if the object display intermediate data is being generated or renewed, the object data managing means 104 interrupts the generating or renewing processing.
[0111] At Step 432, the object data managing means 104 determines whether the display priority PD 34 is lower than the threshold value PTHDI, which is the condition for deleting the object display intermediate data 50. If the priority PD 34 is determined to be lower than the threshold PTHDI, the procedure advances to Step 433. If the priority PD 34 is determined not to be lower than the threshold PTHDI the procedure advances to Step 440. At Step 433, the object data managing means 104 causes the object display intermediate data deleting device function 13 to delete the object display intermediate data 50. If it is estimated that the deletion will not completed in a short time, the deletion is done in a different thread.
[0112] At Step 434, the object data managing means 104 determines whether or not the display priority PD 34 is lower than a threshold value PTHDM, which is defined as the condition for deleting the object display managing data 30. If the display priority PD 34 is determined to be lower than the threshold PTHDM, the procedure advances to Step 435. If the display priority PD 34 is determined not to be lower than the threshold PTHDM, the procedure advances to Step 440. At Step 435, the object data managing means 104 deletes the object display managing data. After that, the procedure advances to Step 440.
[0113] At Step 440, the processing in the loop is continued until the display data preparation is completed for all of the object display managing data. When the processing in the loop between Step 410 and Step 440 inclusive is completed, the procedure advances to Step 450, and the display data preparation is completed.
[0114]
FIG. 9 is a flow chart of the display picture generation. As described previously, when the display picture generation is started at Step 206 shown in FIG. 6, the display picture generation managing means 105 causes the object display image generator function 14 to execute the display picture generation illustrated in FIG. 9. At Step 502, the display picture generation managing means 105 clears the display list 90.
[0115] Step 503, Step 507 and the steps between them form a loop. The display picture generation managing means 105 executes successively the steps in the loop for all the object display managing data 30, 24, 25, . . . , stored in the object data memory unit 113.
[0116] At Step 504 in the loop, the display picture generation managing means 105 determines, for one set of object display managing data, e.g. data 30, whether the display priority PD 34 is higher than the threshold value PTHD, which is set as the condition of displaying an object. If the display priority PD is determined to be higher than the threshold PTHD, the procedure advances to Step 505. If the display priority PD is determined not to be higher than the threshold PTHD, the procedure advances to Step 507.
[0117] At Step 505, information identifying the object or, in fact, the display managing data 30 of that object, e.g. a pointer to the object display managing data 30, is added to the display list 90. It should be noted, however, that for display devices 106 of some types, in order to obtain proper display images, a display image of the information object located deepest from the visual field 71 must be first generated, and, then, a display image of the second deepest one and so on toward the nearest one. In this case, the display list 90 for the deepest information object is first prepared and then the lists 90 for successively nearer ones.
[0118] At Step 506, the display picture generation managing means 105 or the object data managing means 104 records the current time and other information in a field of the access record 35 in the display managing data 30 of the subject information object.
[0119] At Step 507, the processing in the loop is continued until the preparation of the display lists for all the object managing data is completed. The processing in the loop formed by the steps between Steps 503 and 507 inclusive is completed, the procedure advances to Step 508.
[0120] Steps between Step 508 and Step 510 inclusive form a loop. For all information objects in the display list 90, the display picture generation managing means 105 executes the steps in the loop. If the display picture generation is performed first for the information object located deepest from the visual field 71 toward the nearest one, the respective steps in the loop are executed for the information object farthest (deepest) from the visual field 70 successively to the nearest information object, using the display list 90 prepared by the execution of the steps in the loop formed by the steps between Steps 503 and 507 inclusive.
[0121] At Step S509 in the loop, the display picture generation managing means 105 causes the object display image generator function 14 corresponding to the content type of the object being handled to generate an object display image in accordance with the geometric relation representative data 33, the display priority 34 and the object display intermediate data 50, and render the generated object display image on the display picture frame.
[0122] For one or more information objects, simultaneously (in parallel) with real time display picture generation under the control of the display picture generation managing means 105, the generations, renewals or deletions of a plurality of object display intermediate data are simultaneously executed under the control of the control means 103 or the object data managing means 104. This allows the object display intermediate data to be generated, renewed or deleted without interrupting real-time display image generation, even when there are information objects which require a long time for generation, renewal or deletion of their object display intermediate data. Simultaneous generation and renewal of the object display intermediate data for a plurality of objects can reduce the time required before the respective information objects are displayed.
[0123] The object display image generator function 14 may generates a display image in varying forms in accordance with varying geometric relation representative data 33 or with varying values of the display priority PD 34. For example, the transparency of the information object may vary depending on the display priority PD 34. For example, an information object of lower display priority PD 34 may be displayed with a higher transparency. In this case, as the visual field 71 becomes nearer to a remote information object, the display priority 34 of that object increases, so that the transparent information object gradually becomes more visible. In the object display intermediate data 50 having the format shown in FIG. 5 for example, increase in processing time in display image generation can be avoided by employing an image with the minimum required resolution out of the basic or reduced images in the texture data 53 or transparent mapping data 54 in accordance with the data 33 representing the geometric relation of an information object to the visual field 71.
[0124] At Step 510, the execution of the steps in the loop formed by Steps 508-510 is repeated until the rendering for all of the information objects in the display list 90 is completed at Step S510. When the execution of the steps in the loop is completed, the procedure advances to Step 511, and the display picture generation is ended.
[0125]
FIG. 10 is a flow chart of data reduction. When data reduction is started at Step 207 of FIG. 6 as described previously, the object data managing means 104 executes the data reduction shown in FIG. 10.
[0126] At Step 602, the object data managing means 104 determines whether the amount of memory occupied by the object display intermediate data 50 exceeds a predetermined threshold value. If the amount of memory occupied is determined to have exceeded the predetermined threshold, the procedure advances to Step 603. If the amount occupied is determined not to have exceeded the threshold, the procedure advances to Step 605, and the data reduction is finished.
[0127] At Step 603, the object data managing means 104 selects one of information objects whose object display intermediate data 50 is to be deleted, based on the display priority 34 of that information object and the access record 35. For example, an information object whose last use in generating a display image recorded in the access record 35 is oldest maybe selected. Alternatively, the object having the lowest display priority 34 may be selected. As a further alternative, the selection of object may be determined based on both of the display priority 34 and the access record 35. By releasing part of the memory region used in this manner, increase of the amount of memory occupied during a time period of the display processing can be avoided so as to keep the amount of memory occupied less than the predetermined value.
[0128] At Step 604, the object data managing means 104 causes the object display intermediate data deleting device function 13 of the content type specific data processor function 10 corresponding to the information object selected at Step 603, to delete the object display intermediate data 50 of the information object selected at Step 603. In this case, the object data managing means 104 may delete all or part of the object display intermediate data 50 of the selected information object. Alternatively, items to be deleted may be determined differently depending on the value of the display priority 34 of information objects.
[0129] If part of the object display intermediate data 50 has been deleted, the object data managing means 104 may renew or delete the object display intermediate data identification 36 in the object display managing data 30, as occasion demands. If the object display intermediate data 50 has been completely deleted, the object data managing means 104 empties the object display intermediate data identification 36.
[0130]
FIG. 11 is an example of flow chart for object display intermediate data generation. When the intermediate data generating processing PREPARE is called by the object data managing means 104 at Step 423 of FIG. 8 as described previously, the corresponding object display intermediate data generator function 12 executes the object display intermediate data generation shown in FIG. 11.
[0131] The generation of object display intermediate data for each information object is performed by means of the object display intermediate data generator function 12 corresponding to that information object. The content type specific data processor function 10 including that object display intermediate data generator function 12 is identified by the content type specific data processing function identification 32 of the object display managing data 30. In this manner, the object display intermediate data 50 is generated by means of processing procedures specific to the content type of each information object.
[0132] At Step 702 in FIG. 11, the object display intermediate data generator function 12 determines, for the information object to be processed in the intermediate data generation PREPARE, whether or not an intermediate data generating thread PREPARATION-THREAD is being executed in another thread. If the processing is not being executed, the procedure advances to Step 703. If the processing is determined to be being executed, the procedure advances to Step 704, and the intermediate data generation PREPARE is ended.
[0133] At Step 703, the object display intermediate data generator function 12 starts another thread to start the intermediate data generating thread PREPARATION-THREAD as exemplified in FIG. 12. The intermediate data generating processing PREPARE and the intermediate data generating thread PREPARATION-THREAD operate asynchronously.
[0134] At Step 703, the procedure advances to Step 704 to finish the intermediate data generating processing PREPARE without awaiting the end of the intermediate data generating thread PREPARATION-THREAD.
[0135]
FIG. 12 exemplifies the intermediate data generating thread PREPARATION-THREAD different from the intermediate data generating processing PREPARE. At Step 752 in FIG. 12, the object display intermediate data generator function 12 requests the content data capturer function 11 to capture part or all of content data which is necessary for generation or renewal of the object display intermediate data 50 of a particular information object and which has not yet been captured. If, however, the capture of that data does not finish within a predetermined time, the data capture of Step 752 is interrupted, and the procedure advances to Step 753.
[0136] At Step 753, the object display intermediate data generator function 12 processes the content data which has been already captured, to generate or renew the object display intermediate data 50. If necessary, the object display intermediate data generator function 12 renews the object display intermediate data identification 36 of the object display managing data 30.
[0137] At Step 754, the object display intermediate data generator function 12 processes the content data which has been already captured and the object display intermediate data 50, and generate or renew the link data set 37 in the link data list 40 of the object display managing data 30 for that information object.
[0138] At Step 755, the object data managing means 104 determines whether the display priority PD 34 of a particular object display managing data 30 is higher than the threshold value PTHG, the condition for starting the generation of the object display intermediate data 50. If the display priority PD 34 is determined to be higher than the threshold PTHG, the procedure advances to Step 756. If the display priority PD 34 is determined not to be higher than the threshold PTHG, the procedure advances to Step 757 to interrupt the generation of the object display intermediate data 50 in the intermediate data generating thread PREPARATION-THREAD, and this thread is finished.
[0139] At Step 756, the object data managing means 104 determines whether the generation and renewal of the object display intermediate data 50 and link data list 40 for that object display managing data 30 have been completed or not. If the generation and renewal are determined to have been completed, the procedure advances to Step 757, to interrupt the generation of the object display intermediate data 50 in the intermediate data generating thread PREPARATION-THREAD, and this thread is finished. If the generation and renewal of the object display intermediate data 50 and link data list 40 are determined not to have been completed, the procedure returns to Step 752, and the processing is continued.
[0140]
FIG. 14 shows an example of linkage between information objects displayed according to the embodiment. A link 85 to an information object 82 is defined in an information object 81. A link 86 to an information object 83 is defined in the information object 82. A link 87 to an information object 84 is defined in the information object 83. The content data of these information objects 81-84 may be of any one of forms, such as a plain text, a text file, e.g. an HTML document or an XML document, a data file , e.g. a JPEG or MPEG data file, a data stream, a directory data, and program codes. The links 85-87 are ones defined by hyperlink data defined in the HTML or XML document, link data defined in the directory data, and other forms defined for other content types.
[0141] The number of links from one information object is zero (0) or one (1) in FIG. 14, but links from one information object to a plurality of information objects may be defined. The linkage may be a loop in which tracing along links starting from any one information object returns to the starting information object.
[0142] Actually, for a group of information objects having linkage like the one as shown in FIG. 14, the link data set 37 in the link data list 40 of the object display managing data 30 is described to be bidirectional in principle. Specifically, in the link data list 40 of the object display managing data 30 of the information object 81, the link data set 37 defining the link to the information object 82 is described. In the link data list 40 of the object display managing data 30 of the information object 82, the link data set 37 defining the links to the information objects 81 and 83 is described. In the link data list 40 of the object display managing data 30 of the information object 83, the link data set 37 defining the links to the information objects 82 and 84 is described. In the link data list 40 of the object display managing data 30 of the information object 84, the link data set 37 defining the link to the information object 83 is described.
[0143]
FIGS. 15A through 15H show an example of display screens 901-908 on which display pictures are generated by continuously shifting the viewing point 70 and the visual field 71 shown in FIG. 13 with respect to the information objects 81, 82, 83 and 84 successively linked by the links 85, 86 and 87 shown in FIG. 14.
[0144]
FIG. 15A shows the display screen 901 of the information object 82 linked with the information object 81, being superposed on the information object 81 in a three-dimensional virtual space.
[0145]
FIG. 15B shows the display screen 902 of a picture produced by bringing the view point 70 closer to the information objets 81 and 82 than that of the screen 901. Due to the shifting of the visual field 71, the information objects 81 and 82 are displayed larger than on the screen 901. Also, the information object 83 linked from the information object 82 is displayed above and in front of the information object 82. The information object 83 appears on the screen 902, because, as the geometric relation to the visual field 71 changes, the display priority PD 34 of the information object 83 increases above the threshold PTHG which is the condition for starting the object display intermediate data generation, thereby the object display intermediate data 50 is generated, and the display priority PD 34 is higher than the threshold PTHD which is the condition for the object display.
[0146]
FIG. 15C shows the display screen 903 of a picture produced by bringing the view point 71 closer to the information objets 82 and 83 than that of the screen 902. As the visual field 71 moves, the information objects 82 and 83 are displayed larger than on the screen 902. In this picture, it is seen that the generation of the object display information data 50 for the information object 83 has not been completed yet, and the display image is generated from the object display intermediate data 50 in the middle of its generation.
[0147]
FIG. 15D shows the display screen 904 of a picture produced some time after the screen 903, without moving the view point 70 or visual field 71. The object display intermediate data 50 for the information object 83 has been further renewed than the screen 903, so that displayed images have been added. The information object 83 contains a moving image 88.
[0148]
FIG. 15E shows the display screen 905 of a picture produced some time after the screen 904, by moving the visual field 71 slightly rightward. The object display intermediate data 50 for the information object 83 has been further renewed, resulting in addition of images and change of the display image. The moving image 88 changes as time goes.
[0149]
FIG. 15F shows the display screen 906 of a picture produced some time after the screen 905, with the view point 70 and visual field 71 unchanged. The moving image 88 in the object display intermediate data 50 of the information object 83 has been further renewed and, accordingly, changed. In addition, the information object 84 linked from the information object 83 appears on the screen 906. The information object 84 has appeared, because, as the geometric relation 33 to the visual field 71 changes, the display priority PD 34 for the information object 84 exceeds the threshold PTHG, the condition for starting the generation of the object display intermediate data 50, which causes the object display intermediate data 50 to be generated, and the display priority PD 34 is also higher than the threshold PTHD, which is the condition for the object display.
[0150]
FIG. 15G shows the display screen 907 of a picture produced by pulling back the view point 70 from the position for the picture on the screen 906. In this picture, the information objects 82, 83 and 84 are displayed smaller, and the information object 81 which has been hidden by the information object 82 appears again.
[0151]
FIG. 15H shows the display screen 908 of a picture resulting from further pulling back the view point 70 from the position for the picture on the screen 907. The information objects 83 and 84, which were displayed on the screen 907, are no longer being displayed on the screen 908, because their display priorities 34 have become lower than the threshold PTHD, the condition for displaying objects, and hence they have been deleted from the display list 90.
[0152] For the picture on the screen 901, the information object 81 is selected as the representative object. On the screen 902, the information object 82 is selected as the representative object. For the pictures of the screens 903-906, the information object 83 is selected as the representative object. For the picture on the screen 908, the information object 81 is selected again as the representative object. In the illustrated example, it is somewhat difficult for the user to judge which one of the information objects is the representative object, but the picture may indicate, in a perceptible manner, which one of the information objects is the representative object.
[0153] At Steps 420, 422, 432, 504 and 755 of the above-described embodiment, whether or not the object display intermediate data should be generated, renewed or deleted, and whether or not the object display managing data should be deleted, and whether or not the object should be displayed are determined by comparing the display priority PD 34 with the reference thresholds for the respective conditions. However, they may be determined in other suitable ways as occasion demands.
[0154] The invention has been described by means of an embodiment which mainly deals with displaying visual information objects on a display screen. However, an audio signal generating function may be implemented as one of the functions of the object display image generator 14, with audio output means added to the apparatus, to thereby enable audio information objects to be produced.
[0155] The above-described embodiment is only a typical example, and its modifications and variations are apparent to people skilled in the art. It should be noted that people skilled in the art can make various modifications to the above-described embodiment without departing from the principle of the invention and the accompanying claims.
[0156] Advantages of the Invention
[0157] According to the invention, in displaying linked information objects in an information processing apparatus, advantageously, means is provided for enabling easier attainment of a desired one of the linked information objects by traversing the links between the information objects, smoother image change with shift of a visual field can be realized, and time required for a desired content to be displayed can be reduced. According to the invention, advantageously, the different types of contents can be displayed, displaying different types of contents can be realized by integrating means, and displaying additional types of contents is also facilitated.
Claims
- 1. An information processing apparatus for displaying a plurality of linked information objects in a virtual space in accordance with visual field data, a particular information object representing a content of a particular content type, said visual field data defining a visual field in said virtual space, said apparatus comprising:
holding means for holding, in an executable manner, intermediate data generating means specific to said content type for generating intermediate data for display, and display image generating means specific to said content type for generating a display image from said generated intermediate data; first means for causing said intermediate data generating means to generate intermediate data for displaying said particular information object, when it is determined, in accordance with a geometric relation between said visual field and said particular information object, that said intermediate data of said particular information object should be generated; and second means for causing said display image generating means to generate a display image of said particular information object from said generated intermediate data, when it is determined, in accordance with the geometric relation between said visual field and said particular information object, that said particular information object should be displayed.
- 2. The information processing apparatus according to claim 1 wherein said intermediate data generating means and said display image generating means operate asynchronously with each other.
- 3. The information processing apparatus according to claim 1 wherein said first and second means are controlled by control means; and
said intermediate data generating means operates under the control of said first means, to generate and renew said intermediate data for displaying said information object, said display image generating means operating simultaneously with said intermediate data generating means, under the control of said second means, to generate a display image of said information object from said generated and renewed intermediate data.
- 4. The information processing apparatus according to claim 1 wherein said holding means holds at least one content type specific data processing means, said at least one content type specific data processing means including at least intermediate data generating means for generating intermediate data of an information object of one content type and display image generating means for generating a display image of the information object of said one content type.
- 5. The information processing apparatus according to claim 1 wherein said holding means holds in an executable manner at least data processing means specific to said content type, said data processing means including said intermediate data generating means, said display image generating means, content data capturing means specific to said content type for capturing content data of said particular information object, and intermediate data deleting means specific to said content type for deleting said generated intermediate data in an intermediate data memory.
- 6. The information processing apparatus according to claim 1 wherein said intermediate data generating means is implemented in form of intermediate data generating program codes, and said display image generating means is implemented in the form of display image generating program codes; and
said apparatus comprises further means for capturing said intermediate data generating program codes and said display image generating program codes into said holding means from an external device or a communication line.
- 7. The information processing apparatus according to claim 1 further comprising:
means for smoothly changing said visual field data; a memory for storing therein said generated intermediate data; a display memory; and means for rendering said display image on to said display memory; said first means determining for each of said plurality of information objects whether or not intermediate data for displaying that information object should be generated, in accordance with the geometric relation between said visual field and that information object; said second means determining for each of the information objects for which intermediate data has been generated whether a display image of that information object should be generated from said generated intermediate data, in accordance with the geometric relation between said visual field and that information object.
- 8. The information processing apparatus according to claim 1 further comprising:
means for assigning a display priority to each of said plurality of information objects; said first means comparing said display priority of said particular information object with a predetermined threshold to thereby determine whether or not the intermediate data of said particular information object should be generated; said second means comparing said display priority of said particular information object with a predetermined threshold to thereby determine whether or not the display image of said particular information object should be generated.
- 9. The information processing apparatus according to claim 1 wherein:
said holding means further holds intermediate data deleting means specific to said content type for deleting said generated intermediate data; said information processing apparatus further comprises a memory region for storing therein said intermediate data and managing data for said particular information object, and means for assigning display priorities to respective ones of said plurality of information objects; said first means comparing said display priority of said particular information object with a predetermined threshold to thereby determine whether or not the intermediate data of said particular information object should be generated or renewed; said first means causing said intermediate data generating means to generate or renew said intermediate data of said particular information object when the display priority of said particular information object is higher than the predetermined threshold; said first means causing said data deleting means to delete said intermediate data of said particular information object in said memory region when the display priority of said particular information object is lower than a predetermined threshold; said first means deleting the managing data of said particular information object in said memory region when the display priority of said particular information object is lower than a predetermined threshold.
- 10. The information processing apparatus according to claim 1 wherein said display image generating means determines a form in which said display image is displayed, in accordance with the geometric relation between said visual field and said particular information object.
- 11. The information processing apparatus according to claim 1 wherein display priorities are assigned to respective ones of said plurality of information objects; and when the display image of said particular information object is to be displayed, said display image generating means determines a form in which said display image of said particular information object is to be displayed, in accordance with the display priority of said particular information object.
- 12. The information processing apparatus according to claim 1 further comprising:
a memory region for storing therein display data including intermediate data for displaying said plurality of information objects; and memory managing means for detecting an amount of said memory region occupied by said display data and time-sequentially deleting at least part of intermediate data in said memory region which has not been used for display image generation for the longest time.
- 13. The information processing apparatus according to claim 1 further comprising:
third means for selecting one of said plurality of information objects as a representative object and defining said visual field by defining a geometric relation of said representative object to said visual field; said third means altering said representative object, without changing the geometric relations of said plurality of information objects to said visual field, as said visual field shifts in said virtual space; said first means traversing linkages between said plurality of information objects, starting with said representative object, to thereby determine whether or not said intermediate data of said particular information object should be generated.
- 14. The information processing apparatus according to claim 13 wherein display priorities are assigned to respective ones of said plurality of information objects, and said third means selects one of said plurality of information objects having a highest display priority as said representative object.
- 15. A program stored on a storage medium for use with an information processing apparatus for displaying a plurality of linked information objects in a virtual space in accordance with visual field data, a particular information object representing a content of a particular content type, said visual field data defining a visual field in said virtual space, said apparatus including a holding region for holding, in an executable manner, a program specific to said content type being operable to effect the steps of: generating intermediate data specific to said content type, and generating a display image specific to said content type from said generated intermediate data;
said first program being operable to effect the steps of:
causing intermediate data for displaying said particular information object to be generated in the intermediate data generating step, when it is determined, in accordance with a geometric relation between said visual field and said particular information object, that said intermediate data of said particular information object should be generated; and causing a display image of said particular information object to be generated from said generated intermediate data in the display image generating step, when it is determined, in accordance with the geometric relation between said visual field and said particular information object, that said particular information object should be displayed.
- 16. The program according to claim 15 being operable to asynchronously effect the step of causing intermediate data to be generated with the step of causing a display image to be generated.
- 17. The program according to claim 15 being operable to further effect the step of controlling to call the intermediate data generating step to thereby cause the intermediate data for displaying said information object to be generated and renewed, and simultaneously, call the display image generating step to thereby cause the display image of said information object to be generated from said generated and renewed intermediate data.
- 18. The program according to claim 15 wherein said holding region includes a region for holding, in an executable manner, at least one content type specific processing program, said at least one content type specific processing program being operable to effect at least the steps of:
generating intermediate data of an information object of one content type, and generating a display image of the information object of said one content type.
- 19. The program according to claim 15 wherein said program specific to the content type is operable to further effect the steps of:
capturing content data of said content type, and deleting intermediate data of said content type in an intermediate data memory.
- 20. The program according to claim 15 being operable to further effect the steps of:
assigning display priorities to respective ones of said plurality of information objects; comparing said display priority of said particular information object with a predetermined threshold to thereby determine whether or not the intermediate data of said particular information object should be generated; and comparing said display priority of said particular information object with a predetermined threshold to thereby determine whether or not the display image of said particular information object should be generated.
- 21. The program according to claim 15 wherein:
said program specific to said content type is operable to further effect the step of deleting said generated intermediate data; the step of generating intermediate data includes storing said intermediate data in a memory; and said first program being operable to further effect the steps of:
assigning display priorities to respective ones of said plurality of information objects; comparing said display priority of said particular information object with a predetermined threshold to thereby determine whether or not said intermediate data of said particular information object should be generated or renewed; causing said intermediate data of said particular information object to be generated or renewed in the intermediate data generating step, when the display priority of said particular information object is higher than the predetermined threshold; causing said intermediate data of said particular information object in said memory to be deleted in the data deleting step, when the display priority of said particular information object is lower than a predetermined threshold.
- 22. The program according to claim 15 being operable to further effect the step of assigning display priorities to respective ones of said plurality of information objects; the display image generating step including, when the display image of said particular information object is to be displayed, determining a form in which said display image of said particular information object is displayed, in accordance with the display priority of said particular information object.
- 23. The program according to claim 15 wherein the intermediate data generating step includes storing data for display including intermediate data for displaying said plurality of information objects in a memory region; and
said program is operable to further effect the steps of: detecting an amount of said memory region occupied by said display data; and sequentially deleting at least part of intermediate data in said memory region which has not been used for display image generation for the longest time.
- 24. The program according to claim 15 being operable to further effect the step of selecting one of said plurality of information objects as a representative object and defining said visual field by defining a geometric relation of said representative object to said visual field;
the selecting step including altering said representative object, without changing the geometric relations of said plurality of information objects to said visual field, as said visual field shifts in said virtual space; said program being operable to further effect the step of traversing linkages between said plurality of information objects, starting with said representative object, to thereby cause intermediate data of an information object in said plurality of information objects to be generated.
- 25. In an information processing apparatus, a method for displaying a plurality of linked information objects in a virtual space in accordance with visual field data, a particular information object representing a content of a particular content type, said visual field data defining a visual field in said virtual space, said method comprising the steps of:
processing data specific to said content type, including generating intermediate data specific to said content type and generating a display image specific to said content type from said generated intermediate data; causing intermediate data for displaying said particular information to be generated in said intermediate data generating step, when it is determined, in accordance with a geometric relation between said visual field and said particular information object, that said intermediate data of said particular information object should be generated; and causing a display image of said particular information object to be generated from said generated intermediate data in the display image generating step, when it is determined, in accordance with the geometric relation between said visual field and said particular information object, that said particular information object should be displayed.
Priority Claims (1)
Number |
Date |
Country |
Kind |
2001-162322 |
May 2001 |
JP |
|