Patentable/Patents/US-8497875
US-8497875

System, method, and computer program product for determining a translation vector

PublishedJuly 30, 2013
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

A method for determining a minimal translation vector (MTV) between a first object and a second object represented in a CAD system, and a CAD system and computer readable medium for performing a similar method. The method includes retrieving the first object and the second object and tessellating the first object and second object into respective facets. The method includes creating a bounding volume tree of facets corresponding to each of the first object and the second object. The method includes performing a greedy process on the bounding volume to produce an initial MTV, and performing a successive clipping process according to the bounding volume trees and the initial MTV, to produce a final MTV. The method includes storing the final MTV in a computer readable medium. The greedy process can be a 2-step process as described.

Patent Claims
21 claims

Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.

Claim 1

Original Legal Text

1. A method for determining a minimal translation vector (MTV) between a first object and a second object represented in a CAD system, comprising the steps of: retrieving, in the CAD system, the first object and the second object; tessellating the first object and second object, by the CAD system, into respective facets; creating a bounding volume tree of facets, by the CAD system, for each of the first object and the second object; performing a greedy process on the bounding volume trees, by the CAD system, to produce a initial MTV; and performing a successive clipping process according to the bounding volume trees and the initial MTV, by the CAD system, to produce a final MTV, wherein the successive clipping process does not process at least a portion of the bounding volume tree based on facets that are outside of a clipping window; storing the final MTV in a computer readable medium.

Plain English Translation

This technical summary describes a method for determining a minimal translation vector (MTV) between two objects in a computer-aided design (CAD) system. The method addresses the challenge of efficiently calculating the smallest translation required to move one object relative to another while avoiding collisions or overlaps. The process begins by retrieving the two objects from the CAD system and tessellating them into facets, which are small, flat surfaces that approximate the objects' geometry. Each object is then represented as a bounding volume tree, a hierarchical data structure that organizes the facets for efficient spatial queries. A greedy algorithm is applied to these trees to generate an initial MTV, which is an approximate solution for the minimal translation. To refine this result, a successive clipping process is performed, where the bounding volume trees and the initial MTV are used to identify and exclude facets that lie outside a defined clipping window, reducing computational effort. The final MTV is then stored in a computer-readable medium. This method improves efficiency by avoiding unnecessary processing of irrelevant facets, making it suitable for complex CAD environments where precise and rapid collision detection or alignment is required.

Claim 2

Original Legal Text

2. The method of claim 1 , wherein the greedy process is performed a first time, using a bounding box approximation up to tree level 3 , to determine an estimated MTV, and is performed a second time, using a bounding box approximation and clipping window technique up to tree level 10 , to determine an improved MTV that is output as the initial MTV.

Plain English Translation

The method of finding the minimal translation vector (MTV) where the "greedy" process is performed in two stages: First, a quick estimate of the MTV is calculated using bounding box approximations on the upper levels (up to level 3) of the bounding volume trees. Second, a more refined MTV is calculated using both bounding box approximations and a clipping window technique, examining deeper levels of the trees (up to level 10). This improved MTV from the second stage is then used as the initial MTV for the subsequent successive clipping process.

Claim 3

Original Legal Text

3. The method of claim 1 , wherein the greedy process includes the steps of: loading initial data; initializing a tree level and the clipping window; while the tree level is less than or equal to a maximum tree level, then performing a voxel process using the tree level and the clipping window to determine a revised MTV; and storing the revised MTV and outputting the revised MTV.

Plain English Translation

The method of finding the minimal translation vector (MTV) where the "greedy" process is implemented through these steps: (1) Loading initial data like minimum/maximum tree levels and clipping window settings; (2) Initializing the tree level and clipping window; (3) Iteratively performing a "voxel process" using the current tree level and clipping window to refine the MTV, repeating as long as the tree level is within the specified range; and (4) Storing and outputting the final refined MTV.

Claim 4

Original Legal Text

4. The method of claim 3 , wherein the initial data includes one or more of a minimum level, the maximum level, a clipping value, the bounding volume trees, and a current MTV.

Plain English Translation

The method of finding the minimal translation vector (MTV) where the "greedy" process initial data includes: a minimum tree level, a maximum tree level, a clipping value defining the size of the clipping window, the bounding volume trees of both objects, and the current estimated MTV. This data is used to configure and guide the voxel-based refinement process.

Claim 5

Original Legal Text

5. The method of claim 3 , wherein the voxel process includes the steps of: loading voxel initial data; building a voxel model of the clipping window; computing the Minkowski Difference between the bounding volume trees; if there is an intersection between the clipping window and the Minkowski Difference, then marking each voxel in the voxel model; determining at least one candidate voxel from the marked voxels and determining a candidate voxel with a smallest vector from an origin; outputting the smallest vector from the origin as the revised MTV.

Plain English Translation

The method of finding the minimal translation vector (MTV) where the "voxel process" involves these steps: (1) Loading voxel-specific initial data; (2) Creating a voxel-based representation of the clipping window; (3) Calculating the Minkowski Difference between the bounding volume trees of the two objects; (4) Identifying voxels within the clipping window that intersect the Minkowski Difference and marking them; (5) Selecting a candidate voxel from the marked voxels that represents the smallest translation vector from the origin; and (6) Outputting the vector corresponding to this voxel as the revised MTV.

Claim 6

Original Legal Text

6. The method of claim 5 , wherein the voxel initial data includes one or more of a tree level, a Use Box value, the clipping window, the bounding volume trees, and the current MTV.

Plain English Translation

The method of finding the minimal translation vector (MTV) where the "voxel process" initial data includes the tree level currently being processed, a flag indicating whether to use bounding boxes, the current clipping window, the bounding volume trees of both objects, and the current MTV estimate. This data guides the voxel-based intersection and optimization.

Claim 7

Original Legal Text

7. The method of claim 1 , wherein the successive clipping process includes the steps of: loading clipping process initial data; constructing the clipping window so that it contains a current MTV and is closer to an origin than a previous clipping window; performing a voxel process using the tree level and the clipping window to determine a revised MTV; if the revised MTV is not within the clipping window, then repeating to the constructing step; and storing the revised MTV and outputting the revised MTV as a final MTV.

Plain English Translation

The method of finding the minimal translation vector (MTV) where the "successive clipping" process involves these steps: (1) Loading initial data; (2) Constructing a clipping window that contains the current MTV estimate and is smaller (closer to the origin) than the previous clipping window; (3) Performing a "voxel process" using the current tree level and clipping window to determine a revised MTV; (4) Repeating from step 2 if the revised MTV falls outside the current clipping window; and (5) Storing and outputting the final MTV. This iterative clipping focuses the computation on progressively smaller regions of space.

Claim 8

Original Legal Text

8. A CAD system comprising: a processor and accessible memory, the CAD system particularly configured to perform a process for determining a minimal translation vector (MTV) between a first object and a second object represented in a CAD system, including the steps of: retrieving the first object and the second object; tessellating the first object and second object into respective facets; creating a bounding volume tree of facets for each of the first object and the second object; performing a greedy process on the bounding volume trees to produce a initial MTV; and performing a successive clipping process according to the bounding volume trees and the initial MTV to produce a final MTV, wherein the successive clipping process does not process at least a portion of the bounding volume tree based on facets that are outside of a clipping window; storing the final MTV in a computer readable medium.

Plain English Translation

A CAD system containing a processor and memory that is specifically configured to determine the smallest translation vector (MTV) needed to separate two objects. The system: (1) Loads the two objects; (2) Converts their surfaces into smaller facets; (3) Builds a hierarchical tree structure (bounding volume tree) for each object; (4) Uses a "greedy" algorithm on these trees to find an approximate MTV; (5) Refines this MTV using a "successive clipping" process, where parts of the trees are ignored if their facets are outside a clipping window; and (6) Stores the final MTV.

Claim 9

Original Legal Text

9. The CAD system of claim 8 , wherein CAD systems performs the greedy process a first time, using a bounding box approximation up to tree level 3 , to determine an estimated MTV, and a second time, using a bounding box approximation and clipping window technique up to tree level 10 , to determine an improved MTV that is output as the initial MTV.

Plain English Translation

The CAD system for finding the minimal translation vector (MTV) where the greedy process is performed in two stages: First, a quick estimate of the MTV is calculated using bounding box approximations on the upper levels (up to level 3) of the bounding volume trees. Second, a more refined MTV is calculated using both bounding box approximations and a clipping window technique, examining deeper levels of the trees (up to level 10). This improved MTV from the second stage is then used as the initial MTV for the subsequent successive clipping process.

Claim 10

Original Legal Text

10. The CAD system of claim 8 , wherein the greedy process performed by the CAD system includes the steps of: loading initial data; initializing a tree level and the clipping window; while the tree level is less than or equal to a maximum tree level, then performing a voxel process using the tree level and the clipping window to determine a revised MTV; and storing the revised MTV and outputting the revised MTV.

Plain English Translation

The CAD system for finding the minimal translation vector (MTV) where the "greedy" process is implemented through these steps: (1) Loading initial data like minimum/maximum tree levels and clipping window settings; (2) Initializing the tree level and clipping window; (3) Iteratively performing a "voxel process" using the current tree level and clipping window to refine the MTV, repeating as long as the tree level is within the specified range; and (4) Storing and outputting the final refined MTV.

Claim 11

Original Legal Text

11. The CAD system of claim 10 , wherein the initial data includes one or more of a minimum level, the maximum level, a clipping value, the bounding volume trees, and a current MTV.

Plain English Translation

The CAD system for finding the minimal translation vector (MTV) where the "greedy" process initial data includes: a minimum tree level, a maximum tree level, a clipping value defining the size of the clipping window, the bounding volume trees of both objects, and the current estimated MTV. This data is used to configure and guide the voxel-based refinement process.

Claim 12

Original Legal Text

12. The CAD system of claim 10 , wherein the voxel process performed by the CAD system includes the steps of: loading voxel initial data; building a voxel model of the clipping window; computing the Minkowski Difference between the bounding volume trees; if there is an intersection between the clipping window and the Minkowski Difference, then marking each voxel in the voxel model; determining at least one candidate voxel from the marked voxels and determining a candidate voxel with a smallest vector from an origin; outputting the smallest vector from the origin as the revised MTV.

Plain English Translation

The CAD system for finding the minimal translation vector (MTV) where the "voxel process" involves these steps: (1) Loading voxel-specific initial data; (2) Creating a voxel-based representation of the clipping window; (3) Calculating the Minkowski Difference between the bounding volume trees of the two objects; (4) Identifying voxels within the clipping window that intersect the Minkowski Difference and marking them; (5) Selecting a candidate voxel from the marked voxels that represents the smallest translation vector from the origin; and (6) Outputting the vector corresponding to this voxel as the revised MTV.

Claim 13

Original Legal Text

13. The CAD system of claim 12 , wherein the voxel initial data includes one or more of a tree level, a Use Box value, the clipping window, the bounding volume trees, and the current MTV.

Plain English Translation

The CAD system for finding the minimal translation vector (MTV) where the "voxel process" initial data includes the tree level currently being processed, a flag indicating whether to use bounding boxes, the current clipping window, the bounding volume trees of both objects, and the current MTV estimate. This data guides the voxel-based intersection and optimization.

Claim 14

Original Legal Text

14. The CAD system of claim 8 , wherein the successive clipping process performed by the CAD system includes the steps of: loading clipping process initial data; constructing the clipping window that contains a current MTV and is closer to an origin than a previous clipping window; performing a voxel process using the tree level and the clipping window to determine a revised MTV; if the revised MTV is not within the clipping window, then repeating to the constructing step; and storing the revised MTV and outputting the revised MTV as a final MTV.

Plain English Translation

The CAD system for finding the minimal translation vector (MTV) where the "successive clipping" process involves these steps: (1) Loading initial data; (2) Constructing a clipping window that contains the current MTV estimate and is smaller (closer to the origin) than the previous clipping window; (3) Performing a "voxel process" using the current tree level and clipping window to determine a revised MTV; (4) Repeating from step 2 if the revised MTV falls outside the current clipping window; and (5) Storing and outputting the final MTV. This iterative clipping focuses the computation on progressively smaller regions of space.

Claim 15

Original Legal Text

15. A non-transitory computer readable medium encoded with computer method instructions that, when executed, cause a CAD system to perform a process for determining a minimal translation vector (MTV) between a first object and a second object represented in the CAD system, including the steps of: retrieving the first object and the second object; tessellating the first object and second object into respective facets; creating a bounding volume tree of facets for each of the first object and the second object; performing a greedy process on the bounding volume trees to produce a initial MTV; and performing a successive clipping process according to the bounding volume trees and the initial MTV to produce a final MTV, wherein the successive clipping process does not process at least a portion of the bounding volume tree based on facets that are outside of a clipping window; storing the final MTV in a computer readable medium.

Plain English Translation

A computer-readable storage medium containing instructions that, when executed by a CAD system, cause it to determine the smallest translation vector (MTV) needed to separate two objects. The process involves: (1) Loading the two objects; (2) Converting their surfaces into smaller facets; (3) Building a hierarchical tree structure (bounding volume tree) for each object; (4) Using a "greedy" algorithm on these trees to find an approximate MTV; (5) Refining this MTV using a "successive clipping" process, where parts of the trees are ignored if their facets are outside a clipping window; and (6) Storing the final MTV.

Claim 16

Original Legal Text

16. The computer readable medium of claim 15 , wherein the greedy process is performed a first time, using a bounding box approximation up to tree level 3 , to determine an estimated MTV, and is performed a second time, using a bounding box approximation and clipping window technique up to tree level 10 , to determine an improved MTV that is output as the initial MTV.

Plain English Translation

The computer-readable storage medium for finding the minimal translation vector (MTV) where the greedy process is performed in two stages: First, a quick estimate of the MTV is calculated using bounding box approximations on the upper levels (up to level 3) of the bounding volume trees. Second, a more refined MTV is calculated using both bounding box approximations and a clipping window technique, examining deeper levels of the trees (up to level 10). This improved MTV from the second stage is then used as the initial MTV for the subsequent successive clipping process.

Claim 17

Original Legal Text

17. The computer readable medium of claim 15 , wherein the greedy process includes the steps of: loading initial data; initializing a tree level and the clipping window; while the tree level is less than or equal to a maximum tree level, then performing a voxel process using the tree level and the clipping window to determine a revised MTV; and storing the revised MTV and outputting the revised MTV.

Plain English Translation

The computer-readable storage medium for finding the minimal translation vector (MTV) where the "greedy" process is implemented through these steps: (1) Loading initial data like minimum/maximum tree levels and clipping window settings; (2) Initializing the tree level and clipping window; (3) Iteratively performing a "voxel process" using the current tree level and clipping window to refine the MTV, repeating as long as the tree level is within the specified range; and (4) Storing and outputting the final refined MTV.

Claim 18

Original Legal Text

18. The computer readable medium of claim 17 , wherein the initial data includes one or more of a minimum level, the maximum level, a clipping value, the bounding volume trees, and a current MTV.

Plain English Translation

The computer-readable storage medium for finding the minimal translation vector (MTV) where the "greedy" process initial data includes: a minimum tree level, a maximum tree level, a clipping value defining the size of the clipping window, the bounding volume trees of both objects, and the current estimated MTV. This data is used to configure and guide the voxel-based refinement process.

Claim 19

Original Legal Text

19. The computer readable medium of claim 17 , wherein the voxel process includes the steps of: loading voxel initial data; building a voxel model of the clipping window; computing the Minkowski Difference between the bounding volume trees; if there is an intersection between the clipping window and the Minkowski Difference, then marking each voxel in the voxel model; determining at least one candidate voxel from the marked voxels and determining a candidate voxel with a smallest vector from an origin; outputting the smallest vector from the origin as the revised MTV.

Plain English Translation

The computer-readable storage medium for finding the minimal translation vector (MTV) where the "voxel process" involves these steps: (1) Loading voxel-specific initial data; (2) Creating a voxel-based representation of the clipping window; (3) Calculating the Minkowski Difference between the bounding volume trees of the two objects; (4) Identifying voxels within the clipping window that intersect the Minkowski Difference and marking them; (5) Selecting a candidate voxel from the marked voxels that represents the smallest translation vector from the origin; and (6) Outputting the vector corresponding to this voxel as the revised MTV.

Claim 20

Original Legal Text

20. The computer readable medium of claim 19 , wherein the voxel initial data includes one or more of a tree level, a Use Box value, the clipping window, the bounding volume trees, and the current MTV.

Plain English Translation

The computer-readable storage medium for finding the minimal translation vector (MTV) where the "voxel process" initial data includes the tree level currently being processed, a flag indicating whether to use bounding boxes, the current clipping window, the bounding volume trees of both objects, and the current MTV estimate. This data guides the voxel-based intersection and optimization.

Claim 21

Original Legal Text

21. The computer readable medium of claim 15 , wherein the successive clipping process includes the steps of: loading clipping process initial data; constructing the clipping window so that it contains a current MTV and is closer to an origin than a previous clipping window; performing a voxel process using the tree level and the clipping window to determine a revised MTV; if the revised MTV is not within the clipping window, then repeating to the constructing step; and storing the revised MTV and outputting the revised MTV as a final MTV.

Plain English Translation

The computer-readable storage medium for finding the minimal translation vector (MTV) where the "successive clipping" process involves these steps: (1) Loading initial data; (2) Constructing a clipping window that contains the current MTV estimate and is smaller (closer to the origin) than the previous clipping window; (3) Performing a "voxel process" using the current tree level and clipping window to determine a revised MTV; (4) Repeating from step 2 if the revised MTV falls outside the current clipping window; and (5) Storing and outputting the final MTV. This iterative clipping focuses the computation on progressively smaller regions of space.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

August 27, 2009

Publication Date

July 30, 2013

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, FAQs, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “System, method, and computer program product for determining a translation vector” (US-8497875). https://patentable.app/patents/US-8497875

© 2026 Nomic Interactive Technology LLC. Machine-readable context available at /api/llm-context/US-8497875. See llms.txt for full attribution policy.