IP Library Granted Patent US 9,159,170
Granted Patent B2
US 9,159,170 · App. 13/777,916 · Granted Oct 13, 2015

System and method for optimal geometry configuration based on parts exclusion

Inventors: Chun Yue Gordon Wong (Coquitlam, CA); Jacqueline Li (Delta, CA); Jeffrey York Brace (Coquitlam, CA); Graham Thurstan Smith (Saskatoon, CA)
Assignee: NGRAIN (Canada) Corporation
G06T19/20G06F17/5095G06T2219/2008G06T2219/2021
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,159,170
App. No.
13/777,916
Granted
Oct 13, 2015
Kind
B2
Abstract

System and method are provided for building and rendering a 3D graphics dataset of an object that consists of multiple parts, wherein the 3D graphics dataset includes a 3D geometry dataset and a configuration file, and in the configuration file each of the multiple parts is identified as used (e.g., visible, actionable) or unused (e.g., not visible, not actionable) in each of multiple display features (e.g., in display states, such as in animations, or in display relationships). The method determines which of the multiple parts are unused in each of the multiple display features and identifies those parts, which are unused in all of the display features, as excluded parts, and saves a list of the identified excluded parts in association with the object. In rendering the object on a display, the method does not load data directed to the excluded parts, to thereby speed up the loading/rendering process.

Claims (34)

1. A computer-implemented system comprising a processor, a memory, and a display, wherein:

the memory is configured to be loaded with 3D graphics data of an object that consists of multiple parts, wherein the 3D graphics data includes a 3D geometry dataset and a configuration file, and in the configuration file each of the multiple parts is user-specified as used or unused in each of multiple display features; and

the processor, when loaded with computer-executable instructions, executes an algorithm including:

(i) determining which of the multiple parts are user-specified as unused in each of the multiple display features;

(ii) determining those parts that are user-specified as unused in all of the multiple display features as excluded parts, while determining those parts that are user-specified as used in at least one of the multiple display features as non-excluded parts;

(iii) saving a list of the excluded parts in association with the object; and

(iv) in rendering the object on the display, loading only 3D geometry data of the non-excluded parts independently of animation key frames that depict the non-excluded parts, while not loading 3D geometry data of the excluded parts, wherein not loading the 3D geometry data of the excluded parts is different from not loading animation key frames in which the excluded parts are not visible.

2. The system according to claim 1 , wherein the configuration file defines processing of the 3D geometry dataset, and (iii) includes saving the list of the excluded parts in the configuration file.

3. The system according to claim 1 , wherein a part user-specified as used in a display feature is a part user-specified as visible in the display feature, while a part user-specified as unused in a display feature is a part user-specified as not visible in the display feature.

4. The system according to claim 1 , wherein a part user-specified as used in a display feature is a part that is user-specified as actionable in the display feature, while a part user-specified as unused in a display feature is a part user-specified as not actionable in the display feature.

5. The system according to claim 1 , wherein each of the multiple display features defines a display state in which the object is rendered on the display, or a display relationship according to which the multiple parts of the object are rendered on the display.

6. The system according to claim 5 , wherein the multiple display features includes an animation feature, which is a display feature defining a display state, and a constraint feature, which is a display feature defining a display relationship.

7. The system according to claim 1 , wherein the algorithm further includes, prior to (i), providing a UI indication on the display that (i)-(iv) will be executed.

8. The system according to claim 1 , wherein (iv) further includes not loading metadata of the excluded parts.

9. A computer-implemented method comprising:

(i) loading, to a memory device, 3D graphics data of an object that consists of multiple parts, wherein the 3D graphics data includes a 3D geometry dataset and a configuration file, and in the configuration file each of the multiple parts is user-specified as used or unused in each of multiple display features;

(ii) determining which of the multiple parts are user-specified as unused in each of the multiple display features;

(iii) determining those parts that are user-specified as unused in all of the multiple display features as excluded parts, while determining those parts that are user-specified as used in at least one of the multiple display features as non-excluded parts;

(iv) saving a list of the excluded parts in association with the object; and

(v) in rendering the object on a display, loading only 3D geometry data of the non-excluded parts independently of animation key frames that depict the non-excluded parts, while not loading 3D geometry data of the excluded parts, wherein not loading the 3D geometry data of the excluded parts is different from not loading animation key frames in which the excluded parts are not visible.

10. The method according to claim 9 , wherein (iv) includes saving the list of the excluded parts in the configuration file.

11. The method according to claim 9 , wherein a part user-specified as used in a display feature is a part that is user-specified as visible or actionable in the display feature, while a part user-specified as unused in a display feature is a part user-specified as not visible or not actionable in the display feature.

12. The method according to claim 9 , wherein each of the multiple display features defines a display state in which the object is rendered on the display, or a display relationship according to which the multiple parts of the object are rendered on the display.

13. The method according to claim 9 , wherein (v) includes not loading metadata of the excluded parts.

14. A non-transitory computer-readable storage medium whose contents configure a computing system to perform a method, the method comprising:

(i) loading, to a memory device, 3D graphics data of first and second objects that share at least one common part, wherein the first object includes at least one first part unique to the first object and the second object includes at least one second part unique to the second object, wherein the 3D graphics data includes a 3D geometry dataset for the first and second objects;

(ii) generating a first list of excluded parts for the first object, by determining which parts are user-specified as unused in each of multiple display features for the first object and by identifying those parts that are user-specified as unused in all of the multiple display features for the first object as first excluded parts;

(iii) generating a second list of excluded parts for the second object, by determining which parts are user-specified as unused in each of multiple display features for the second object and by identifying those parts that are user-specified as unused in all of the multiple display features for the second object as second excluded parts;

(iv) in rendering the first object on a display, loading only 3D geometry data of non-excluded parts of the first object independently of animation key frames that depict the non-excluded parts of the first object, while not loading 3D geometry data of the first excluded parts, wherein not loading the 3D geometry data of the first excluded parts is different from not loading animation key frames in which the first excluded parts are not visible; and

(v) in rendering the second object on the display, loading only 3D geometry data of non-excluded parts of the second object independently of animation key frames that depict the non-excluded parts of the second object, while not loading 3D geometry data of the second excluded parts, wherein not loading the 3D geometry data of the second excluded parts is different from not loading animation key frames in which the second excluded parts are not visible.

15. The medium according to claim 14 , wherein (iv) includes loading only metadata of the non-excluded parts of the first object while not loading metadata of the first excluded parts, and (v) includes loading only metadata of the non-excluded parts of the second object while not loading metadata of the second excluded parts.

16. The medium according to claim 14 , wherein (ii) includes saving the list of the first excluded parts as part of, or in connection with, a first configuration file for the first object, and (iii) includes saving the list of the second excluded parts as part of, or in connection with, a second configuration file for the second object.

17. The medium according to claim 14 , wherein the first excluded parts include those parts unique to the first object but are user-specified as unused in all of the multiple display features for the first object and those parts unique to the second object, while the second excluded parts include those parts unique to the second object but are user-specified as unused in all of the multiple display features for the second object and those parts unique to the first object.

18. The medium according to claim 14 , wherein a part user-specified as used in a display feature is a part that is user-specified as visible or actionable in the display feature, while a part user-specified as unused in a display feature is a part user-specified as not visible or not actionable in the display feature.

Assignments (5)
SECURITY INTEREST Recorded Feb 21, 2024
From: NGRAIN (CANADA) CORPORATION
To: ATB FINANCIAL
Reel/Frame 066516/0722 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 7, 2023
From: NGRAIN (CANADA) CORPORATION
To: MCLOUD TECHNOLOGIES (USA) INC.
Reel/Frame 064513/0803 →
RELEASE OF SECURITY INTEREST Recorded Aug 1, 2019
From: FLOW CAPITAL CORP.
To: NGRAIN (CANADA) CORPORATION; FIELD DIAGNOSTIC SERVICES, INC.
Reel/Frame 049937/0367 →
SECURITY INTEREST Recorded Feb 7, 2019
From: NGRAIN (CANADA) CORPORATION
To: FLOW CAPITAL CORP.
Reel/Frame 048285/0904 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 28, 2013
From: WONG, CHUN YUE GORDON; LI, JACQUELINE; BRACE, JEFFREY YORK; SMITH, GRAHAM THURSTAN
To: NGRAIN (CANADA) CORPORATION
Reel/Frame 030110/0563 →
Continuity (1)
Related Publication 20140240315A1 · Aug 28, 2014