Data providing structure, method, and terminal

Abstract: To provide a method and device for displaying map data and related data permitting easy enlargement of the scope of application of map-based data services. Additional drawing data for superposing on a map displayed on a screen, and setting data for specifying a map display, are sent and received between different application programs using inter-application exchange in a standard data format. Required map data and related data are displayed on the screen using a first application program having a function for converting received additional drawing data and setting data to the aforesaid data format and transmitting it by inter-application exchange, then using a second application program MPapln which displays a map on the display screen according to the setting data transmitted by the first application program and displays additional data on the screen map corresponding to the additional drawing data.

Description: This invention relates to an information retrieval system and information retrieval device which retrieve position data and related data, for example using the Internet, and display them. The Internet comprises a service referred to as the WWW (World Wide Web), which performs multimedia data retrieval via the network based on hypertext linking character information, image information and audio information. An enormous amount of information of many kinds can be accessed using the WWW ranging from technical data and economic information to shopping and restaurant information. There are also many types of WWW sites ranging from official bodies such as Governments and local public authorities to small companies, shops and even individuals. It is moreover envisaged that services using the WWW will undergo even further expansion in the future. When these WWW services are used, information about shopping and events can easily be obtained. However even if such information is acquired, map information is required to know exactly where a shop is located, or where an event is being held. When the WWW provides shopping or event information, it would be desirable if the location of a shop or event were displayed on a map. The WWW uses hypertext, so if a map of the nearby area is prepared as image data, and the location of the shop or event is marked on the map, the map can be marked at a predetermined position on a predetermined page. However, roads and topography are extremely complex, and it is therefore very difficult for persons preparing WWW pages to construct maps near shops or events, and paste them on predetermined pages. Also, the maps drawn by WWW page authors are frequently inaccurate. A WWW site providing map data could be envisaged wherein, when position data such as latitude or longitude is input, a map corresponding to the specific position is displayed. If there were such a WWW site, a user who acquired shopping or event information could then open a WWW search page providing this map data, and find the location of a shop or event on a map by inputting its position. To retrieve the map data, exact position information such as latitude and longitude are required. However, information regarding a shop or event generally includes only the shop name or event venue, telephone number and address, etc., and absolute position information such as latitude and longitude is almost never given. Therefore, even if map positions of shops or events are searched using a WWW site providing such map data, they are of no use if the absolute position of the shop or event is unknown. CD-ROM's are on the market which contain map data, and a map display application which displays a map around a place when the place is specified, so it would seem feasible to use the map data in such a CD-ROM. Using the CD-ROM application, it is possible to retrieve the map data position for a shop or event. This CD-ROM could also be used when preparing map data at sites which provide shopping or event information on the WWW. In other words, sites offering shopping or event information on the WWW would extract positions of shops or events from the map data in the CD-ROM. A shopping or event information page would be prepared, and map data from the CD-ROM would be pasted on the page. In this way, persons preparing WWW pages could paste accurate maps on pages without drawing maps themselves. However, map data is constantly changing. New buildings are erected, old buildings are demolished, and cities are always in a state of flux. There is also regional development and new roadworks. Hence, if map data in a CD-ROM were used, it would be difficult to cope with these changes in the data. Also the maps used with the WWW would include all kinds, from full coverage maps of the whole world to detailed maps showing shops belonging to private individuals in various world areas and of various scales. CD-ROM have a data storage limit, and cannot satisfy such wide-ranging demands. Further, if WWW pages are prepared using the map data in a CD-ROM, the map data would be used without restriction and it would be difficult to protect copyrights. Hiland et al, 'Luisiana Coastal GIS network; graphical user interface for access to Spatial data' discloses the development of a database and graphical user interface for accessing map data. It is therefore an object of the invention to provide a data structure group for offering map and/or related data, and a method for offering map and/or related data. It is a further object of the invention to provide a data receiving apparatus. According to this invention, there is provided a network server as defined in appended claim 1, a method for providing map data as defined in appended claim 2 and a map data and map-related data receiving apparatus as defined in appended claim 3. The present invention will be more clearly understood from the following description, given by way of example only, with reference to the accompanying drawings in which: Fig. 1 is a block diagram for the purpose of describing an embodiment of this invention. Fig. 1-1 is a block diagram for the purpose of describing one embodiment of this invention. Fig. 2 is a rough drawing for the purpose of describing an embodiment of this invention. Fig. 3 is a rough drawing for the purpose of describing an embodiment of this invention. Fig. 4 is a rough drawing for the purpose of describing an embodiment of this invention. Fig. 5 is a rough drawing for the purpose of describing an embodiment of this invention. Fig. 6 is a rough drawing for the purpose of describing an embodiment of this invention. Fig. 7 is a state transition diagram for the purpose of describing the image display according to one embodiment of this invention. Fig. 8 is a state transition diagram for the purpose of describing the image display according to one embodiment of this invention. Fig. 9 is a state transition diagram for the purpose of describing the image display according to one embodiment of this invention. Fig. 10 is a state transition diagram for the purpose of describing the image display according to one embodiment of this invention. Fig. 11 is a state transition diagram for the purpose of describing the image display according to one embodiment of this invention. Fig. 12 is a rough drawing for the purpose of describing drawing data according to an embodiment of this invention. Fig. 13 is a rough drawing for the purpose of describing drawing data according to an embodiment of this invention. Fig. 14 is a rough drawing for the purpose of describing drawing data according to an embodiment of this invention. Fig. 15 is a rough drawing for the purpose of describing drawing data according to an embodiment of this invention. Fig. 16 is a rough drawing for the purpose of describing drawing data according to an embodiment of this invention. Fig. 17 is a rough drawing for the purpose of describing drawing data according to an embodiment of this invention. Fig. 18 is a rough drawing for the purpose of describing drawing data according to an embodiment of this invention. Fig. 19 is a block diagram of this invention. Figs. 20-27 are diagrams for the purpose of describing information registration and editing according to this invention. Fig. 28 is a block diagram of this invention. Figs. 29 and 30 are diagrams for the purpose of describing information registration and editing according to this invention. This invention will be described in the following sequence. 1. System overview 2. Processing by position retrieval service 3. Processing by guide information service with added map data 4. Protection of data in map data base 5. Modifications 6. Map drawing information 1. System overview Fig. 1 shows an outline of a system to which this invention is applied. In Fig. 1, 1 is a map data base center. The map data base center 1 manages a WWW site providing map data. The WWW is a service which performs multimedia data retrieval via a network based on hypertext linking character information, image information and audio information. To use the WWW, an application program referred to as a browser is used. In the WWW, using hypertext, links to other WWW sites, Gopher servers and FTP servers can easily be made. The meaning of WWW in the context of this invention is used in the wide sense of a general entity comprising all data structures, such as http/gopher/ftp. The map data base center 1 is provided with a server 11 connected to the Internet 10. The server 11 stores map data corresponding to position data such as latitude and longitude. In other words, 0th dimension information. The map data stored in the server 11 is constantly updated to correspond with constantly changing map data. Desired map data may be obtained by accessing the WWW site of the map data in this map data base center 1. For example, assume that a user who has a user terminal 15 which can be connected to the Internet 10, wishes to acquire map data. For this purpose, he opens the WWW site managed by the map data base center 1. When the map data base site is opened, a map data search page is sent to the user terminal 15 from the server 11 of the map data base center 1, as shown in Fig. 2A. The user enters parameters of the desired map data, e.g. latitude, longitude and scale reduction, in this search page. When the parameters are input, the desired map data is searched from the map data stored in the server 11. This map data is sent to the user terminal 15 from the server 11 of the map data base center 1, and the desired map is displayed on the screen of the user terminal 15 as shown in Fig. 2B. The amount of data required for map display is enormous. Consequently when map data is sent from the server 11 of the map data base center 1, if all the data required for the map display is sent, transfer time is long and the network load is high. Therefore, drawing information comprising numbers and character strings for drawing a shape on the map is sent as described hereafter. Numeral 2 is a position data base center. The position data base center 2 manages a WWW site for searching the position of a shop or event venue. The position data base 2 has a server 12. This server 12 stores a data base for searching, for example, latitude/longitude data corresponding to addresses, main building names and shop names, and latitude/longitude data for event venues. The data in the server 12 of the center 2 also comprises information such as shop opening hours, types of business conducted and goods handled. When the WWW site of the center 2 is accessed, and for example addresses are input, latitude/longitude data can be retrieved. Again, when main building names, shop names and event venues are input, latitude/longitude data can be retrieved. Conversely, when latitude/longitude data is input, addresses, main building names or shop names can be searched. Moreover, shops, etc., which meet given conditions such as types of business or opening hours, can be retrieved. Searches wherein maps are directly displayed may also be performed by linking the WWW site of the position data base center 2 and the WWW site of the map data base center 1. For example, assume the user wishes to know the location of a shop which meets predetermined conditions. In this case, the user opens the WWW site managed by the position data base center 2 using the browser of the terminal 15. When the site of the center 2 is opened, data is sent from the site of the center 2 to the terminal 15, and the position search WWW page is displayed on the screen of the terminal 15, as shown in Fig. 3A. The user enters the required items on the search page. When the required items are entered, latitude/longitude data for the positions of shops which meet the conditions is searched based on the items entered by the server 12 of the center 2. Retrieved latitude/longitude data is sent to the map data base center 1. When latitude/longitude data is sent to the center 1, map data corresponding to this position is searched from map data stored in the server 11. This map data is linked to the position search WWW page, and a map of the input shop is thereby displayed on the screen of the terminal 15 as shown in Fig. 3B. Conversely, assume that the user wishes to know the address or telephone number of a location shown on the map. In this case, the WWW site managed by the position data base center 2 and the WWW site of the map data base center 1 are linked, and the screen shown in Fig. 4A is displayed on the terminal 15. Herein, when a point Pmk on the map is specified, the position at this time (latitude/longitude) is sent from the server 11 of the center 1 to the server 12 of the center 2. Information concerning the place corresponding to this position is then searched by the server 12 of the center 2, and is displayed as shown in Fig. 4B. Numeral 3 is a guide data base center. This center 3 manages a WWW site which provides guide data. The center 3 has a server 13 connected to the Internet 10. The server 13 stores information about events and shopping, etc. When the user wishes to acquire information about events or shopping, he opens a WWW site managed by the center 3 using a browser in the terminal 15. When the site of the center 3 is opened, data is sent from the server 13 of the center 3 to the terminal 15, and the guide data WWW page is displayed on the screen of the terminal 15. Using this guide data WWW page, event or shopping data can be obtained. It is sometimes desired to display shops and event venues on a map in the guide data WWW page. Conventionally, when map data was displayed, the map data was prepared by the center 3, and this had to be pasted on the WWW page. In the system to which this invention is applied, however, this is unnecessary because map data stored in the server 11 of the center 1 can be used as the map data displayed in the guide data. Specifically, a map is displayed in a part indicated by MAP in the guide data WWW page shown in Fig. 5. The map in this part MAP is map data extracted from the server 11 of the center 1. In other words, the guide data read from the server 13 of the center, 3 and map data read from the server 11 of the center 1 are combined, and the guide data page comprising the map MAP is displayed as shown in Fig. 5. It should be understood that when maps from the center 1 are combined in the guide data WWW page, maps in the WWW page may be combined using the browser of the terminal 15. Map data may also be prepared and supplementary data superposed by the map data base center 1. In other words, when the guide data base center 3 is opened by the browser of the terminal 15, a guide data search page is sent as shown in Fig. 6A. When a MAP button in this page is pressed, corresponding map data is retrieved by the center 1, and combined by the center 2. This map is then displayed on the screen of the terminal 15 as shown in Fig. 6B. Hence, systems to which this invention is applied comprise a data base center 1 which provides map data via the WWW. When this center 1 which provides map data is accessed, map data comprising a position is extracted from position data such as latitude or longitude. In addition the center 1, by linking up to the center 2 or the WWW page of the center 3, provides a service whereby a position of a shop or event is searched from the shop or event name so as to display it on a map, and the map data is simply embedded in the guide data. 2. Processing by position search service A description will now be given of the processing performed when the WWW of the center 1 and the WWW of the center 2 are linked, a position is searched from the name of a shop or event and displayed on a map, and information about the shop at that location is displayed from the map position. Figure 7 is a flow chart showing the processing performed at this time. A search page is sent to the user terminal 15 from the server 12 of the position search data base center 2 (step S1). This search page is displayed on the screen of the user terminal 15 (step S2). A search condition is input from the keyboard or mouse, and sent from the user terminal 15 to the server 12 of the center 2 (step S3). Places conforming to this condition are searched by the server 12 of the center 2 (step S4), and the search result is sent to the user terminal 15 (step S5). Also, position data (latitude, longitude) for the searched location is sent to the server 11 of the map data base 1 from the server 12 of the center 2 (step S6). Map data corresponding to this position data is searched by the server 11 of the map data base 1 (step S7). A drawing command for this map data is then sent to the user terminal 15 from the server 11 of the map data base 1 (step S8). The search result from the center 2 and the map data from the center 1 are sent to the user terminal 15. The search data and map data sent to the user terminal are then linked by a browser, and displayed on the screen (step S9). Fig. 8 is a flowchart showing the processing performed when a map is displayed on the search screen, a position on the map is entered, and data corresponding to this position are searched. The search screen from the server 12 of the data base 2 is sent to the user terminal 15 (step S11), the map drawing data from the server 11 of the map data base center 1 is sent to the user terminal 15 (step S12), these data are linked by the application software of the browser, and a search screen and map are displayed on the screen (step S13). When a search position is specified on this map, the search position is sent to the server 11 of the center 1 (step S14). Position data corresponding to the search position on the map is searched by the server 11 of the center 1 (step 15). This position data is then sent to the server 12 of the position search data base 2 (step S16). Data for a location corresponding to this position information is searched by the server 12 of the data base 2 (step S17). The data for the searched location is sent to the terminal 15 from the server 12 of the center 2 (step S18). The map data and data for the searched location are then linked by the browser, and displayed on the screen (step S19). 3. Processing of guide data added to map data Fig. 9 is a flowchart showing an example of the processing performed when map data is embedded in guide information. In Fig. 9, a search screen is sent to the user terminal 15 from the server 13 of the center 3 (step S21). This search screen is displayed on the screen of the user terminal 15 (step S22). When search data is input to the user terminal 15 via a user keyboard or mouse, this search data is sent to the center 3 (step S23). Guide data corresponding to the search data is searched by the server 13 of the center 3 (step S24). This guide data is sent from the server 13 of the center 3 to the user terminal 15 (step 525). In the user terminal 15, the guide data is decoded (step S26). A command for displaying a map using the map data base and map position data (specifically, latitude and longitude, etc.) is embedded in this guide information. Map data is requested from the center 1 according to this command and map position data (step S27). The server 11 of the map data base 1 searches the desired map according to the map position data received (step S28). Drawing data for this map is then sent from the server 11 of the center 1 to the user terminal 15 (step S29). Hence, guide data from the center 3 and map drawing data from the center 1 are sent to the user terminal 15. The search data in the guide data sent to the user terminal 15 and map drawing data from the center 1 are linked by a browser, and displayed on the screen (step S30). Fig. 10 shows another example of processing where map data from the map data base center 1 is added to a page of the center 3. According to this example, map data was prepared and supplementary data superposed in the center 3. In Fig. 10, a search screen is sent from the server 13 of the center 3 to the user terminal 15 (step S41). This search screen is displayed on the screen of the user terminal 15 (step S42). When search data is input by the user terminal 15 via a user keyboard or mouse, this search data is sent to the center 3 (step S43). Guide data corresponding to the search data is searched by the server 13 of the center 3 (step S44). The searched guide data is sent to the user terminal 15 from the server 13 of the center 3 (step S45). In the user terminal 15, the searched guide data is decoded (step S46). This guide data comprises a button to display map data. When this button is pressed (step S47), a map image display request is sent from the user terminal to the server 11 of the center 1 (step S48). The server 11 of the center 1 searches the requested map according to received map position data (step S49). Supplementary data is drawn on the map image (step S50). Hence, supplementary data is superposed, and drawing data is sent from the server 11 of the map data base 1 to the user terminal 15 (step S51). The received image is displayed by the user terminal 15 (step S52). According to this example, map data and supplementary data are combined in the center 1, and then sent to the user terminal 15, so there is no need for the browser to have a special command to link the map data. 4. Data protection for map data base By providing a map data base center 1 as described, a WWW page with map data can easily be made even when map data is not prepared by the guide data base center 3. However, there is a risk that if map data can be easily accessed, it might be impossible to protect copyrights of maps prepared by the map data base center 1. This problem might be resolved by the processing shown in Fig. 11. In Fig. 11, when search data is input to? the center 3 from the user terminal 15 (step S61), a search is conducted by the server 13 of the center 3 (step S62). An order number is transmitted to the user terminal 15 from the server 13 of the center 3 (step S63). A similar order number is then sent to the server 11 of the center 1 from the server 13 of the center 3 (step S64), and this order number is accepted by the center 1 (step S65). This order number comprises a code A issued by the center 1, and an order serial number generated by the center 3, and the two codes are also encoded. The code A is updated by the center 1 at regular intervals (e.g. every hour), and is sent to a data base center which has a contract with the center 1. After this code is issued, order numbers containing codes other than the code A are not accepted. The user terminal 15 displays the search result sent from the center 3 (step S66), and a map request corresponding to search data and the order number from the center 2 are sent to the center 1 (step S67). In the map data base center 1, order numbers are accepted via two routes, i.e. from the center 3 and the user terminal 15. In the map data base center 3 (1?), the order number from the center 3 and the order number from the terminal 15 are compared (step S68). As the same order number is sent to the user terminal 15 and the center 1 from the center 2?, the order numbers should be identical in the case of legitimate use. It is determined whether or not the order numbers coincide (step S69), and when it is determined that they are identical, map data is searched (step S70), and this map data is sent to the user terminal 15 (step S71). This map data and supplementary data are displayed on the user terminal 15 (step S72). When the order numbers do not coincide, a reject code is sent to the user terminal 15 from the server 11 of the center 1 (step S73). It is determined whether or not this reject code was accepted (step S74), and if the reject code was accepted, display of map data is refused (step S74). 5. Modification In the above examples, the data base center have been described as being connected to the INTERNET, however data base centers may be connected in other ways. This is shown in Fig. 1-1. In Fig. 1-1, a user terminal is connected to a data base server via the INTERNET, and the server is connected to a computer in a data base center. The computer has a map search engine, position search engine and guide information service engine which are firmware, and they each have their respective functions. In this case, the only hardware is the computer, each engine exists only as software, and it is unnecessary to clearly specify the positions of all the commands in the program for each engine. Therefore, the same effect as that of Fig.1 may be obtained if objects that start each engine function according to the state transition diagrams in Fig.7-Fig.11 even when each engine is not distinguished physically or in the program arrangement. It will be understood that the intermediate states of Fig.1 and Fig.1-1, i.e. the map search engine and position search engine, may be located in the same computer, only the guide information service engine being located in another data base center. It will further be understood that apart from the INTERNET, this invention may be applied also to general computer communications services and leased circuit connections. 6. Map drawing data As described hereinabove, map drawing data is sent to increase transfer rates and reduce the load on the network when map data is sent from the map data base center 1. This drawing data will now be described in more detail. A. (Latitude/Longitude Format) Latitude and longitude are expressed as follows: Latitude: 4 byte integer with code Longitude: 4 byte integer with code Northern latitude and eastern longitude are expressed as positive, southern latitude and western longitude are expressed as negative. When the angle is expressed in 1/2000 second units, the maximum value = +180×60×60×2000=4D3F6400hex, the minimum value = - +180×60×60×2000=B2C09C00hex, and maximum value - minimum value = 360×60×60×2000=9A7EC800hex. This value is used effectively up to the uppermost bit of the 4 bytes. The number of bytes is a square, and as they are the same as the integer processing units of a computer, it is suited for use with a computer. Making the above value correspond with the circumference of the equator (6378167m), we obtain: 2π×6378167/360x60x60x2000=0.01546(m). At this resolution, when the map is displayed on the screen of a personal computer having 640 dots × 480 dots (1 dot = 1 pel), the length of the display in the horizontal direction is: 640 × 0.01546 = 9.8944 (m) which is adequate for displaying the form of buildings, etc. To represent latitude and longitude, coded numbers and character strings may be used with other methods, and error correction codes may also be applied in the coding. B. Communication commands There are the following 4 types of commands: (1) Environment setting group (2) Drawing command group (3) Property specifying group (4) Point indicating group Most drawing commands have a property number specifying argument. Commands are either pure commands or commands associated with an argument. The commands in each group are described below. (1) Environment Setting Group a. Scale reduction (Argument) Scale reduction: 4 byte integer with code Shows the actual distance on the earth per 100 dots in a horizontal direction on the map display as a longitude interval. The format is the same as that of latitude/longitude. (Function) When the map display application has the scale reduction data which was actually specified, it follows this data. When it does not have this data, it either displays data having an approximate scale reduction close to this value or converts this approximate data to data having the specified scale reduction. b. Display center position (Argument) Latitude: 4 byte integer with code Longitude: 4 byte integer with code Displays the position of the map center. (Function) As shown in Fig. 12, the map display application prepares and displays map data such that the display center position Xc, Yc is in the center in the directions of latitude and longitude. c. Display frame size (Argument) Horizontal direction size: 2 byte integer without code Vertical direction size: 2 byte integer without code The display frame size Xw, Yh (Fig. 12) is expressed as a number of dots. (Function) When the map display application displays a map in a window of another application, it shows the size of the display area (Fig. 12). (2) Drawing command group a. Graphic drawing point displacement (Argument) Latitude: 4 byte integer with code Longitude: 4 byte integer with code (Function) Specifies the start point of the next drawing command (pointer, location mark, straight line, circle, polygon). For a circle, specifies the center position. b. Pointer (Argument) None (Function) Draws a pointer mark to indicate a place in which the user is presently interested. When the image to be drawn at the point display position is not specified, this a black circle () of 16 dots × 16 dots. Only one pointer can be displayed at one time by the map display application. When a pointer drawing command is issued, the map display application cancels the mark which was drawn by the immediately preceding command. c. Location mark (Argument) Property no.: Property no. without code This is a property no. specified by 0 - 31. (Function) Draws a mark showing buildings or facilities on a map. For example, to show the location of a shop, the latitude/longitude may be given to indicate the center of the premises or the center of the part facing the road in front of the shop. When the image drawn in the mark display position is not specified, it is a black circle () of 16 dots x 16 dots. d. Straight line (Argument) Property no.: Property no. without code This is a property no. specified by 0 - 31. Latitude: 4 byte integer with code Longitude: 4 byte integer with code Displays the position of the end of the straight line to be drawn. (Function) Draws a straight line from a location to? which a graphic drawing point is to be moved, or an end point of a linear part of a drawing, to a specified latitude/longitude position. e. Circle (Argument) Line drawing property no.: Property no. without code This is a line drawing property no. specified by 0 - 31. Shading property no.: Property no. without code This is a shading property no. specified by 0 - 31. Radius: 1 byte integer without code Expresses the size of a circle in the longitude direction on the screen as a number of dots. (Function) Draws a circle of the given radius around a location to which a graphic drawing point is to be moved. f. Polygon (Argument) Line drawing property no.: Property no. without code This is a line drawing property no. specified by 0 - 31. Shading property no.: Property no. without code This is a shading property no. specified by 0 - 31. No. of points: 1 byte integer without code Expresses the no. of points comprising the polygon. The origin and end point are treated as separate points. Point coordinate data: Latitude: 4 byte integer with code Longitude: 4 byte integer with code The latitude/longitude pair continues for the number of points? The coordinates of the points of the polygon are expressed by latitude/longitude. (Function) Draws a polygon linking each point. The start point and end point specified by the argument are treated as separate points, and the start point and end point are linked without closing the polygon when the drawing is made. Character displays in map data may be superposed on the polygon by the map display application, and the characters may be made unerasable by shading in the polygon. g. Character string (Argument) Property no.: Property no. without code This is a property no. specified by 0 - 31. Length of character strings: 1 byte integer without code This is the no. of bytes in the character string. Character data: 1 byte or 2 byte character x character string length. (Function) Displays the character string. As shown in Fig. 13, the coordinate Ps specified by displacement of the graphic drawing point is situated at the lower left corner. h. Drawing content erasure (Argument) None (Function) All supplementary data drawn on the map so far is erased excepting for the pointer display. The drawing contents of the supplementary data are stored internally, and even when scroll is performed or the magnification is changed, the supplementary data is again drawn in corresponding position on the map. When a command is received to erase the drawing contents, the supplementary data contents are erased from the display, and the drawing data for re-drawing stored internally is also erased. This prevents losing the map when various supplementary data are displayed in succession. i. Pointer erasure (Argument) None (Function) Erases the pointer display. The drawing contents apart from the pointer do not change. (3) Property specifying group a. Display properties of pointer drawing (Argument) Display color/foreground: RGB. Each is a 1 byte, integer without code Display color/background: RGB. Each is a 1 byte integer without code Specifies the color of the pointer display as levels of red, green and blue Blink interval: 1 byte without code (specified in units of 1/10 second) Specifies the blink interval of the pointer display. When the blink interval is not an integer/size 0, a point mark is displayed or erased. When it is erased, the display is returned to the state before drawing the point. Alternate color flag: Integer/size 1 byte without code The following alternate colors are valid when the flag is "1". They are invalid when the flag is "0". Alternate colors/foreground: Red (R), Green (G) and Blue (B). Each is a 1 byte integer without code Alternate colors/background: R, G, B. Each is a 1 byte integer without code Symbol bit data: 16 bytes Expresses 16x16 dot symbols. The data sequence is as shown in Fig. 14. A "1" bit draws dots in the foreground, and a "0" bit draws dots in the background. Only dots for which the following mask bit pattern is "1" are drawn (Fig. 16) Mask bit pattern: 16 bytes Expresses 16x16 dot patterns. The data sequence is as shown in Fig. 14. Only positions denoted by "1" bits are drawn according to the aforesaid symbol bit pattern (Fig. 16). Nothing is drawn in "0" bit positions, and they therefore appear to be transparent as shown in Fig. 16C. Hot point command: 1 byte integer without code Positions denoted for the purpose of explanation indicate the locations of symbols. The correspondence between values of the point indication (0 8) and positions on symbols is shown in Fig. 15. (Function) The color of the point display can be varied between "display color" and "alternate colors". When the time indicated by "blink interval" elapses starting from when display begins in either the "display color" or "alternate color", there is a change-over to the other color, and this operation is successively repeated. However blinking and alternate colors are used when a plurality of points are displayed, and only for the point which is finally drawn?. b. Location mark symbol specification (Argument) Property no.: Property no. without coding This is a property no. specified by 0 - 31. Symbol bit pattern: 16 bytes Expresses 16x16 dot symbols. The data sequence is as shown in Fig. 14. A "1" bit draws a dot in the foreground, and a "0" bit draws a dot in the background. Only pels for which the mask bit pattern is "1" are drawn (Fig. 16). Mask bit pattern: 16 bytes Expresses 16x16 dot patterns. The data sequence is as shown in Fig. 14. Only positions denoted by "1" bits are drawn according to the symbol bit pattern (Fig. 16). Nothing is drawn in "0" bit positions, and they therefore appear to be transparent as shown in Fig. 14C. Point indication: 1 byte integer without code Selects the part of a symbol indicated by the latitude and longitude position denoted by the location mark. The correspondence between the value of the point indication and position on the symbol is shown in Fig. 15. c. Line display property (Argument) Property no.: Property no. without code Property no. specified by 0 - 31 Line width: 1 byte without code Expresses number of dots. Colors: Red (R), Green (G), Blue (B). Each is a 1 byte integer without code. Specifies colors as levels of red, green and blue. Line pattern: 2 bytes without code Only positions of "1" bits are drawn. Nothing is drawn in positions corresponding to "0" bits, and they therefore appear to be transparent. The bit sequence and pattern for dotted lines is shown in Fig. 17. (Function) Specifies the width, color and pattern of straight lines, circles or polygons. Draws a solid line when the drawing is not specified. d. Shading property Property no. specified by 0 - 31. Pattern: 1 byte integer x 8 rows without code Bit sequences and patterns for parallel slanting lines are shown in Fig. 18. Display color/foreground: R, G, B, each 1 byte integers without code Display color/background: R, G, B, each 1 byte integers without code Specifies colors as levels of red, green and blue (Function) Specifies property when circles and polygons are shaded. Display color/foreground specifies the color of positions corresponding to "1" bits in the shaded pattern. Display color/background specifies the color of positions corresponding to "0" bits in the shaded pattern. e. Character string display properties (Argument) This is a property no. specified by 0 - 31. Font size: 1 byte integer without code The height of a rectangle containing the character is expressed as a no. of dots. The map display application selects and displays the font size closest to this specification. Display direction: 1 byte integer without code Specifies the alignment direction of the character string. 0: right direction (left to right) 1: left direction (right to left) 2: vertical direction (top to bottom) Display color/foreground: R, G, B, each 1 byte integers without code Specifies colors of characters as levels of red, green, blue. Display color/background: R, G, B, each 1 byte integers without code Specifies colors of character backgrounds as levels of red, green and blue. 4. Point specifying group a. Point specification (Argument) Latitude: 4 byte integer with code Longitude: 4 byte integer with code (Function) Issued when the specifies a map in the map drawing application using a pointing device. C. Limitations of Drawing (1) Upper/lower relation on display When a plurality of display elements are superposed, the elements drawn by the latest command will be on top, and elements already drawn will be hidden. For example when a shaded polygon is superposed on a character display, the characters will be no longer be visible, so the sender of additional drawing information must control which of the two appears on top. However pointers are always uppermost and are never hidden by other drawing elements. (2) Storage of display contents The map display application must store received drawing group commands so that additional drawing information can be redrawn when the user performs scrolling or zoom-in. There is however generally no need to store drawing group commands before receiving drawing content erasure commands. (3) Types of display properties To facilitate creation of applications, up to 32 types of display properties may be used on one occasion. Next, the registration of additional information in the map information system according to this invention will be described with reference to Fig. 19 and Fig. 20. First, describing the general registration procedure, the home page designer accesses a map information data base 23 via the INTERNET 25, and acquires an additional drawing/editing application for registration. This uses applets which distribute applications via networks that are already commercialized such as JAVA and Active X. Alternatively, the home page designer may start an application already in the home page designer's terminal. Next, the display position is moved using a map shift button 38, and a desired map is displayed by operating an enlargement button 36 or reduction button 37. Additional elements are drawn on this map using the additional drawing tools 28 to 35 and 39 to 41. After editing of the additional drawing elements is complete, the elements are registered in the additional information data base 24. The details of the method of editing this additional information will be described with reference to Fig. 21A-21H. Fig. 21A-21H describe the registration application operating screen. First, in Fig.21(a), an area specifying tool 28 is selected. The selection of tools is made by clicking a button corresponding to the tool with the mouse. When the tools 28 to 35 are selected, the selection is shown by a change in the display such as the background color. When a cursor 43 is brought over an additional drawing element which has already been written on the map, in this case the character string "ABC Shop", and the mouse button is clicked, the character string is selected. Four small squares are displayed at the four corners of the character string to show the selection. When the mouse is moved while the mouse button is depressed, the character string is dragged with the cursor 43, and when the mouse button is released, the character string is moved to the new position. When an erase button 39 is pressed, the character string is erased. In Fig.21B, the line tool 10 is described. When the line tool is selected, a cursor 44 becomes a cross as shown in the diagram. When the mouse button is pressed at a point A and moved to a point B while it is still depressed, a line is drawn from the point A to the point B as shown in the figure. When the mouse button is released, this line is registered as one dimensional information. In Fig.21C, the square tool 32 is described. When the square tool is selected, a cursor 45 becomes a cross as shown in the diagram. When the mouse button is pressed at a point C and moved to a point D while it is still depressed, a square is drawn having a diagonal between the points C and D as shown in the figure. When the mouse button is released, this line is registered as two dimensional information. In Fig.21D, the shift tool 34 is described. When the shift tool is selected, a cursor 46 assumes the shape of a hand. When the mouse button is pressed at a point E and moved to a point F while it is still depressed, the map display is scrolled by an amount corresponding to a vector EF. In Fig.21E, the character input tool is described. When the character input tool is selected, a cursor 47 becomes the shape of a letter I. When characters are then input from the keyboard, the input characters are drawn on the map. In Fig.21F, a circle tool 30 is described. When the circle tool is selected, a cursor 48 becomes a cross. When the mouse button is pressed at a point G and moved to a point H while it is still depressed, a circle is drawn inside a square having a diagonal from the point G to the point H, as shown in the figure. When the mouse button is released, this circle is registered. In Figs.21G and 21H, a polygon tool 33 is described. When the polygon tool is selected, a cursor 49 becomes a cross. When the mouse button is pressed at a point I, released, then pressed at a point J, released, and the same procedure is repeated at points K,L, lines IJ, JK and KL are drawn as shown in Fig. 21G. When the mouse button is quickly pressed twice, a polygon is drawn having apices I,J,K,L as shown in Fig.21H, and this polygon is registered. In Fig.22, a color specifying method is described. When a color specifying button 35 is pressed, a window shown in Fig. 22 is displayed. Small color specifying squares are arranged in rows in the window, and when the mouse is clicked on one of the squares, the color of that square is selected and the window closes. Characters, lines, circles, polygons and squares which are specified subsequently are drawn in the specified color. In Fig.23A and Fig.23B, a method of selecting line types is described. When the cursor is brought over the broken line selection button 40, and the mouse button is pressed, a pop-up menu is displayed as shown in Fig.23A, and the line corresponding to the broken line type selected, is displayed with black and white reversed. In this example, the uppermost solid line is selected. Next, the cursor is brought over a line type different from the type which was first inverted with the mouse button still depressed. Only the line beneath the cursor is then displayed with black and white reversed, as shown in Fig.23B. When the mouse button is released, the line type with which the cursor was aligned is selected, and all lines drawn subsequently are drawn with this line type. In Fig.24A and 24B, a method of selecting line thickness is described. When the cursor is brought over a line thickness selecting button 41, a pop-up menu is displayed as shown in Fig. 24A, and the line type corresponding to the selected line thickness is displayed with black and white reversed. This line thickness is then selected by the same procedure as in the pop-up menus of Fig. 23A and 23B. When all the elements have been drawn, they are then registered in the additional information center 22. The registration procedure is performed for example using a pull-down menu 50 from a menu bar 51, as shown in Fig.25. When registration is selected from the pull-down menu, the following details are registered in the additional information data base 24 from the home page designer terminal 26 shown in Fig.19. Map center latitude and longitude Map scale Map height and width Edited additional drawing elements When registration in the additional information data base is complete, a window shown in Fig. 26 is displayed, and a registration number for the information automatically assigned by the additional information data base is displayed. When the home page designer presses a button linking to a map, this number is used to call the map information data base center. An example in HTML (HyperText Markup Language) is shown below. When this example is displayed on a home page, it appears as shown in Fig. 29. The above is a description using the additional information data base. Fig.28 shows an example where . the additional information data base is not used. In this case, the details superposed on the map are stored by the home page server, and are written in a text file using the HTML which describes the home page. A function is therefore provided to display the editing results as a character string instead of the registration function in the additional drawing editing application. This will be described with reference to Fig.29 and Fig.30. The pull-down menu 50 is displayed from the menu bar 51, and data edit is selected. This causes a window 53 shown in Fig.30 to be displayed, and the editing results are displayed as a character string in a text display 52. To represent the editing results as a character string, they are joined to a statement having a unique function. An example of the statement format will be described. (1) map: scale level, latitude, longitude, width, height Specifies the map display method. Scale level: shows the map scale level, e.g. 0 is the widest level and 10 is the most detailed Latitude, longitude: latitude and longitude of map center (0.1 degree units) Width, height: shows width and height of map image in pixel units (2) color: R,G,B Colors are specified in terms of red, green and blue components. All drawing specification statements written subsequently are drawn in the colors specified here. R: red (0 to 255) G: green (0 to 255) B: blue (0 to 255) (3) line type:n Specifies the line type. Line types in line drawing statements written after this statement, follow the specified line type. n: 0=solid line, 1=fine dotted line, 2=dot-dash line, 3=rough dotted line (4) width:n Specifies the line width. Line widths of line drawing statements written after this statement, and line widths of outlines drawn by rectangle, ellipse and polygon drawing statements, follow the line width specified here. n: shows line width in number of pixels (5) line: x1,y1,x2,y2 Specifies a line drawing: x1: Latitude of line start latitude (0.1 degree units) y1: Longitude of line start point (0.1 degree units) x2: Latitude of line end point (0.1 degree units) y2: Longitude of line end point (0.1 degree units) (5) oval: x1,y1,x2,y2 Specifies ellipse drawing. Draws an ellipse touching the sides of a rectangle of which one diagonal is a line connecting a position coordinate 1 represented by (x1,y1) and a position coordinate 2 represented by (x2,y2). x1: Latitude of position coordinate 1 (0.1 degree units) y1: Longitude of position coordinate 1 (0.1 degree units) x2: Latitude of position coordinate 2 (0.1 degree units) y2: Longitude of position coordinate 2 (0.1 degree units) (6) rect: x1,y1,x2,y2 Specifies rectangle drawing. Draws a rectangle of which one diagonal is a line connecting a position coordinate 1 represented by (x1,y1) and a position coordinate 2 represented by (x2,y2). x1: Latitude of position coordinate 1 (0.1 degree units) y1: Longitude of position coordinate 1 (0.1 degree units) x2: Latitude of position coordinate 2 (0.1 degree units) y2: Longitude of position coordinate 2 (0.1 degree units) (7) poly: c1,y1,dx2,dy2,dx3,dy3... Specifies a polygon drawing. A position coordinate represented by (x1,y1) is the start point, and the following dx2,dy2,dx3,dy3...form pairs which represent the coordinates of the apices of the polygon. It should be noted that these pairs do not correspond to latitude and longitude, but to differences from the coordinates represented by the immediately preceding pair. For example, dx2,dy2 represents the preceding start point, and the difference in latitude and longitude from the following apices of the polygon. Expressed as an equation, when the coordinates of the polygon apices (latitude, longitude) are (x1,y1),(x2,y2),(x3,y3)... dx2=x2-x1 dy2=y2-y1 dx3=x3-x2 dy3=y3-y2 Here, all coordinate values are expressed in 0.1 degree units. For example, writing a map link in the HTML format using the editing results shown in Fig. 30: The information displayed by the web browser according to this statement is the same as that of Fig. 27. When the button shown is pressed, information to the effect that the parameter having the name "DISP_PARAM" is the character string: "map:7,135020459,3404301,400,300;poly:135023493,3405320, 233,0,3-30,-43,3;" is sent to the map information data base using the format "FORM". In accordance with the value of the parameter received, a map is drawn with additional information superposed, and map image data is sent to the user's web browser.

Claims: A network server (1, 2, 3) for providing map data to a user terminal (15), comprising: map data means (11) for storing said map data, for transmitting a map data search page to said user terminal (15), for retrieving map data corresponding to searching parameters entered by a user on said map data search page, and for transmitting said map data corresponding to said searching parameters to said user terminal (15); position data means (12) for storing position data relating to said map data, for transmitting a position data search page to said user terminal (15), for retrieving position data corresponding to said searching parameters entered by a user on said position data search page, and for transmitting said position data corresponding to said searching parameters to said user terminal (15); and guide data means (13) for storing guide data relating to said map data, for transmitting a guide data search page to said user terminal (15), for retrieving guide data corresponding to searching parameters entered by a user on said guide data search page, and for transmitting said guide data corresponding to said searching parameters to said user terminal (15), wherein a command for requesting map data relating to said guide data from said map data means (11) is embedded in said transmitted guide data, said command being for transmitting to said map data means (11) from said user terminal (15). A method for providing map data at a user terminal, said method including the steps of: receiving at least one of a map data search page, a position data search page and a guide data search page through a network; retrieving said map data from a map database which includes said map data corresponding to a position data according to searching parameters entered by a user on said map data search page, said searching parameters including information in addition to a location name, retrieving said position data from a position database including said position data according to said searching parameters entered by said user on said position data search page, and retrieving guide data from a guide database including said guide data according to said searching parameters entered by said user on said guide data search page; displaying said guide data together with map data corresponding to said guide data only when said user activates a map request command displayed with said guide data at said user terminal; and transferring said map data, said position data, and/or said guide data through said network. A map data and map-related data receiving apparatus, including: transmitting means for transmitting a search command entered by a user to a map database including regularly updated map data corresponding to position data, to a position database including said position data in accordance with one of said position data and said regularly updated map data, and/or to a guide database including guide data through a network, wherein said search command includes multiple searching parameters having information in addition to a location name for simultaneously entry by a user; receiving means for receiving said regularly updated map data retrieved by said map database, for receiving said position data retrieved by said position database, and/or for receiving said guide data retrieved by said guide data system through said network retrieved according to said multiple search parameters; and display means for displaying said only regularly updated map data, said position data and said guide data received by said receiving means retrieved according to said multiple search parameters, wherein map data corresponding to said guide data and said guide data are displayed only when said user presses a map button displayed with said guide data at a user terminal. The method for providing map data and data related to said map data as set forth in claim 2, further including the step of confirming a correspondence of an identification transferred through said network with a predetermined identification stored in a guide database before retrieving said map data, said position data, and said guide data. A network server according to claim 1 wherein said position data includes longitude and latitude data. A network server according to either of claims 1 or 5 wherein: said map data means (11), said position data means (12) and said guide data means (13) are accessed by a world wide web. A network server according to any one of claims 1, 5 or 6 wherein: said searching parameters include business hours and business description information. The method for providing map data and data related to said map data as set forth in claim 2 or 4, wherein said network is constructed by accessing a world wide web, and said searching parameters include business hours and business description information. A network server according to any one of claims 1 or 5 to 7 wherein said guide data stored in said guide data means is registered and/or edited through said network means. A network server according to any one of claims 1, 5 to 7 or 9 further comprising: a network means for transferring to said map data means, to said position data means, and to said guide data means said searching parameters entered on said map data search page, said searching parameters entered on said position data search page and said searching parameters entered on said guide data search page, respectively and for transferring from said map data means said map data, from said position data means said position data, and from said guide data means said guide data and said map data, wherein said map data means, said position data means, and said guide data means are linked together. A network server according to any one of claims 1, 5 to 7, 9 or 10 wherein: said position data means (12) is also for transmitting said position data corresponding to said searching parameters to said map data means (11), said map data means (11) then transmitting map data relating to said position data to said user terminal (15). A network server according to any one of claims 1, 5 to 7 or 9 to 11 wherein: said guide data means (13) is also for transmitting an identification code to said user terminal (15) with said embedded command and simultaneously transmitting said identification code to said map data means (11); and said map data means (11) is also for comparing said identification code received from said guide data means (13) with an identification code received with a search command from a user terminal (15) and rejecting or processing said search command accordingly. A network server according to any one of claims 1, 5 to 7 or 9 to 12 further comprising: an additional-information database (24) for registering additional drawing elements edited onto a map supplied in response to a search command. A network server according to any one of claims 1, 5 to 7 or 9 to 13 wherein: said additional-information database (24) is for receiving additional drawing element information from said user terminal (15), for registering said additional drawing element information in said additional-information database (24), for assigning a registration number to said additional drawing element information, and for transmitting said registration number to said user terminal (15); and said network server is also for receiving said registration number from a user terminal (15), for adding additional drawing elements according to said additional drawing element information to map data supplied from said map data means (11) to produce a user map, and for transmitting said user map to said user terminal (15). A network server according to any one of claims 1, 5 to 7 or 9 to 14 wherein: said map data means (11) is also for receiving a map request command from a user terminal (15) specifying additional drawing element information, for adding additional drawing elements according to said additional drawing element information to map data to produce a user map, and for transmitting said user map to said user terminal (15). A network server according to any one of claims 1, 5 to 7 or 9 to 15 wherein said map data is regularly updated.

Inventors: HIRONO CHIHARU, HIRONO, CHIHARU
Applicants: SONY CORP, SONY CORPORATION
Application year: 1997
Main classification: G06T17
IPC codes: G06T17