Map Data Prefetching for Smooth Viewport Animation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing digital map applications on touchscreen devices face latency issues during viewport animation, as they struggle to smoothly transition between geographic areas due to the rapid movement of maps, leading to inefficient data retrieval and display.

Innovation Solution

A digital mapping module that predicts the viewport's trajectory based on user gestures and fetches map data in advance from local or remote storage, varying the level of detail dynamically along the trajectory to minimize latency and ensure seamless animation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If map data is fetched in real-time during viewport animation, then data accuracy is maintained, but latency increases and animation smoothness deteriorates

Engineering Contradiction:
Improvedata accuracyVSAvoidlatency
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary actions by detecting user gestures (fling, drag) and calculating the anticipated viewport trajectory before the animation completes. Map data for future positions along this trajectory is fetched in advance from storage or network, ensuring data readiness when the viewport reaches those positions, thus eliminating latency without compromising accuracy

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adjusts the level of detail (LOD) for map data based on the viewport's position and speed along the trajectory. High-detail data is fetched for the final destination position, while intermediate positions receive progressively lower detail levels. This dynamic adaptation reduces data transmission and processing time, maintaining visual quality while minimizing latency

Inventive Principle:
Principle #15Dynamics

2Measurement precision

If detailed map data is fetched for all positions along the trajectory, then data quality is maintained, but data transmission time and processing load increase

Engineering Contradiction:
Improvedata qualityVSAvoiddata transmission time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system applies local quality by differentiating the level of detail required for different spatial positions along the viewport trajectory. The final destination position receives full-detail map data, while intermediate positions receive reduced-detail data proportional to their importance and the viewport's speed at those locations. This spatial differentiation of data quality maintains visual accuracy where needed while reducing overall data transmission time

Inventive Principle:
Principle #3Local quality

3Measurement precision

If high-level detail map data is fetched for all trajectory positions, then visual accuracy is maintained, but memory usage and processing power increase

Engineering Contradiction:
Improvevisual accuracyVSAvoidprocessing power
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The system implements local quality by assigning different levels of map data detail to different positions along the trajectory based on local requirements. High-detail data is loaded only for the final destination position where the viewport will pause and allow user interaction, while intermediate positions use lower-detail representations. This localized quality adjustment maintains visual accuracy at critical points while significantly reducing memory consumption and processing power requirements

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP2804096B1Efficient fetching of a map data during animation
Publication Date: 2018.03.21 GOOGLE LLC
  • EP2804096B1 patent drawingFigure 1
  • EP2804096B1 patent drawingFigure 2
  • EP2804096B1 patent drawingFigure 3A

AI summary

A first digital map is displayed in a viewport at an initial position. When a user gesture that communicates motion to the viewport is detected, a trajectory of the viewport from the initial position to a target position is determined based on kinematic quantities of the communicated motion. Map data for displaying a second digital map in the viewport at the target position is retrieved from a first memory, prior to the viewport reaching the target position. The retrieved map data is stored in a second memory having a higher speed of access than the first memory. The second memory is retrieved for display via the user interface when the viewport is at the target position.