Adaptively merging intersecting meshes

US9984501B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9984501-B2
Application numberUS-201313893198-A
CountryUS
Kind codeB2
Filing dateMay 13, 2013
Priority dateMay 14, 2012
Publication dateMay 29, 2018
Grant dateMay 29, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

One embodiment of the present invention sets forth a technique for merging intersecting meshes of primitives. The technique involves determining an intersection boundary that is defined by an intersection between a first mesh of primitives and a second mesh of primitives. The technique further involves determining that a first plurality of primitives included in the first mesh of primitives and a second plurality of primitives included in the second mesh of primitives are proximate to the intersection boundary. The technique further involves removing the first plurality of primitives to form a first mesh boundary associated with the first mesh and removing the second plurality of primitives to form a second mesh boundary associated with the second mesh. Finally, the technique involves connecting a first plurality of vertices associated with the first mesh boundary to a second plurality of vertices associated with the second mesh boundary to form a joined boundary.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method for merging intersecting meshes of primitives, the method comprising: determining an intersection boundary that is defined by an intersection between a first mesh of primitives and a second mesh of primitives; determining that a first plurality of primitives included in the first mesh of primitives are proximate to the intersection boundary; determining that a second plurality of primitives included in the second mesh of primitives are proximate to the intersection boundary; performing a first density refinement operation to reduce a first vertex density associated with the first plurality of primitives; performing a second density refinement operation to increase a second vertex density associated with the second plurality of primitives, wherein, after the first density refinement operation and the second density refinement operation are performed, the first vertex density and the second vertex density are substantially equal; removing the first plurality of primitives to form a first mesh boundary associated with the first mesh of primitives; removing the second plurality of primitives to form a second mesh boundary associated with the second mesh of primitives; and connecting a first plurality of vertices associated with the first mesh boundary to a second plurality of vertices associated with the second mesh boundary to form a joined boundary. 2. The method of claim 1 , further comprising: performing a first mesh refinement pass on the first plurality of primitives to produce the first vertex density; and performing a second mesh refinement pass on the second plurality of primitives to produce the second vertex density. 3. The method of claim 1 , wherein connecting the first plurality of vertices to the second plurality of vertices comprises: identifying a first vertex included in the first plurality of vertices and having a first position; identifying a second vertex that is proximate to the first vertex and included in the second plurality of vertices, wherein the second vertex has a second position; multiplying a distance between the first position and the second position by a zippering strength factor to determine a third position, wherein the third position is located in a region between the first position and the second position; and moving the first vertex to the third position. 4. The method of claim 3 , further comprising: projecting the third position onto at least one of a first initial surface of the first mesh of primitives and a second initial surface of the second mesh of primitives to determine a fourth position; and moving the first vertex to the fourth position. 5. The method of claim 3 , wherein determining the third position comprises multiplying a distance between the first position and the second position by the zippering strength factor. 6. The method of claim 1 , further comprising combining a first vertex included in the first plurality of vertices and a second vertex included in the second plurality of vertices to generate a welded vertex. 7. The method of claim 1 , wherein determining the intersection boundary comprises: determining a first portion of the first mesh of primitives that is disposed within an interior volume of the second mesh of primitives; and determining a second portion of the second mesh of primitives that is disposed within an interior volume of the first mesh of primitives. 8. The method of claim 1 , further comprising: removing a third plurality of primitives included in the first mesh, wherein the third plurality of primitives is disposed within an interior volume of the second mesh of primitives; and removing a fourth plurality of primitives included in the second mesh, wherein the fourth plurality of primitives is disposed within an interior volume of the first mesh of primitives. 9. The method of claim 1 , wherein a first graphic object comprises the first mesh of primitives and a second graphic object comprises the second mesh of primitives. 10. A non-transitory computer-readable storage medium including instructions that, when executed by a processing unit, cause the processing unit to merge intersecting meshes of primitives by performing the steps of: determining an intersection boundary that is defined by an intersection between a first mesh of primitives and a second mesh of primitives; determining that a first plurality of primitives included in the first mesh of primitives are proximate to the intersection boundary; determining that a second plurality of primitives included in the second mesh of primitives are proximate to the intersection boundary; performing a first density refinement operation to reduce a first vertex density associated with the first plurality of primitives; performing a second density refinement operation to increase a second vertex density associated with the second plurality of primitives, wherein, after the first density refinement operation and the second density refinement operation are performed, the first vertex density and the second vertex density are substantially equal; removing the first plurality of primitives to form a first mesh boundary associated with the first mesh of primitives; removing the second plurality of primitives to form a second mesh boundary associated with the second mesh of primitives; and connecting a first plurality of vertices associated with the first mesh boundary to a second plurality of vertices associated with the second mesh boundary to form a joined boundary. 11. The non-transitory computer-readable storage medium of claim 10 , further comprising: performing a first mesh refinement pass on the first plurality of primitives to produce the first vertex density; and performing a second mesh refinement pass on the second plurality of primitives to produce the second vertex density. 12. The non-transitory computer-readable storage medium of claim 10 , wherein connecting the first plurality of vertices to the second plurality of vertices comprises: identifying a first vertex included in the first plurality of vertices and having a first position; identifying a second vertex that is proximate to the first vertex and included in the second plurality of vertices, wherein the second vertex has a second position; multiplying a distance between the first position and the second position by a zippering strength factor to determine a third position, wherein the third position is located in a region between the first position and the second position; and moving the first vertex to the third position. 13. The non-transitory computer-readable storage medium of claim 12 , further comprising: projecting the third position onto at least one of a first initial surface of the first mesh of primitives and a second initial surface of the second mesh of primitives to determine a fourth position; and moving the first vertex to the fourth position. 14. The non-transitory computer-readable storage medium of claim 12 , wherein determining the third position comprises multiplying a distance between the first position and the second position by the zippering strength factor. 15. The non-transitory computer-readable storage medium of claim 10 , further comprising combining a first vertex included in the first plurality of vertices and a second vertex included in the second plurality of vertices to generate a welded vertex. 16. The non-transitory computer-readable storage medium of claim 10 , wherein determining the intersection boundary comprises: determining a first portion of the first mesh of pri

Assignees

Inventors

Classifications

  • G06T17/20Primary

    Finite element generation, e.g. wire-frame surface description, {tesselation} · CPC title

  • Editing of three-dimensional [3D] images, e.g. changing shapes or colours, aligning objects or positioning parts · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9984501B2 cover?
One embodiment of the present invention sets forth a technique for merging intersecting meshes of primitives. The technique involves determining an intersection boundary that is defined by an intersection between a first mesh of primitives and a second mesh of primitives. The technique further involves determining that a first plurality of primitives included in the first mesh of primitives and…
Who is the assignee on this patent?
Autodesk Inc
What technology area does this patent fall under?
Primary CPC classification G06T17/20. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 29 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).