US20170205985A1 - Expanding a 3d stack of floor maps at a rate proportional to a speed of a pinch gesture - Google Patents
Expanding a 3d stack of floor maps at a rate proportional to a speed of a pinch gesture Download PDFInfo
- Publication number
- US20170205985A1 US20170205985A1 US15/476,176 US201715476176A US2017205985A1 US 20170205985 A1 US20170205985 A1 US 20170205985A1 US 201715476176 A US201715476176 A US 201715476176A US 2017205985 A1 US2017205985 A1 US 2017205985A1
- Authority
- US
- United States
- Prior art keywords
- floor
- map
- displaying
- maps
- stack
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04815—Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/003—Navigation within 3D models or images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04806—Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04808—Several contacts: gestures triggering a specific function, e.g. scrolling, zooming, right-click, when the user establishes several contacts with the surface simultaneously; e.g. using several fingers or a combination of fingers and pen
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/0485—Scrolling or panning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/016—Exploded view
Definitions
- the present disclosure relates to interactive digital maps and, more particularly, to providing an interface for interacting with representations of multi-story buildings displayed as part of digital maps on a computing device.
- mapping applications may run on laptop and tablet computers, mobile phones, car navigation systems, hand-held global positioning system (GPS) units, etc.
- GPS global positioning system
- Many of these devices are equipped with a touchscreen, a touchpad, or are otherwise configured to receive input that includes finger gestures.
- a user may, for example, may pan across a map by swiping her finger in the desired direction, zoom in on an area by pinching two fingers together, etc.
- a mapping application can display various types of geographic data including topographical data, street data, urban transit information, and traffic data. Further, the geographic data may be schematic or based on photography, such as satellite imagery. Still further, a mapping application can display the information in a two-dimensional (2D) or three-dimensional (3D) format.
- a user sometimes may operate a mapping application to view a map of an urban area rendered two-dimensionally and schematically to better see street names, names of landmarks, etc.
- maps may include multi-story buildings for which additional floor-specific information is available. For example, different information may be available for each of ten floors of a building, and it is difficult for a mapping application to display this information two-dimensionally without creating confusion and clutter.
- displaying information for a multi-story building as part of a 3D map can result in some of the information being obscured.
- One embodiment of the techniques discussed below is a method for providing an interactive display of multi-story buildings displayed on a map.
- the method is implemented in a computing device having a user interface that is configured to receive gesture-based input.
- the method includes displaying a digital map of a geographic area via the user interface and displaying, on the digital map, a three-dimensional (3D) representation of a multi-story building located in the geographic area, including displaying a plurality of stacked floor maps corresponding to a plurality of floors of the multi-story building.
- the method also includes detecting, via the user interface, a pinch gesture that is applied to the 3D representation of the multi-story building, and modifying a vertical distance between two of the plurality of stacked floor maps in accordance with the pinch gesture, including not modifying a zoom level at which the two of the plurality of stacked floor maps are displayed.
- Another embodiment of the techniques described in the present disclosure is a method in a computing device for providing a digital map of outdoor and indoor locations via a user interface.
- the method includes displaying a three-dimensional (3D) representation of a multi-story building located in a geographic area of the digital map while displaying a plurality of stacked floor maps corresponding to a plurality of floors of the multi-story building.
- the method also includes detecting a pinch gesture, via the user interface, that is applied to the 3D representation of the multi-story building.
- a first point of contact is detected that overlays a first one of the plurality of stacked floor maps corresponding to a first one of the plurality of floors and a second point of contact is detected that overlays a second one of the plurality of stacked floor maps corresponding to a second one of the plurality of floors, where at least one of the plurality of floors is not between the first one of the plurality of floors and the second one of the plurality of floors.
- the method includes modifying vertical distances between pairs of floor maps in a range between the first one of the plurality of stacked floor maps and the second one of the plurality of stacked floor maps while not modifying vertical distances between one or more pairs of floor maps outside the range.
- Still another embodiment of the techniques discussed below is a computer-readable storage medium, having stored thereon a set of instructions, for providing an interactive display of multi-story buildings displayed on a map.
- the instructions stored in the computer-readable storage medium may be executed on a processor in a computing device having a user interface that is configured to receive gesture-based input.
- the computer-readable storage medium includes instructions for displaying a digital map of a geographic area via the user interface and displaying, on the digital map, a three-dimensional (3D) representation of a multi-story building located in the geographic area, including displaying a plurality of stacked, individually selectable floor maps corresponding to a plurality of floors of the multi-story building.
- the computer-readable storage medium also includes instructions for detecting, via the user interface, a gesture that operates directly on the 3D representation of the multi-story building, and instructions for modifying a vertical distance between two of the plurality of stacked floor maps in accordance with gesture and in response to detecting the gesture, including not modifying a zoom level at which the two of the plurality of stacked floor maps are displayed.
- FIG. 1 is a block diagram of an example system in which techniques for presenting internal features of a multi-floor building in a mapping application are implemented;
- FIG. 2 is an example screenshot that illustrates the display of a multi-story building on a map as several stacked floor maps
- FIG. 3 is an example screenshot that illustrates the display of the vertical expansion of the floor maps of a multi-story building, with the internal features of each expanded floor map being displayed;
- FIG. 4 is an example screenshot that illustrates the display of a tall multi-story building on a map as many stacked floor maps
- FIG. 5 is an example screenshot that illustrates the display of the vertical expansion of some of the floor maps of a tall multi-story building, with the internal features of each expanded floor map being displayed differently than unexpanded floors;
- FIG. 6 is a flow diagram of an example method for displaying a representation of a multi-story building on a map of a geographic region
- FIG. 7 is a flow diagram of an example method for displaying internal features of a multi-story building in response to gesture-based user input.
- a mapping software module operating on a computing device displays an interactive digital map of a geographic region in which a multi-story building is located.
- the mapping software module provides an intuitive, space-efficient, and aesthetically pleasing user interface for inspecting the internal features of the multi-story building, such as floor maps that include floor contours as well as internal wall layout and names of individuals or organizations occupying different floors of the building.
- the mapping software module displays a 2D schematic map that includes low-detail 3D outlines of buildings, which may be displayed to scale with the map.
- a user selects the desired building by tapping on the corresponding 3D outline.
- the mapping software module then expands the low-level outline view of the selected multi-story building to display the internal features of the building as a 3D stack of floor maps or contours, each illustrated in a perspective view.
- the 3D stack in some cases is significantly larger than the low-detail 3D outline, so that the floor contours are clearly visible and easily viewable.
- the mapping software module allows the user to modify a vertical distance between every floor map of the building via a gesture that operates directly on the expanded representation of the multi-story building.
- the mapping software module allows the user to view more internal features of each floor map because of the increased spacing between floor maps. For example, when the space above one particular floor of a multi-story office building is expanded to allow better visibility, the mapping module may display internal features of the floor map for the particular floor, such as businesses, stores, restrooms, escalators, etc. located on that particular floor. Once the user taps outside this expanded representation of the multi-story building, the mapping software module “collapses” the view of the multi-story building back to a 3D outline.
- the mapping software module allows the user to expand a vertical distance or spacing between each floor map of a representation of a 3D building using a pinch gesture. More specifically, after selecting a particular representation of a building, the user performs a pinch gesture to expand the vertical distance between each floor map in accordance with the pinch gesture. In detecting the rate of the pinch gesture, the mapping application may expand the vertical distance between every floor map at a rate identical to the detected pinch gesture rate. Likewise, the mapping application may expand the vertical distance between every floor map to the same extent as is relatively proportional to the detected pinch gesture.
- the user may apply a pinch gesture to only a subset of floors within the representation, and in response, the mapping application may expand the vertical distance between the floor maps for only the floors in the subset.
- the user may desire to only expand the upper floors of a ten-story office building to view features of an internal floor map for those selected particular upper floors.
- mapping software module may interactively present internal features of buildings is described with reference to FIG. 1
- example screenshots of the mapping software module are discussed with reference to FIGS. 2-5
- example methods which the mapping software module may implement to provide a user interface for inspecting internal features of multi-story buildings are discussed with reference to FIGS. 6 and 7 .
- a system 10 includes a computing device 12 coupled to a map server 14 via a communication network 16 .
- the computing device 12 can be, for example, a laptop computer, a tablet computer, a smartphone, etc.
- the computing device 12 includes a central processing unit (CPU) 20 , a graphics processing unit (GPU) 22 , a computer-readable memory 24 , and a user interface 30 including a touch interface 32 .
- the touch interface 32 can include a touchpad over which the user moves his fingers while looking at a separately provided screen, a touchscreen where the user places his fingers directly over the image being manipulated or over a displayed control being activated (e.g. a displayed keyboard), etc.
- the memory 24 is a computer-readable non-transitory storage device that may include both persistent (e.g., a hard disk) and non-persistent (e.g., RAM) memory components, stores instructions executable on the CPU 20 and/or the GPU 22 that make up a mapping software module 40 and map data 42 on which the mapping module 40 operates.
- the mapping software module 40 includes an internal building feature inspection module 44 that allows users to easily inspect internal features of multi-story buildings.
- the mapping software module 40 operates as a separately executable software application, a plugin that extends the functionality of another software application such as a web browser, an application programming interface (API) invokable by a software application, etc.
- the instructions that make up the mapping software module 40 may be compiled and executable on the CPU 20 and/or the GPU 22 directly, or not compiled and interpreted by the CPU 20 at runtime.
- the internal building feature inspection module 44 may be provided as an integral part of the mapping software module 40 or as a separately installable and downloadable component.
- the map data 42 may be in a raster format, such as Portable Network Graphics (PNG), a vector graphics format (based on mathematical descriptions of geometric shapes), or any other suitable format.
- the map data 42 in some cases is divided into map tiles, or portions of a map image having a certain fixed size, such as 256 by 256 pixels.
- the mapping module 40 receives the map data 42 from the map server 14 , renders a map image based on the map data, and causes the map image to be displayed via the user interface 30 .
- the mapping module 40 renders the map image by selecting and combining the proper rasterized tiles.
- the mapping module 40 interprets the descriptions of various shapes to generate the corresponding raster images.
- the mapping module 40 also adjusts the displayed image and requests new map data, when necessary, in response to user input received via the user interface 30 . More specifically, the user may change the zoom level, pan across the map, select a different map type (e.g., traffic map, terrain map), and otherwise interact with the map.
- the map server 14 receives a request that specifies the geographic area, the zoom level, and the map type.
- the map server 14 in response retrieves outdoor map data and indoor map data from an outdoor map database 50 and an indoor map database 52 , respectively.
- the map server 14 then provides the outdoor map data, the indoor map data, and appropriate indications of how certain portions of the outdoor map data and the indoor map data are linked, to the computing device 12 as part of the map data 42 .
- outdoor map data may specify individual map elements representing such outdoor physical entities as roads, parks, bodies of water, external walls of buildings, and other natural and artificial objects visible outside, e.g., from above or at a street level.
- map elements typically are embedded into the same image.
- Outdoor map also may include text-based data for displaying various labels such as street names or names of landmarks.
- outdoor map data may be for generating 2D images or 3D images, and may include schematic data, photographic images, or both.
- Indoor map data may specify internal features of buildings such as the layout of internal walls or dividers, names of people, businesses, and organizations occupying different portions of a building, locations of elevators, escalators, restrooms, etc.
- the indoor map data may specify internal features on a per-floor basis.
- indoor map data may include both graphics content and non-graphics (e.g., text) content, and the graphics content may include schematic illustrations, photographic images, interactive and non-interactive icons, etc.
- Certain portions of the outdoor map data may be logically linked to respective portions of indoor map data.
- certain map elements displayed on a map may be linked to indoor data that typically is not displayed on the map without an additional user request.
- certain map elements may be associated with additional map data that is not part of the map image typically displayed for the specified geographic region, map type, and zoom level.
- the map server 14 can provide outdoor map data as a collection of separate data structures, each containing a vector-based description of a map element, text-based label data, and metadata that further contains a unique identifier of another data structure storing the corresponding indoor map data.
- the mapping software module 40 can display the outdoor map data and provide interactive controls for activating the display of relevant indoor map data.
- the map server 14 provides, as part of outdoor map data, external representations of buildings in the form of low-detail 3D outlines.
- the mapping software module 40 superimposes these 3D outlines over a 2D map.
- the map server 14 provides 3D mesh descriptions of buildings along with photographic imagery for texturing the corresponding 3D meshes. Using this type of map data, the mapping software module 40 can generate realistic, highly detailed external representations of buildings.
- the map server 14 provides merely 2D outlines, or “footprints” of buildings on a 2D map. A user can tap or click on these 2D or 3D external representations of buildings to instruct the mapping software module 40 to display the internal features of the buildings in an expanded format.
- the map server 14 may include a processor 60 and a memory 62 that stores a request handler 64 , made up of instructions executable on the processor 60 .
- the computing device 12 and the map server 14 may communicate in a client-server mode, where the computing device 12 sends requests for map data to the map server 14 , and the map server 14 provides map data in response to these requests.
- the request handler 64 in operation receives requests for map data from the computing device 12 , identifies and retrieves the requisite map data from the outdoor map database 50 and/or the indoor map database 52 , formats response messages that contain the map data, and causes the response messages to be transmitted to the computing device 12 via the network 16 , which may be a wide area network (WAN) such as the Internet, a local area network (LAN), or any other suitable type of a network.
- WAN wide area network
- LAN local area network
- FIG. 1 illustrates the map server 14 as only one instance of a server device.
- the map server 14 includes in a group of one or more map server devices, each equipped with one or more processors and capable of operating independently of the other map server devices.
- Map server devices operating in such a group can process requests from the computing device 12 individually (e.g., based on availability), in a distributed manner where one operation associated with processing a request is performed on one map server device while another operation associated with processing the same request is performed on another map server device, or according to any other suitable technique.
- the term “map server” may refer to an individual map server device or to a group of two or more map server devices.
- an example screenshot 100 illustrates a representation 104 of a multi-story building overlaying a map of a geographic area 102 .
- Indoor and outdoor map data are displayed within a same viewport in this example.
- the representation 104 includes several stacked floor maps 111 - 113 .
- the floor maps 111 - 113 vertically expand in accordance to the pinch gesture to reveal internal features of each expanded floor map of the multi-story building, as an example screenshot 200 illustrates in FIG. 3 .
- pinch gesture may refer to any type of pinch gesture including a pinching motion, spreading motion, rotating motion, or any other suitable motion that a user may gesture to indicate the vertical expansion or compression of floor maps of the multi-story building.
- the pinch gesture may be replaced with a control element, such as widget with a “expand” button and a “compress” button or any other suitable manner in expanding or compressing the vertical distance between floor maps.
- the map 102 illustrates several city blocks and includes various outdoor map elements such as roads 120 , railroad tracks 122 , and low-detail outlines of buildings 124 and 128 .
- the map 102 also can include icons and text labels corresponding to outdoor map data, such as a map transit icon 130 , for example.
- the map 102 is a 2D map on which most map elements are illustrated with a one-point projection, the expanded representation 104 in general can overlay any other suitable type of a map such as a 3D map, for example.
- a mapping software e.g., the internal building feature inspection module 44 operating in the mapping software module 40 of FIG.
- the screenshot 100 corresponds to the scenario in which the user selected the multi-story building by clicking or tapping on the corresponding low-detail outline, for example, and the mapping software in response generated the expanded representation 104 .
- the low-detail outline 124 or 128 provides a general indication of the shape of the building.
- the outline 124 or 128 typically does not provide a high-level of detail such the shape of every external wall or the ornamental features of the buildings, nor does the outline 124 illustrate internal features of the building.
- the low-detail outlines 124 and 128 are 3D shapes displayed according to an isometric projection. In another implementation, however, these outlines can be illustrated with a two-point perspective. More generally, and as discussed above, buildings and other structures for which indoor map data is available generally can be illustrated using any suitable 2D or 3D shapes rendered with any desired level of detail.
- the mapping software provides an indication of whether indoor map data is available for an outdoor map element by changing the cursor, for example, or highlighting the map element upon detecting a hover event. In this manner, the user need not click or tap on a map element illustrating a building only to find out that internal map data for the building is unavailable.
- the floor maps 111 - 113 are laid out on different planes tilted relative to the plane of the screen to provide a 3D view of the internal features of the corresponding building.
- the floor maps 111 - 113 partially overlap to more efficiently utilize screen real estate. Similar to low-detail 3D outlines, the stack of floor maps 111 - 113 is displayed according to an isometric projection, although it is possible to display the stack of floor maps 111 - 113 with a two-point perspective, for example.
- the mapping module may initially display the floors maps 111 - 113 as contours free of internal floor features. In embodiments according to which floors maps 111 - 113 display some or all internal floor features as partially or fully opaque, so that some of the floor maps can partially occlude other floor maps and thereby reduce clutter on the screen.
- each floor maps 111 - 113 gradually increases to reveal more internal features of each lower floor map 111 , 112 that is occluded by the floor map directly above 112 , 113 .
- a pinch gesture such as a spreading motion
- the distance 131 between floor one 111 and floor two 112 and the distance 132 between floor two 112 and floor three 113 begin vertically increasing at a rate relative to the pinch gesture.
- both distances 131 , 132 between floors continue vertically expanding according to the pinch gesture until the user ceases performing the pinch gesture.
- each expanded floor map 111 - 113 may remain at its expanded position or may collapse back down to its original non-expanded position immediately or after a predetermined time interval.
- the distances 131 , 132 between floors may switch from vertical expansion to vertical compression upon the user changing the type of pinch gesture, such as a pinching motion.
- the detailed floor maps 201 - 203 are generated using indoor map data and may illustrate, in addition to the contours of the floor, hallways 210 and rooms or offices 212 , although in general each detailed floor map 201 - 203 can depict any available indoor floor features.
- the detailed floor map 203 is fully visible so that no part of the detailed floor map 202 is occluded by any of the floor maps of lower or higher floors.
- both the floor maps 111 , 112 of the first floor and second floor become fully visible.
- the mapping module may only display the internal features of a detailed floor map 202 - 203 when the distance 131 , 132 between two floors of the multi-story building is greater than a threshold.
- the detailed floor map 202 is only visible when the distance between floor map 112 of floor two and the floor map 113 of floor three is greater than a certain threshold value.
- the threshold value may be preset for all floors, configured for specific floors, configured for to specific buildings or types of buildings, dynamically determined based on the zoom level, etc.
- the mapping application may alternatively reveal the detailed floor maps 201 - 203 to the user as each expanding floor map 111 - 113 becomes visible during the pinch gesture, or determine when to display the detailed floor maps 201 - 203 in any suitable manner.
- an example screenshots 300 illustrates a representation of a ten-story mid-rise building 302 displayed on a map.
- a pinch gesture point i.e., point of contact
- a pinch gesture point 312 near floor five of the representation of the building
- only the floor maps between the two points 310 , 312 may expand while other floor maps outside the two points 310 , 312 remain stationary, as illustrated in an example screenshot 350 .
- FIG. 1 a pinch gesture point
- the user may tap on a point on the map 102 that is outside the expanded representation 104 or move the viewport so that the expanded representation 104 is no longer visible.
- the mapping software may revert to the mode in which the user interacts with outdoor map data.
- the expanded representation 104 may collapse to the low-detail representation 204 .
- the internal building feature inspection module 44 provides an interface for inspecting indoor map data free of additional controls (such as buttons for expanding the distance between floors or a floor picker with numbered buttons displayed over the map).
- additional controls such as buttons for expanding the distance between floors or a floor picker with numbered buttons displayed over the map.
- the internal building feature inspection module 44 additionally or alternatively provides controls overlaying the map.
- the internal building feature inspection module 44 may display a floor picker next to a multi-story building and support a pinch gesture for changing the distance between floors.
- example methods that the internal building feature inspection module 44 may implement are discussed next with reference to FIGS. 6 and 7 . More generally, these methods can be implemented in any suitable computing device and any suitable software application. For example, these methods can be implemented as sets of instructions stored on a computer-readable medium and executable on a processor.
- the flow diagram of FIG. 6 illustrates an example method 400 for displaying a representation of a multi-story building on a map of a geographic region.
- an interactive digital map of a geographic region is rendered.
- the rendered digital map may be rendered using outdoor map data and may display map elements such as roads, buildings, parks, bodies of water, etc.
- a low-detail representation of a multi-story building is rendered at block 404 .
- a low-detail representation is only one example of a suitable external representation of the building.
- the external representation may be a detailed 3D representation textured with photographs of the building.
- a selection of the multi-story map on the digital map is detected.
- the selection may correspond to a tap event, for example, if a touch interface is used.
- An extended 3D representation of the multi-story building having multiple stacked floor maps is rendered at block 408 . Referring back to FIG. 2 , this representation may be similar to the representation 104 .
- a pinch gesture as applied to the representation, is detected via the user interface, and a vertical distance between each floor map and its neighboring floor map is expanded in accordance with the pinch gesture.
- the zoom level of the displayed representation of the building does not change during the detection of the pinch and the expansion of the vertical distance between floor maps.
- the user performs a pinch gesture anywhere near the representation and, in response, the vertical distance between each floor map and its neighboring floor map expands while the user continues to perform the pinch gesture.
- the user performs the pinch gesture until each floor map in the representation may be viewed in sufficient detail.
- a detailed floor map for each expanded floor map is rendered at block 412 .
- the detailed floor map may display geometric shapes, icons, photography, text, etc. to illustrate various internal floor features.
- the detailed floor map may be rendered at any time, such as when the vertical distance between one floor map and its neighboring floor map is greater than a threshold, for example.
- the extended 3D representation of the multi-story building is collapsed back to the low-detail representation of the same building. In this manner, the user can effectively switch between the outdoor map data inspection mode and the indoor map data inspection mode.
- FIG. 7 is a flow diagram of an example method 500 for displaying internal features of a multi-story building in response to gesture-based user input. More particularly, a software module may implement the method 500 to allow a user to browse through floor maps of a multi-story building. The method 500 can be invoked, for example, at blocks 408 - 410 of the method 400 discussed above.
- a 3D representation of a multi-story building is rendered similarly to the block 408 discussed with reference to FIG. 4 .
- a user gesture is detected.
- the gesture such as the pinch gesture, includes the pinching motion or spreading motion, for example, of a finger along a vertical axis of the 3D representation of the building.
- the motion may include a motion along a different axis, such as the horizontal axis.
- each vertical distance between each floor map and its neighboring floor map is expanded at block 506 . More particularly, each vertical distance between each floor map and its neighboring floor map is expanded in accordance to the detected pinch gesture. Alternatively, each vertical distance between each floor map and its neighboring floor map may also be compressed in accordance to the detected pinch gesture.
- the internal features of the activated floor are displayed, in general, when the vertical distance between two floor maps in greater than a certain threshold value.
- Modules may constitute either software modules (e.g., code stored on a machine-readable medium) or hardware modules.
- a hardware module is tangible unit capable of performing certain operations and may be configured or arranged in a certain manner.
- one or more computer systems e.g., a standalone, client or server computer system
- one or more hardware modules of a computer system e.g., a processor or a group of processors
- software e.g., an application or application portion
- a hardware module may include dedicated circuitry or logic that is permanently configured (e.g., as a special-purpose processor, such as a field programmable gate array (FPGA) or an application-specific integrated circuit (ASIC)) to perform certain operations.
- a hardware module may also include programmable logic or circuitry (e.g., as encompassed within a general-purpose processor or other programmable processor) that is temporarily configured by software to perform certain operations. It will be appreciated that the decision to implement a hardware module in dedicated and permanently configured circuitry or in temporarily configured circuitry (e.g., configured by software) may be driven by cost and time considerations.
- the term hardware should be understood to encompass a tangible entity, be that an entity that is physically constructed, permanently configured (e.g., hardwired), or temporarily configured (e.g., programmed) to operate in a certain manner or to perform certain operations described herein.
- hardware modules are temporarily configured (e.g., programmed)
- each of the hardware modules need not be configured or instantiated at any one instance in time.
- the hardware modules comprise a general-purpose processor configured using software
- the general-purpose processor may be configured as respective different hardware modules at different times.
- Software may accordingly configure a processor, for example, to constitute a particular hardware module at one instance of time and to constitute a different hardware module at a different instance of time.
- Hardware and software modules can provide information to, and receive information from, other hardware and/or software modules. Accordingly, the described hardware modules may be regarded as being communicatively coupled. Where multiple of such hardware or software modules exist contemporaneously, communications may be achieved through signal transmission (e.g., over appropriate circuits and buses) that connect the hardware or software modules. In embodiments in which multiple hardware modules or software are configured or instantiated at different times, communications between such hardware or software modules may be achieved, for example, through the storage and retrieval of information in memory structures to which the multiple hardware or software modules have access. For example, one hardware or software module may perform an operation and store the output of that operation in a memory device to which it is communicatively coupled. A further hardware or software module may then, at a later time, access the memory device to retrieve and process the stored output. Hardware and software modules may also initiate communications with input or output devices, and can operate on a resource (e.g., a collection of information).
- a resource e.g., a collection of information
- processors may be temporarily configured (e.g., by software) or permanently configured to perform the relevant operations. Whether temporarily or permanently configured, such processors may constitute processor-implemented modules that operate to perform one or more operations or functions.
- the modules referred to herein may, in some example embodiments, comprise processor-implemented modules.
- the methods or routines described herein may be at least partially processor-implemented. For example, at least some of the operations of a method may be performed by one or processors or processor-implemented hardware modules. The performance of certain of the operations may be distributed among the one or more processors, not only residing within a single machine, but deployed across a number of machines. In some example embodiments, the processor or processors may be located in a single location (e.g., within a home environment, an office environment or as a server farm), while in other embodiments the processors may be distributed across a number of locations.
- the one or more processors may also operate to support performance of the relevant operations in a “cloud computing” environment or as a SaaS. For example, at least some of the operations may be performed by a group of computers (as examples of machines including processors), these operations being accessible via a network (e.g., the Internet) and via one or more appropriate interfaces (e.g., application program interfaces (APIs).)
- a network e.g., the Internet
- APIs application program interfaces
- the performance of certain of the operations may be distributed among the one or more processors, not only residing within a single machine, but deployed across a number of machines.
- the one or more processors or processor-implemented modules may be located in a single geographic location (e.g., within a home environment, an office environment, or a server farm). In other example embodiments, the one or more processors or processor-implemented modules may be distributed across a number of geographic locations.
- an “algorithm” or a “routine” is a self-consistent sequence of operations or similar processing leading to a desired result.
- algorithms, routines and operations involve physical manipulation of physical quantities. Typically, but not necessarily, such quantities may take the form of electrical, magnetic, or optical signals capable of being stored, accessed, transferred, combined, compared, or otherwise manipulated by a machine.
- any reference to “one embodiment” or “an embodiment” means that a particular element, feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment.
- the appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment.
- Coupled and “connected” along with their derivatives.
- some embodiments may be described using the term “coupled” to indicate that two or more elements are in direct physical or electrical contact.
- the term “coupled,” however, may also mean that two or more elements are not in direct contact with each other, but yet still co-operate or interact with each other.
- the embodiments are not limited in this context.
- the terms “comprises,” “comprising,” “includes,” “including,” “has,” “having” or any other variation thereof, are intended to cover a non-exclusive inclusion.
- a process, method, article, or apparatus that comprises a list of elements is not necessarily limited to only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus.
- “or” refers to an inclusive or and not to an exclusive or. For example, a condition A or B is satisfied by any one of the following: A is true (or present) and B is false (or not present), A is false (or not present) and B is true (or present), and both A and B are true (or present).
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Geometry (AREA)
- Remote Sensing (AREA)
- Computer Graphics (AREA)
- Radar, Positioning & Navigation (AREA)
- Computer Hardware Design (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Description
- This application is a continuation of U.S. application Ser. No. 13/777,339, filed Feb. 26, 2013 and titled “Vertical Floor Expansion on an Interactive Map,” the entire disclosure of which is expressly incorporated herein by reference.
- The present disclosure relates to interactive digital maps and, more particularly, to providing an interface for interacting with representations of multi-story buildings displayed as part of digital maps on a computing device.
- The background description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventors, to the extent it is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure.
- Today, a wide variety of computing devices, including many portable devices, support software applications that display interactive digital maps (“mapping applications”). For example, mapping applications may run on laptop and tablet computers, mobile phones, car navigation systems, hand-held global positioning system (GPS) units, etc. Many of these devices are equipped with a touchscreen, a touchpad, or are otherwise configured to receive input that includes finger gestures. A user may, for example, may pan across a map by swiping her finger in the desired direction, zoom in on an area by pinching two fingers together, etc.
- In general, a mapping application can display various types of geographic data including topographical data, street data, urban transit information, and traffic data. Further, the geographic data may be schematic or based on photography, such as satellite imagery. Still further, a mapping application can display the information in a two-dimensional (2D) or three-dimensional (3D) format.
- A user sometimes may operate a mapping application to view a map of an urban area rendered two-dimensionally and schematically to better see street names, names of landmarks, etc. However, such maps may include multi-story buildings for which additional floor-specific information is available. For example, different information may be available for each of ten floors of a building, and it is difficult for a mapping application to display this information two-dimensionally without creating confusion and clutter. On the other hand, displaying information for a multi-story building as part of a 3D map can result in some of the information being obscured.
- One embodiment of the techniques discussed below is a method for providing an interactive display of multi-story buildings displayed on a map. The method is implemented in a computing device having a user interface that is configured to receive gesture-based input. The method includes displaying a digital map of a geographic area via the user interface and displaying, on the digital map, a three-dimensional (3D) representation of a multi-story building located in the geographic area, including displaying a plurality of stacked floor maps corresponding to a plurality of floors of the multi-story building. The method also includes detecting, via the user interface, a pinch gesture that is applied to the 3D representation of the multi-story building, and modifying a vertical distance between two of the plurality of stacked floor maps in accordance with the pinch gesture, including not modifying a zoom level at which the two of the plurality of stacked floor maps are displayed.
- Another embodiment of the techniques described in the present disclosure is a method in a computing device for providing a digital map of outdoor and indoor locations via a user interface. The method includes displaying a three-dimensional (3D) representation of a multi-story building located in a geographic area of the digital map while displaying a plurality of stacked floor maps corresponding to a plurality of floors of the multi-story building. The method also includes detecting a pinch gesture, via the user interface, that is applied to the 3D representation of the multi-story building. In detecting the pinch gesture, a first point of contact is detected that overlays a first one of the plurality of stacked floor maps corresponding to a first one of the plurality of floors and a second point of contact is detected that overlays a second one of the plurality of stacked floor maps corresponding to a second one of the plurality of floors, where at least one of the plurality of floors is not between the first one of the plurality of floors and the second one of the plurality of floors. Finally, the method includes modifying vertical distances between pairs of floor maps in a range between the first one of the plurality of stacked floor maps and the second one of the plurality of stacked floor maps while not modifying vertical distances between one or more pairs of floor maps outside the range.
- Still another embodiment of the techniques discussed below is a computer-readable storage medium, having stored thereon a set of instructions, for providing an interactive display of multi-story buildings displayed on a map. The instructions stored in the computer-readable storage medium may be executed on a processor in a computing device having a user interface that is configured to receive gesture-based input. The computer-readable storage medium includes instructions for displaying a digital map of a geographic area via the user interface and displaying, on the digital map, a three-dimensional (3D) representation of a multi-story building located in the geographic area, including displaying a plurality of stacked, individually selectable floor maps corresponding to a plurality of floors of the multi-story building. The computer-readable storage medium also includes instructions for detecting, via the user interface, a gesture that operates directly on the 3D representation of the multi-story building, and instructions for modifying a vertical distance between two of the plurality of stacked floor maps in accordance with gesture and in response to detecting the gesture, including not modifying a zoom level at which the two of the plurality of stacked floor maps are displayed.
-
FIG. 1 is a block diagram of an example system in which techniques for presenting internal features of a multi-floor building in a mapping application are implemented; -
FIG. 2 is an example screenshot that illustrates the display of a multi-story building on a map as several stacked floor maps; -
FIG. 3 is an example screenshot that illustrates the display of the vertical expansion of the floor maps of a multi-story building, with the internal features of each expanded floor map being displayed; -
FIG. 4 is an example screenshot that illustrates the display of a tall multi-story building on a map as many stacked floor maps; -
FIG. 5 is an example screenshot that illustrates the display of the vertical expansion of some of the floor maps of a tall multi-story building, with the internal features of each expanded floor map being displayed differently than unexpanded floors; -
FIG. 6 is a flow diagram of an example method for displaying a representation of a multi-story building on a map of a geographic region; and -
FIG. 7 is a flow diagram of an example method for displaying internal features of a multi-story building in response to gesture-based user input. - A mapping software module operating on a computing device displays an interactive digital map of a geographic region in which a multi-story building is located. The mapping software module provides an intuitive, space-efficient, and aesthetically pleasing user interface for inspecting the internal features of the multi-story building, such as floor maps that include floor contours as well as internal wall layout and names of individuals or organizations occupying different floors of the building.
- In one example implementation, the mapping software module displays a 2D schematic map that includes low-
detail 3D outlines of buildings, which may be displayed to scale with the map. A user selects the desired building by tapping on the corresponding 3D outline. The mapping software module then expands the low-level outline view of the selected multi-story building to display the internal features of the building as a 3D stack of floor maps or contours, each illustrated in a perspective view. The 3D stack in some cases is significantly larger than the low-detail 3D outline, so that the floor contours are clearly visible and easily viewable. The mapping software module allows the user to modify a vertical distance between every floor map of the building via a gesture that operates directly on the expanded representation of the multi-story building. In expanding the vertical distance between each floor map, for example, the mapping software module allows the user to view more internal features of each floor map because of the increased spacing between floor maps. For example, when the space above one particular floor of a multi-story office building is expanded to allow better visibility, the mapping module may display internal features of the floor map for the particular floor, such as businesses, stores, restrooms, escalators, etc. located on that particular floor. Once the user taps outside this expanded representation of the multi-story building, the mapping software module “collapses” the view of the multi-story building back to a 3D outline. - According to one example implementation on a computing device equipped with a touchpad or a touchscreen, the mapping software module allows the user to expand a vertical distance or spacing between each floor map of a representation of a 3D building using a pinch gesture. More specifically, after selecting a particular representation of a building, the user performs a pinch gesture to expand the vertical distance between each floor map in accordance with the pinch gesture. In detecting the rate of the pinch gesture, the mapping application may expand the vertical distance between every floor map at a rate identical to the detected pinch gesture rate. Likewise, the mapping application may expand the vertical distance between every floor map to the same extent as is relatively proportional to the detected pinch gesture. Moreover, the user may apply a pinch gesture to only a subset of floors within the representation, and in response, the mapping application may expand the vertical distance between the floor maps for only the floors in the subset. Thus, the user may desire to only expand the upper floors of a ten-story office building to view features of an internal floor map for those selected particular upper floors.
- These techniques are discussed in more detail below with reference to
FIGS. 1-7 . In particular, an example system in which a mapping software module may interactively present internal features of buildings is described with reference toFIG. 1 , example screenshots of the mapping software module are discussed with reference toFIGS. 2-5 , and example methods which the mapping software module may implement to provide a user interface for inspecting internal features of multi-story buildings are discussed with reference toFIGS. 6 and 7 . - Referring first to
FIG. 1 , asystem 10 includes acomputing device 12 coupled to amap server 14 via acommunication network 16. Thecomputing device 12 can be, for example, a laptop computer, a tablet computer, a smartphone, etc. In the embodiment illustrated inFIG. 1 , thecomputing device 12 includes a central processing unit (CPU) 20, a graphics processing unit (GPU) 22, a computer-readable memory 24, and auser interface 30 including atouch interface 32. In various implementations, thetouch interface 32 can include a touchpad over which the user moves his fingers while looking at a separately provided screen, a touchscreen where the user places his fingers directly over the image being manipulated or over a displayed control being activated (e.g. a displayed keyboard), etc. Thememory 24 is a computer-readable non-transitory storage device that may include both persistent (e.g., a hard disk) and non-persistent (e.g., RAM) memory components, stores instructions executable on theCPU 20 and/or theGPU 22 that make up amapping software module 40 andmap data 42 on which themapping module 40 operates. Themapping software module 40 includes an internal buildingfeature inspection module 44 that allows users to easily inspect internal features of multi-story buildings. - The
mapping software module 40 according to various implementations operates as a separately executable software application, a plugin that extends the functionality of another software application such as a web browser, an application programming interface (API) invokable by a software application, etc. The instructions that make up themapping software module 40 may be compiled and executable on theCPU 20 and/or theGPU 22 directly, or not compiled and interpreted by theCPU 20 at runtime. Further, the internal buildingfeature inspection module 44 may be provided as an integral part of themapping software module 40 or as a separately installable and downloadable component. - Depending on the implementation, the
map data 42 may be in a raster format, such as Portable Network Graphics (PNG), a vector graphics format (based on mathematical descriptions of geometric shapes), or any other suitable format. Themap data 42 in some cases is divided into map tiles, or portions of a map image having a certain fixed size, such as 256 by 256 pixels. In operation, themapping module 40 receives themap data 42 from themap server 14, renders a map image based on the map data, and causes the map image to be displayed via theuser interface 30. When themap data 42 is already rasterized, themapping module 40 renders the map image by selecting and combining the proper rasterized tiles. However, if themap data 42 is in a vector graphics format, themapping module 40 interprets the descriptions of various shapes to generate the corresponding raster images. Themapping module 40 also adjusts the displayed image and requests new map data, when necessary, in response to user input received via theuser interface 30. More specifically, the user may change the zoom level, pan across the map, select a different map type (e.g., traffic map, terrain map), and otherwise interact with the map. - In an example scenario, the
map server 14 receives a request that specifies the geographic area, the zoom level, and the map type. Themap server 14 in response retrieves outdoor map data and indoor map data from anoutdoor map database 50 and anindoor map database 52, respectively. Themap server 14 then provides the outdoor map data, the indoor map data, and appropriate indications of how certain portions of the outdoor map data and the indoor map data are linked, to thecomputing device 12 as part of themap data 42. - When provided in a vector graphics format, outdoor map data may specify individual map elements representing such outdoor physical entities as roads, parks, bodies of water, external walls of buildings, and other natural and artificial objects visible outside, e.g., from above or at a street level. In a raster format, map elements typically are embedded into the same image. Outdoor map also may include text-based data for displaying various labels such as street names or names of landmarks. In general, outdoor map data may be for generating 2D images or 3D images, and may include schematic data, photographic images, or both.
- Indoor map data may specify internal features of buildings such as the layout of internal walls or dividers, names of people, businesses, and organizations occupying different portions of a building, locations of elevators, escalators, restrooms, etc. For multi-story buildings, the indoor map data may specify internal features on a per-floor basis. Similar to outdoor map data, indoor map data may include both graphics content and non-graphics (e.g., text) content, and the graphics content may include schematic illustrations, photographic images, interactive and non-interactive icons, etc.
- Certain portions of the outdoor map data may be logically linked to respective portions of indoor map data. In particular, certain map elements displayed on a map may be linked to indoor data that typically is not displayed on the map without an additional user request. In other words, certain map elements may be associated with additional map data that is not part of the map image typically displayed for the specified geographic region, map type, and zoom level. Referring to the
map data 42, themap server 14 can provide outdoor map data as a collection of separate data structures, each containing a vector-based description of a map element, text-based label data, and metadata that further contains a unique identifier of another data structure storing the corresponding indoor map data. If the outdoor map data included in themap data 42 is rasterized, the unique identifier of a data structure storing indoor map data can be provided for a particular set of coordinates in the raster image. In either case, themapping software module 40 can display the outdoor map data and provide interactive controls for activating the display of relevant indoor map data. - As a more specific example, according to one implementation, the
map server 14 provides, as part of outdoor map data, external representations of buildings in the form of low-detail 3D outlines. Themapping software module 40 superimposes these 3D outlines over a 2D map. In another implementation, themap server 14 provides 3D mesh descriptions of buildings along with photographic imagery for texturing the corresponding 3D meshes. Using this type of map data, themapping software module 40 can generate realistic, highly detailed external representations of buildings. In yet another implementation, themap server 14 provides merely 2D outlines, or “footprints” of buildings on a 2D map. A user can tap or click on these 2D or 3D external representations of buildings to instruct themapping software module 40 to display the internal features of the buildings in an expanded format. - With continued reference to
FIG. 1 , themap server 14 may include aprocessor 60 and amemory 62 that stores arequest handler 64, made up of instructions executable on theprocessor 60. Thecomputing device 12 and themap server 14 may communicate in a client-server mode, where thecomputing device 12 sends requests for map data to themap server 14, and themap server 14 provides map data in response to these requests. More particularly, therequest handler 64 in operation receives requests for map data from thecomputing device 12, identifies and retrieves the requisite map data from theoutdoor map database 50 and/or theindoor map database 52, formats response messages that contain the map data, and causes the response messages to be transmitted to thecomputing device 12 via thenetwork 16, which may be a wide area network (WAN) such as the Internet, a local area network (LAN), or any other suitable type of a network. - For simplicity,
FIG. 1 illustrates themap server 14 as only one instance of a server device. However, themap server 14 according to some implementations includes in a group of one or more map server devices, each equipped with one or more processors and capable of operating independently of the other map server devices. Map server devices operating in such a group can process requests from thecomputing device 12 individually (e.g., based on availability), in a distributed manner where one operation associated with processing a request is performed on one map server device while another operation associated with processing the same request is performed on another map server device, or according to any other suitable technique. For the purposes of this discussion, the term “map server” may refer to an individual map server device or to a group of two or more map server devices. - Now referring to
FIGS. 2 and 3 , anexample screenshot 100 illustrates arepresentation 104 of a multi-story building overlaying a map of ageographic area 102. Indoor and outdoor map data are displayed within a same viewport in this example. Therepresentation 104 includes several stacked floor maps 111-113. When a user selects therepresentation 104 and performs a pinch gesture on the selected therepresentation 104, the floor maps 111-113 vertically expand in accordance to the pinch gesture to reveal internal features of each expanded floor map of the multi-story building, as anexample screenshot 200 illustrates inFIG. 3 . For the purposes of this discussion, the term “pinch gesture” may refer to any type of pinch gesture including a pinching motion, spreading motion, rotating motion, or any other suitable motion that a user may gesture to indicate the vertical expansion or compression of floor maps of the multi-story building. Moreover, the pinch gesture may be replaced with a control element, such as widget with a “expand” button and a “compress” button or any other suitable manner in expanding or compressing the vertical distance between floor maps. - In this example, the
map 102 illustrates several city blocks and includes various outdoor map elements such asroads 120,railroad tracks 122, and low-detail outlines ofbuildings map 102 also can include icons and text labels corresponding to outdoor map data, such as amap transit icon 130, for example. Although themap 102 is a 2D map on which most map elements are illustrated with a one-point projection, the expandedrepresentation 104 in general can overlay any other suitable type of a map such as a 3D map, for example. A mapping software (e.g., the internal buildingfeature inspection module 44 operating in themapping software module 40 ofFIG. 1 or a similar module) may provide functions for interacting with outdoor map data such as rotate, zoom, pan, etc., as well as functions for inspecting internal features of buildings when indoor map data is available. Thescreenshot 100 corresponds to the scenario in which the user selected the multi-story building by clicking or tapping on the corresponding low-detail outline, for example, and the mapping software in response generated the expandedrepresentation 104. - The low-
detail outline outline outline 124 illustrate internal features of the building. In the example ofFIG. 2 , the low-detail outlines 124 and 128 are 3D shapes displayed according to an isometric projection. In another implementation, however, these outlines can be illustrated with a two-point perspective. More generally, and as discussed above, buildings and other structures for which indoor map data is available generally can be illustrated using any suitable 2D or 3D shapes rendered with any desired level of detail. - According to some implementations, the mapping software provides an indication of whether indoor map data is available for an outdoor map element by changing the cursor, for example, or highlighting the map element upon detecting a hover event. In this manner, the user need not click or tap on a map element illustrating a building only to find out that internal map data for the building is unavailable.
- As best seen in
FIG. 2 , the floor maps 111-113 are laid out on different planes tilted relative to the plane of the screen to provide a 3D view of the internal features of the corresponding building. The floor maps 111-113 partially overlap to more efficiently utilize screen real estate. Similar to low-detail 3D outlines, the stack of floor maps 111-113 is displayed according to an isometric projection, although it is possible to display the stack of floor maps 111-113 with a two-point perspective, for example. The mapping module may initially display the floors maps 111-113 as contours free of internal floor features. In embodiments according to which floors maps 111-113 display some or all internal floor features as partially or fully opaque, so that some of the floor maps can partially occlude other floor maps and thereby reduce clutter on the screen. - When the user begins vertically expanding the floors of the multi-story building using a pinch gesture, the distance between each floor maps 111-113 gradually increases to reveal more internal features of each
lower floor map point 150, thedistance 131 between floor one 111 and floor two 112 and thedistance 132 between floor two 112 and floor three 113 begin vertically increasing at a rate relative to the pinch gesture. In this example and as illustrated inFIG. 3 , bothdistances distances - With reference to
FIG. 3 , the detailed floor maps 201-203 are generated using indoor map data and may illustrate, in addition to the contours of the floor,hallways 210 and rooms oroffices 212, although in general each detailed floor map 201-203 can depict any available indoor floor features. In the example ofFIG. 3 , thedetailed floor map 203 is fully visible so that no part of thedetailed floor map 202 is occluded by any of the floor maps of lower or higher floors. When the user further expands the floor maps 111-113 using the pinch gesture, both the floor maps 111, 112 of the first floor and second floor become fully visible. Alternatively, the mapping module may only display the internal features of a detailed floor map 202-203 when thedistance detailed floor map 202 is only visible when the distance betweenfloor map 112 of floor two and thefloor map 113 of floor three is greater than a certain threshold value. The threshold value may be preset for all floors, configured for specific floors, configured for to specific buildings or types of buildings, dynamically determined based on the zoom level, etc. The mapping application may alternatively reveal the detailed floor maps 201-203 to the user as each expanding floor map 111-113 becomes visible during the pinch gesture, or determine when to display the detailed floor maps 201-203 in any suitable manner. - Now referring to
FIGS. 4 and 5 , anexample screenshots 300 illustrates a representation of a ten-storymid-rise building 302 displayed on a map. When the user initiates a pinch gesture at a pinch gesture point (i.e., point of contact) 310 near floor eight 302 of the representation of thebuilding 302 and apinch gesture point 312 near floor five of the representation of the building, only the floor maps between the twopoints points example screenshot 350. As shown inFIG. 5 , only the distances between the floor maps 315-318 that are positioned between the two pinch gesture points 310, 312 vertical expand relative to the pinch gesture to reveal the features of the detailed floor maps 325-327. This allows for better use of screen real estate while allowing the user to quickly view the features of an internal map for a particular floor in a large building, such as a sixty-story office building. - Referring back to
FIGS. 2 and 3 , the user may tap on a point on themap 102 that is outside the expandedrepresentation 104 or move the viewport so that the expandedrepresentation 104 is no longer visible. In response, the mapping software may revert to the mode in which the user interacts with outdoor map data. In particular, the expandedrepresentation 104 may collapse to the low-detail representation 204. - Thus, according to some implementations, the internal building
feature inspection module 44 provides an interface for inspecting indoor map data free of additional controls (such as buttons for expanding the distance between floors or a floor picker with numbered buttons displayed over the map). In other implementations, however, the internal buildingfeature inspection module 44 additionally or alternatively provides controls overlaying the map. For example, the internal buildingfeature inspection module 44 may display a floor picker next to a multi-story building and support a pinch gesture for changing the distance between floors. - To further illustrate the techniques for providing an intuitive and efficient interface for inspecting indoor and outdoor map data, example methods that the internal building
feature inspection module 44 may implement are discussed next with reference toFIGS. 6 and 7 . More generally, these methods can be implemented in any suitable computing device and any suitable software application. For example, these methods can be implemented as sets of instructions stored on a computer-readable medium and executable on a processor. - The flow diagram of
FIG. 6 illustrates anexample method 400 for displaying a representation of a multi-story building on a map of a geographic region. Atblock 402, an interactive digital map of a geographic region is rendered. The rendered digital map may be rendered using outdoor map data and may display map elements such as roads, buildings, parks, bodies of water, etc. A low-detail representation of a multi-story building is rendered atblock 404. As discussed above, a low-detail representation is only one example of a suitable external representation of the building. In other embodiments, the external representation may be a detailed 3D representation textured with photographs of the building. - Next, at
block 406, a selection of the multi-story map on the digital map is detected. The selection may correspond to a tap event, for example, if a touch interface is used. An extended 3D representation of the multi-story building having multiple stacked floor maps is rendered atblock 408. Referring back toFIG. 2 , this representation may be similar to therepresentation 104. - At
block 410, a pinch gesture, as applied to the representation, is detected via the user interface, and a vertical distance between each floor map and its neighboring floor map is expanded in accordance with the pinch gesture. While the representation of the building is selected at theblock 406, the zoom level of the displayed representation of the building does not change during the detection of the pinch and the expansion of the vertical distance between floor maps. For example, the user performs a pinch gesture anywhere near the representation and, in response, the vertical distance between each floor map and its neighboring floor map expands while the user continues to perform the pinch gesture. Generally, the user performs the pinch gesture until each floor map in the representation may be viewed in sufficient detail. - A detailed floor map for each expanded floor map is rendered at
block 412. The detailed floor map may display geometric shapes, icons, photography, text, etc. to illustrate various internal floor features. The detailed floor map may be rendered at any time, such as when the vertical distance between one floor map and its neighboring floor map is greater than a threshold, for example. When a selection of a new point on the digital map is detected (block 414), it is determined whether the new point is outside the expanded representation of the multi-story building (block 416). If the new point is inside the expanded representation, the flow returns to block 410, where a new or the same floor is selected. Otherwise, the flow proceeds to block 418 to await the detection of another pinch gesture. - At
block 418, the extended 3D representation of the multi-story building is collapsed back to the low-detail representation of the same building. In this manner, the user can effectively switch between the outdoor map data inspection mode and the indoor map data inspection mode. -
FIG. 7 is a flow diagram of anexample method 500 for displaying internal features of a multi-story building in response to gesture-based user input. More particularly, a software module may implement themethod 500 to allow a user to browse through floor maps of a multi-story building. Themethod 500 can be invoked, for example, at blocks 408-410 of themethod 400 discussed above. - At
block 502, a 3D representation of a multi-story building is rendered similarly to theblock 408 discussed with reference toFIG. 4 . Next, atblock 504, a user gesture is detected. The gesture, such as the pinch gesture, includes the pinching motion or spreading motion, for example, of a finger along a vertical axis of the 3D representation of the building. In another implementation, however, the motion may include a motion along a different axis, such as the horizontal axis. - According to the
method 500, each vertical distance between each floor map and its neighboring floor map is expanded atblock 506. More particularly, each vertical distance between each floor map and its neighboring floor map is expanded in accordance to the detected pinch gesture. Alternatively, each vertical distance between each floor map and its neighboring floor map may also be compressed in accordance to the detected pinch gesture. The internal features of the activated floor are displayed, in general, when the vertical distance between two floor maps in greater than a certain threshold value. - Additional Considerations
- The following additional considerations apply to the foregoing discussion. Throughout this specification, plural instances may implement components, operations, or structures described as a single instance. Although individual operations of one or more methods are illustrated and described as separate operations, one or more of the individual operations may be performed concurrently, and nothing requires that the operations be performed in the order illustrated. Structures and functionality presented as separate components in example configurations may be implemented as a combined structure or component. Similarly, structures and functionality presented as a single component may be implemented as separate components. These and other variations, modifications, additions, and improvements fall within the scope of the subject matter of the present disclosure.
- Additionally, certain embodiments are described herein as including logic or a number of components or modules. Modules may constitute either software modules (e.g., code stored on a machine-readable medium) or hardware modules. A hardware module is tangible unit capable of performing certain operations and may be configured or arranged in a certain manner. In example embodiments, one or more computer systems (e.g., a standalone, client or server computer system) or one or more hardware modules of a computer system (e.g., a processor or a group of processors) may be configured by software (e.g., an application or application portion) as a hardware module that operates to perform certain operations as described herein.
- In some cases, a hardware module may include dedicated circuitry or logic that is permanently configured (e.g., as a special-purpose processor, such as a field programmable gate array (FPGA) or an application-specific integrated circuit (ASIC)) to perform certain operations. A hardware module may also include programmable logic or circuitry (e.g., as encompassed within a general-purpose processor or other programmable processor) that is temporarily configured by software to perform certain operations. It will be appreciated that the decision to implement a hardware module in dedicated and permanently configured circuitry or in temporarily configured circuitry (e.g., configured by software) may be driven by cost and time considerations.
- Accordingly, the term hardware should be understood to encompass a tangible entity, be that an entity that is physically constructed, permanently configured (e.g., hardwired), or temporarily configured (e.g., programmed) to operate in a certain manner or to perform certain operations described herein. Considering embodiments in which hardware modules are temporarily configured (e.g., programmed), each of the hardware modules need not be configured or instantiated at any one instance in time. For example, where the hardware modules comprise a general-purpose processor configured using software, the general-purpose processor may be configured as respective different hardware modules at different times. Software may accordingly configure a processor, for example, to constitute a particular hardware module at one instance of time and to constitute a different hardware module at a different instance of time.
- Hardware and software modules can provide information to, and receive information from, other hardware and/or software modules. Accordingly, the described hardware modules may be regarded as being communicatively coupled. Where multiple of such hardware or software modules exist contemporaneously, communications may be achieved through signal transmission (e.g., over appropriate circuits and buses) that connect the hardware or software modules. In embodiments in which multiple hardware modules or software are configured or instantiated at different times, communications between such hardware or software modules may be achieved, for example, through the storage and retrieval of information in memory structures to which the multiple hardware or software modules have access. For example, one hardware or software module may perform an operation and store the output of that operation in a memory device to which it is communicatively coupled. A further hardware or software module may then, at a later time, access the memory device to retrieve and process the stored output. Hardware and software modules may also initiate communications with input or output devices, and can operate on a resource (e.g., a collection of information).
- The various operations of example methods described herein may be performed, at least partially, by one or more processors that are temporarily configured (e.g., by software) or permanently configured to perform the relevant operations. Whether temporarily or permanently configured, such processors may constitute processor-implemented modules that operate to perform one or more operations or functions. The modules referred to herein may, in some example embodiments, comprise processor-implemented modules.
- Similarly, the methods or routines described herein may be at least partially processor-implemented. For example, at least some of the operations of a method may be performed by one or processors or processor-implemented hardware modules. The performance of certain of the operations may be distributed among the one or more processors, not only residing within a single machine, but deployed across a number of machines. In some example embodiments, the processor or processors may be located in a single location (e.g., within a home environment, an office environment or as a server farm), while in other embodiments the processors may be distributed across a number of locations.
- The one or more processors may also operate to support performance of the relevant operations in a “cloud computing” environment or as a SaaS. For example, at least some of the operations may be performed by a group of computers (as examples of machines including processors), these operations being accessible via a network (e.g., the Internet) and via one or more appropriate interfaces (e.g., application program interfaces (APIs).)
- The performance of certain of the operations may be distributed among the one or more processors, not only residing within a single machine, but deployed across a number of machines. In some example embodiments, the one or more processors or processor-implemented modules may be located in a single geographic location (e.g., within a home environment, an office environment, or a server farm). In other example embodiments, the one or more processors or processor-implemented modules may be distributed across a number of geographic locations.
- Some portions of this specification are presented in terms of algorithms or symbolic representations of operations on data stored as bits or binary digital signals within a machine memory (e.g., a computer memory). These algorithms or symbolic representations are examples of techniques used by those of ordinary skill in the data processing arts to convey the substance of their work to others skilled in the art. As used herein, an “algorithm” or a “routine” is a self-consistent sequence of operations or similar processing leading to a desired result. In this context, algorithms, routines and operations involve physical manipulation of physical quantities. Typically, but not necessarily, such quantities may take the form of electrical, magnetic, or optical signals capable of being stored, accessed, transferred, combined, compared, or otherwise manipulated by a machine. It is convenient at times, principally for reasons of common usage, to refer to such signals using words such as “data,” “content,” “bits,” “values,” “elements,” “symbols,” “characters,” “terms,” “numbers,” “numerals,” or the like. These words, however, are merely convenient labels and are to be associated with appropriate physical quantities.
- Unless specifically stated otherwise, discussions herein using words such as “processing,” “computing,” “calculating,” “determining,” “presenting,” “displaying,” or the like may refer to actions or processes of a machine (e.g., a computer) that manipulates or transforms data represented as physical (e.g., electronic, magnetic, or optical) quantities within one or more memories (e.g., volatile memory, non-volatile memory, or a combination thereof), registers, or other machine components that receive, store, transmit, or display information.
- As used herein any reference to “one embodiment” or “an embodiment” means that a particular element, feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment.
- Some embodiments may be described using the expression “coupled” and “connected” along with their derivatives. For example, some embodiments may be described using the term “coupled” to indicate that two or more elements are in direct physical or electrical contact. The term “coupled,” however, may also mean that two or more elements are not in direct contact with each other, but yet still co-operate or interact with each other. The embodiments are not limited in this context.
- As used herein, the terms “comprises,” “comprising,” “includes,” “including,” “has,” “having” or any other variation thereof, are intended to cover a non-exclusive inclusion. For example, a process, method, article, or apparatus that comprises a list of elements is not necessarily limited to only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Further, unless expressly stated to the contrary, “or” refers to an inclusive or and not to an exclusive or. For example, a condition A or B is satisfied by any one of the following: A is true (or present) and B is false (or not present), A is false (or not present) and B is true (or present), and both A and B are true (or present).
- In addition, use of the “a” or “an” are employed to describe elements and components of the embodiments herein. This is done merely for convenience and to give a general sense of the description. This description should be read to include one or at least one and the singular also includes the plural unless it is obvious that it is meant otherwise.
- Upon reading this disclosure, those of skill in the art will appreciate still additional alternative structural and functional designs for providing an interface for inspecting indoor and outdoor map data through the disclosed principles herein. Thus, while particular embodiments and applications have been illustrated and described, it is to be understood that the disclosed embodiments are not limited to the precise construction and components disclosed herein. Various modifications, changes and variations, which will be apparent to those skilled in the art, may be made in the arrangement, operation and details of the method and apparatus disclosed herein without departing from the spirit and scope defined in the appended claims.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/476,176 US20170205985A1 (en) | 2013-02-26 | 2017-03-31 | Expanding a 3d stack of floor maps at a rate proportional to a speed of a pinch gesture |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/777,339 US9652115B2 (en) | 2013-02-26 | 2013-02-26 | Vertical floor expansion on an interactive digital map |
US15/476,176 US20170205985A1 (en) | 2013-02-26 | 2017-03-31 | Expanding a 3d stack of floor maps at a rate proportional to a speed of a pinch gesture |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/777,339 Continuation US9652115B2 (en) | 2013-02-26 | 2013-02-26 | Vertical floor expansion on an interactive digital map |
Publications (1)
Publication Number | Publication Date |
---|---|
US20170205985A1 true US20170205985A1 (en) | 2017-07-20 |
Family
ID=51389608
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/777,339 Active 2034-03-08 US9652115B2 (en) | 2013-02-26 | 2013-02-26 | Vertical floor expansion on an interactive digital map |
US15/476,176 Abandoned US20170205985A1 (en) | 2013-02-26 | 2017-03-31 | Expanding a 3d stack of floor maps at a rate proportional to a speed of a pinch gesture |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/777,339 Active 2034-03-08 US9652115B2 (en) | 2013-02-26 | 2013-02-26 | Vertical floor expansion on an interactive digital map |
Country Status (1)
Country | Link |
---|---|
US (2) | US9652115B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9939278B2 (en) * | 2015-03-31 | 2018-04-10 | Naver Corporation | Method, system, and recording medium for connecting public transportation route service and map service |
CN108108386A (en) * | 2017-09-13 | 2018-06-01 | 赵永强 | A kind of electronic map and its identification method that sign language identification information is provided |
RU2742582C1 (en) * | 2020-06-25 | 2021-02-08 | Общество с ограниченной ответственностью "Ай Ти Ви групп" | System and method for displaying moving objects on local map |
WO2023242952A1 (en) * | 2022-06-14 | 2023-12-21 | 日本電信電話株式会社 | Multilevel map display device, multilevel map display method, and multilevel map display program |
Families Citing this family (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2859535A4 (en) * | 2012-06-06 | 2016-01-20 | Google Inc | System and method for providing content for a point of interest |
US20140310630A1 (en) * | 2013-04-12 | 2014-10-16 | Navteq B.V. | Method and apparatus for providing interactive three-dimensional indoor environments |
US10114537B2 (en) | 2013-06-10 | 2018-10-30 | Honeywell International Inc. | Frameworks, devices and methods configured for enabling touch/gesture controlled display for facility information and content with resolution dependent display and persistent content positioning |
US9804735B2 (en) | 2013-06-10 | 2017-10-31 | Honeywell International Inc. | Frameworks, devices and methods configured for enabling transition of content in a user interface between a map-bound layer and a map-unbound layer |
US9619124B2 (en) * | 2013-06-10 | 2017-04-11 | Honeywell International Inc. | Frameworks, devices and methods configured for enabling gesture-based controlled display for facility information and content in respect of a multi-level facility |
US20140365891A1 (en) * | 2013-06-10 | 2014-12-11 | Honeywell International Inc. | Frameworks, devices and methods configured for enabling touch/gesture controlled display for facility information and content with content and controls based on user attributes |
US10474240B2 (en) * | 2013-06-10 | 2019-11-12 | Honeywell International Inc. | Frameworks, devices and methods configured for enabling gesture-based interaction between a touch/gesture controlled display and other networked devices |
US9672006B2 (en) | 2013-06-10 | 2017-06-06 | Honeywell International Inc. | Frameworks, devices and methods configured for enabling a multi-modal user interface configured to display facility information |
JP6138641B2 (en) * | 2013-09-13 | 2017-05-31 | 株式会社Nttドコモ | MAP INFORMATION DISPLAY DEVICE, MAP INFORMATION DISPLAY METHOD, AND MAP INFORMATION DISPLAY PROGRAM |
TWI606386B (en) * | 2013-10-31 | 2017-11-21 | 富智康(香港)有限公司 | Page switching system, touch-sensitive device, and page switching method |
US20160320959A1 (en) * | 2014-01-15 | 2016-11-03 | Yulong Computer Telecommunication Scientific (Shenzhen) Co., Ltd. | Terminal Operation Apparatus and Terminal Operation Method |
US20150248211A1 (en) * | 2014-02-28 | 2015-09-03 | Nemetschek Vectorworks, Inc. | Method for instantaneous view-based display and selection of obscured elements of object models |
EP2985708A1 (en) * | 2014-08-15 | 2016-02-17 | Dassault Systèmes | Navigation through the hierarchical structure of a three-dimensional modeled assembly of parts |
WO2016037130A1 (en) * | 2014-09-04 | 2016-03-10 | Urban Engines, Inc. | Stack of maps |
US10108320B2 (en) * | 2014-10-08 | 2018-10-23 | Microsoft Technology Licensing, Llc | Multiple stage shy user interface |
US9488481B2 (en) * | 2014-10-14 | 2016-11-08 | General Electric Company | Map presentation for multi-floor buildings |
CN105575253B (en) * | 2014-10-16 | 2019-05-24 | 高德软件有限公司 | A kind of indoor map generation method and device |
US20160109952A1 (en) * | 2014-10-17 | 2016-04-21 | Top Victory Investments Ltd. | Method of Controlling Operating Interface of Display Device by User's Motion |
US9684447B2 (en) | 2014-11-03 | 2017-06-20 | Snap-On Incorporated | Methods and systems for displaying vehicle data parameters with drag-and-drop inputs |
US9880707B2 (en) | 2014-11-03 | 2018-01-30 | Snap-On Incorporated | Methods and systems for displaying vehicle data parameters with operating condition indicators |
US9933915B2 (en) | 2014-11-03 | 2018-04-03 | Snap-On Incorporated | Methods and systems for displaying vehicle data parameter graphs in different display orientations |
US10956003B2 (en) | 2014-11-03 | 2021-03-23 | Snap-On Incorporated | Methods and systems for displaying vehicle data parameters with pinch-and-expand inputs |
US9632656B2 (en) | 2014-11-03 | 2017-04-25 | Snap-On Incorporated | Methods and systems for displaying vehicle data parameters with a uniform cursor movement |
EP3037785B1 (en) * | 2014-12-17 | 2023-08-09 | Volkswagen Aktiengesellschaft | Information reproduction system, vehicle, method and computer program for providing a video and control signal |
EP3251347A4 (en) * | 2015-01-28 | 2018-09-19 | Matterport, Inc. | Classifying, separating and displaying individual stories of a three-dimensional model of a multi-story structure based on captured image data of the multi-story structure |
JP6507719B2 (en) * | 2015-03-03 | 2019-05-08 | 住友電気工業株式会社 | Screen information processing apparatus, screen information processing method and screen information processing program |
JP2017041121A (en) * | 2015-08-20 | 2017-02-23 | 沖電気工業株式会社 | Transmission terminal, transmission method, and communication system |
CN106155303A (en) * | 2015-09-14 | 2016-11-23 | 林波荣 | A kind of interactive building design platform based on hand motion capture |
KR20170035678A (en) * | 2015-09-23 | 2017-03-31 | 엘지전자 주식회사 | Mobile terminal and method of controlling the same |
US10294069B2 (en) | 2016-04-28 | 2019-05-21 | Thyssenkrupp Elevator Ag | Multimodal user interface for destination call request of elevator systems using route and car selection methods |
US10761706B2 (en) * | 2016-05-04 | 2020-09-01 | Honeywell International Inc. | Navigating an operational user interface for a building management system |
JP6729966B2 (en) * | 2016-05-20 | 2020-07-29 | アズビル株式会社 | Facility management device and facility management method |
US10466854B2 (en) * | 2016-06-10 | 2019-11-05 | Hexagon Technology Center Gmbh | Systems and methods for accessing visually obscured elements of a three-dimensional model |
EP3322149B1 (en) * | 2016-11-10 | 2023-09-13 | Tata Consultancy Services Limited | Customized map generation with real time messages and locations from concurrent users |
WO2018095875A1 (en) * | 2016-11-22 | 2018-05-31 | Koninklijke Philips N.V. | Dynamic dimension switch for 3d content based on viewport resizing |
US20180181576A1 (en) * | 2016-12-22 | 2018-06-28 | Mapbox, Inc. | Real-Time Transmittal Of Optimized Map Vector Tile Data |
FR3061598B1 (en) * | 2016-12-29 | 2020-10-16 | Thales Sa | PILOTAGE INFORMATION CALCULATION AND DISPLAY PROCESS INCLUDING A "RELIEF FACTOR" |
US10831332B2 (en) * | 2017-02-23 | 2020-11-10 | The Florida International University Board Of Trustees | User interface element for building interior previewing and navigation |
WO2018222511A2 (en) | 2017-06-02 | 2018-12-06 | Apple Inc. | Venues map application and system providing a venue directory |
DE102018207987A1 (en) * | 2018-05-22 | 2019-11-28 | Siemens Aktiengesellschaft | Method and system for displaying a 3D model |
EP3686700B1 (en) * | 2018-07-27 | 2020-12-16 | Eisenmann SE | Method for monitoring an automation system |
CN110163952A (en) * | 2018-11-15 | 2019-08-23 | 腾讯科技(北京)有限公司 | Methods of exhibiting, device, terminal and the storage medium of indoor figure |
US11249614B2 (en) | 2019-03-28 | 2022-02-15 | Snap Inc. | Generating personalized map interface with enhanced icons |
US11194460B2 (en) * | 2019-04-01 | 2021-12-07 | Honeywell International Inc. | Systems and methods for commissioning a security system |
CN110377215B (en) * | 2019-06-18 | 2022-08-26 | 深圳市思为软件技术有限公司 | Model display method and device and terminal equipment |
US11086491B1 (en) | 2020-01-21 | 2021-08-10 | Honeywell International Inc. | Systems and methods for displaying video streams on a display |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5974876A (en) * | 1990-05-02 | 1999-11-02 | Pioneer Electronic Corporation | Map information displaying apparatus, navigation apparatus and program storage device readable by the navigation apparatus |
US20080270886A1 (en) * | 2007-04-30 | 2008-10-30 | Google Inc. | Hiding Portions of Display Content |
US20090201261A1 (en) * | 2008-02-08 | 2009-08-13 | Synaptics Incorporated | Method and apparatus for extended adjustment based on relative positioning of multiple objects contemporaneously in a sensing region |
US20120159402A1 (en) * | 2010-12-17 | 2012-06-21 | Nokia Corporation | Method and apparatus for providing different user interface effects for different implementation characteristics of a touch event |
US20120242652A1 (en) * | 2011-03-24 | 2012-09-27 | Kim Jonghwan | Mobile terminal and control method thereof |
US20130036384A1 (en) * | 2011-08-01 | 2013-02-07 | Murata Yu | Information processing device, information processing method, and program |
US20130036382A1 (en) * | 2011-08-03 | 2013-02-07 | Ebay Inc. | Control of search results with multipoint pinch gestures |
US20130174087A1 (en) * | 2011-12-29 | 2013-07-04 | Billy Chen | Device, Method, and Graphical User Interface for Navigation of Information in a Map-Based Interface |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3547947B2 (en) * | 1997-08-11 | 2004-07-28 | アルパイン株式会社 | Location display method for navigation device |
US7760187B2 (en) | 2004-07-30 | 2010-07-20 | Apple Inc. | Visual expander |
US7469381B2 (en) | 2007-01-07 | 2008-12-23 | Apple Inc. | List scrolling and document translation, scaling, and rotation on a touch-screen display |
DE50014953D1 (en) * | 2000-08-24 | 2008-03-20 | Siemens Vdo Automotive Ag | Method and navigation device for querying destination information and navigating in a map view |
US6912462B2 (en) | 2000-08-31 | 2005-06-28 | Sony Corporation | Information processing apparatus, information processing method and program storage media |
US20020091793A1 (en) | 2000-10-23 | 2002-07-11 | Isaac Sagie | Method and system for tourist guiding, including both navigation and narration, utilizing mobile computing and communication devices |
US7075512B1 (en) | 2002-02-07 | 2006-07-11 | Palmsource, Inc. | Method and system for navigating a display screen for locating a desired item of information |
US7145457B2 (en) * | 2002-04-18 | 2006-12-05 | Computer Associates Think, Inc. | Integrated visualization of security information for an individual |
US7165215B2 (en) | 2003-06-24 | 2007-01-16 | Microsoft Corporation | Pane element |
US7716585B2 (en) * | 2003-08-28 | 2010-05-11 | Microsoft Corporation | Multi-dimensional graphical display of discovered wireless devices |
US20050248560A1 (en) * | 2004-05-10 | 2005-11-10 | Microsoft Corporation | Interactive exploded views from 2D images |
KR100608589B1 (en) * | 2004-07-24 | 2006-08-03 | 삼성전자주식회사 | Three dimensional motion graphic user interface and method and apparutus for providing this user interface |
US7954070B2 (en) | 2005-06-01 | 2011-05-31 | Honeywell International Inc. | Systems and methods for navigating graphical displays of buildings |
US7958456B2 (en) | 2005-12-23 | 2011-06-07 | Apple Inc. | Scrolling list with floating adjacent index symbols |
US7786975B2 (en) | 2005-12-23 | 2010-08-31 | Apple Inc. | Continuous scrolling list with acceleration |
US7567844B2 (en) | 2006-03-17 | 2009-07-28 | Honeywell International Inc. | Building management system |
US7956847B2 (en) | 2007-01-05 | 2011-06-07 | Apple Inc. | Gestures for controlling, manipulating, and editing of media files using touch sensitive devices |
US8233008B2 (en) * | 2007-01-19 | 2012-07-31 | Honeywell International Inc. | Method and system for distinctively displaying selected floor with sufficient details in a three-dimensional building model |
US8947421B2 (en) * | 2007-10-29 | 2015-02-03 | Interman Corporation | Method and server computer for generating map images for creating virtual spaces representing the real world |
KR20100050103A (en) | 2008-11-05 | 2010-05-13 | 엘지전자 주식회사 | Method of controlling 3 dimension individual object on map and mobile terminal using the same |
US8581698B2 (en) | 2008-11-25 | 2013-11-12 | Nokia Corporation | Method, apparatus and computer program product for facilitating location discovery |
US8957920B2 (en) * | 2010-06-25 | 2015-02-17 | Microsoft Corporation | Alternative semantics for zoom operations in a zoomable scene |
US9134714B2 (en) * | 2011-05-16 | 2015-09-15 | Osram Sylvania Inc. | Systems and methods for display of controls and related data within a structure |
US8176435B1 (en) * | 2011-09-08 | 2012-05-08 | Google Inc. | Pinch to adjust |
US20130145293A1 (en) | 2011-12-01 | 2013-06-06 | Avaya Inc. | Methods, apparatuses, and computer-readable media for providing availability metaphor(s) representing communications availability in an interactive map |
US9518836B2 (en) * | 2012-06-01 | 2016-12-13 | Here Global B.V. | Displaying elements |
US8464181B1 (en) * | 2012-07-03 | 2013-06-11 | Google Inc. | Floor selection on an interactive digital map |
US9152173B2 (en) * | 2012-10-09 | 2015-10-06 | Microsoft Technology Licensing, Llc | Transparent display device |
US20140195961A1 (en) * | 2013-01-07 | 2014-07-10 | Apple Inc. | Dynamic Index |
-
2013
- 2013-02-26 US US13/777,339 patent/US9652115B2/en active Active
-
2017
- 2017-03-31 US US15/476,176 patent/US20170205985A1/en not_active Abandoned
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5974876A (en) * | 1990-05-02 | 1999-11-02 | Pioneer Electronic Corporation | Map information displaying apparatus, navigation apparatus and program storage device readable by the navigation apparatus |
US20080270886A1 (en) * | 2007-04-30 | 2008-10-30 | Google Inc. | Hiding Portions of Display Content |
US20090201261A1 (en) * | 2008-02-08 | 2009-08-13 | Synaptics Incorporated | Method and apparatus for extended adjustment based on relative positioning of multiple objects contemporaneously in a sensing region |
US20120159402A1 (en) * | 2010-12-17 | 2012-06-21 | Nokia Corporation | Method and apparatus for providing different user interface effects for different implementation characteristics of a touch event |
US20120242652A1 (en) * | 2011-03-24 | 2012-09-27 | Kim Jonghwan | Mobile terminal and control method thereof |
US20130036384A1 (en) * | 2011-08-01 | 2013-02-07 | Murata Yu | Information processing device, information processing method, and program |
US20130036382A1 (en) * | 2011-08-03 | 2013-02-07 | Ebay Inc. | Control of search results with multipoint pinch gestures |
US20130174087A1 (en) * | 2011-12-29 | 2013-07-04 | Billy Chen | Device, Method, and Graphical User Interface for Navigation of Information in a Map-Based Interface |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9939278B2 (en) * | 2015-03-31 | 2018-04-10 | Naver Corporation | Method, system, and recording medium for connecting public transportation route service and map service |
CN108108386A (en) * | 2017-09-13 | 2018-06-01 | 赵永强 | A kind of electronic map and its identification method that sign language identification information is provided |
RU2742582C1 (en) * | 2020-06-25 | 2021-02-08 | Общество с ограниченной ответственностью "Ай Ти Ви групп" | System and method for displaying moving objects on local map |
WO2023242952A1 (en) * | 2022-06-14 | 2023-12-21 | 日本電信電話株式会社 | Multilevel map display device, multilevel map display method, and multilevel map display program |
Also Published As
Publication number | Publication date |
---|---|
US20140245232A1 (en) | 2014-08-28 |
US9652115B2 (en) | 2017-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170205985A1 (en) | Expanding a 3d stack of floor maps at a rate proportional to a speed of a pinch gesture | |
US9323420B2 (en) | Floor selection on an interactive digital map | |
US8928657B2 (en) | Progressive disclosure of indoor maps | |
US9417777B2 (en) | Enabling quick display transitions between indoor and outdoor map data | |
US10719212B2 (en) | Interface for navigation imagery | |
US9134886B2 (en) | Providing indoor facility information on a digital map | |
US9110573B2 (en) | Personalized viewports for interactive digital maps | |
US9684947B2 (en) | Indicating availability of indoor content on a digital map | |
AU2020202551A1 (en) | Method for representing points of interest in a view of a real environment on a mobile device and mobile device therefor | |
US9488481B2 (en) | Map presentation for multi-floor buildings | |
JP7032451B2 (en) | Dynamically changing the visual properties of indicators on digital maps | |
US8294710B2 (en) | Extensible map with pluggable modes | |
US8730264B1 (en) | Determining when image elements intersect | |
CN110083286B (en) | System and method for disambiguating item selections | |
US9245366B1 (en) | Label placement for complex geographic polygons | |
US20210366199A1 (en) | Method and device for providing augmented reality, and computer program | |
CN113892129A (en) | Creating virtual parallax for three-dimensional appearance | |
US10262631B1 (en) | Large scale highly detailed model review using augmented reality | |
JP5986816B2 (en) | MAP DISPLAY DEVICE, MAP DISPLAY METHOD, AND MAP DISPLAY PROGRAM |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
AS | Assignment |
Owner name: GOOGLE INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ZHOU, BAILIANG;REEL/FRAME:042994/0961 Effective date: 20130522 |
|
AS | Assignment |
Owner name: GOOGLE LLC, CALIFORNIA Free format text: CHANGE OF NAME;ASSIGNOR:GOOGLE INC.;REEL/FRAME:044129/0001 Effective date: 20170929 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: ADVISORY ACTION MAILED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |