Client-Side Map Rendering Capability Test

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Mobile devices often struggle to render map data due to limitations in their graphics processing capabilities, leading to delays and reduced responsiveness in navigation applications, and existing methods for determining rendering capabilities are unreliable.

Innovation Solution

A system that tests client-side rendering capabilities by sending test data to a rendering module, which renders image data and compares it to expected results, allowing the map module to determine if it can accurately render images, thereby enabling client-side rendering of map images without relying on server resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If map rendering is performed on the server, then rendering accuracy is ensured, but network delays increase and responsiveness decreases

Engineering Contradiction:
Improverendering accuracyVSAvoidnetwork delay
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

A test module acts as an intermediary to verify client-side rendering capabilities before enabling client-side rendering. The test module sends test data to the rendering module, compares rendered output against expected results, and determines whether the client can accurately render maps. This intermediary testing mechanism enables the transition from server-side to client-side rendering by validating client capability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system enables client-side rendering by allowing the mobile device to independently render map images using its own GPU and CPU resources. Once capability is verified through testing, the client device serves itself by processing map data locally without requiring continuous server intervention for rendering operations.

Inventive Principle:
Principle #25Self-service

2Loss of substance

If client-side rendering is enabled, then network data transmission is reduced, but rendering capability reliability is uncertain

Engineering Contradiction:
Improvenetwork data transmissionVSAvoidrendering capability reliability
Core Design Contradiction:
Loss of substanceVSReliability

Solution Approach 1:

The system performs preliminary testing of rendering capabilities before enabling client-side rendering. The test module sends test data to the rendering module and compares the rendered output against expected results in advance. This preliminary verification ensures that only devices with sufficient rendering capability enable client-side rendering, guaranteeing reliability before actual use.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The test module provides feedback by comparing the rendered output from the rendering module against expected results. Based on this feedback, the system determines whether the client device has adequate rendering capability. This feedback mechanism ensures reliable selection of devices capable of client-side rendering while reducing network data transmission for capable devices.

Inventive Principle:
Principle #23Feedback

3Device complexity

If server performs all rendering, then processing burden is centralized, but server resources are overwhelmed

Engineering Contradiction:
Improveprocessing burden distributionVSAvoidserver processing capacity
Core Design Contradiction:
Device complexityVSPower

Solution Approach 1:

The system segments the rendering processing burden by dividing functionality between server and client. The server provides map data and expected test results, while the client device performs the actual rendering operations using its own GPU and CPU. This segmentation distributes the processing burden across millions of client devices rather than concentrating it on a few servers.

Inventive Principle:
Principle #1Segmentation

4Productivity

If reported capabilities are used, then device information is obtained quickly, but capability accuracy is insufficient

Engineering Contradiction:
Improvecapability determination speedVSAvoidcapability accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The system replaces reliance on self-reported capability data with an actual rendering test mechanism. Instead of trusting the navigation application's reported capabilities, the test module actively tests the rendering module by sending test data and comparing rendered output against expected results. This substitution of direct testing for reported information ensures accurate capability determination.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS11409774B2Testing client-side rendering capabilities
Publication Date: 2022.08.09 APPLE INC
  • US11409774B2 patent drawing
  • US11409774B2 patent drawing
  • US11409774B2 patent drawing

AI summary

In some implementations, a computing device can test the client-side rendering capabilities of a map module running on a computing device. For example, the map module can include a test module that sends test data to a rendering module of the browser. The rendering module can render the test data into a rendering context based on the test data. The test module can compare the pixel data in the rendering context to expected pixel data to determine whether the rendering module is capable of accurately rendering an image based on the test data. If the rendering module is capable of accurately rendering the rendering context based on the test data, the map module can be configured to perform client-side rendering of images. For example, the map module can be configured to perform client-side rendering of map data based on map data received from a map server.