IP Library Granted Patent US 6,850,638
Granted Patent B1
US 6,850,638 · App. 09/515,517 · Granted Feb 1, 2005

System for naming faces and vertices in an adaptive hierarchical subdivision surface

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 6,850,638
App. No.
09/515,517
Granted
Feb 1, 2005
Kind
B1
Abstract

The present invention assigns a unique name or identifier to a face of a subdivision surface that can be stored and manipulated as a fixed length integer. The face name representation includes a base face index field identifying the base mesh face from which the face being named is derived, a vertex index field identifying the base mesh vertex from which the face is derived, a level field identifying the level of the subdivision face and a path field that identifies the path to the face. The vertices and edges of each face can also be assigned unique names.

Claims (28)

1. A system, comprising:

an input source providing a polygonal base mesh having a plurality of arbitrarily sided base faces; and

a computer analyzing the mesh and determining a linear identifier for any existing base face and a newly created face within an existing base face, the identifier comprising a base face identifier, a vertex index, a level and a path to the face, said computer determines said path by traversing faces within said base face mesh in a predetermined order relative to the vertex index such that the identifier of the newly created face is independent of the order of creation of the faces.

2. A system as recited in claim 1 wherein the identifier is stored as a fixed bit integer.

3. A system as recited in claim 2 , wherein said computer disregards leading zeros in the path responsive to the level when accessing the face using the identifier.

4. A system as recited in claim 1 , wherein said computer determines a unique vertex name for a vertex of the face.

5. A storage as recited in claim 1 , wherein said computer determines a unique edge name for an edge of the face.

6. A system as recited in claim 1 , wherein the vertex index identifies a level one subdivision vertex of a zero level subdivision base mesh face corresponding to the face.

7. A system for providing unique names for faces and vertices in an hierarchical subdivision surface from which each face of a surface, each vertex of a surface and each edge of a surface can be unambiguously identified, said system comprising:

an input source providing a polygonal base mesh having a new face created by a new vertex; and

a computer analyzing the mesh, determining an identifier for the new face, determining a unique vertex name for the new vertex of the new face, determining a unique edge name for an edge of the new face, with the new face identifier comprising a base face identifier identifying the face surrounding the new vertex, a vertex index and a path to the face, with the vertex index identifying a level one subdivision vertex of a zero level subdivision base mesh face corresponding to the face, with the identifier comprising a level indicator indicating a subdivision level of the face and with the identifier stored as a fixed bit integer.

8. A method of determining a unique identifier for a new face of a mesh in a subdivision surface created by a new vertex, comprising:

determining a base mesh face surrounding the new vertex;

determining a vertex index of the new face;

determining a path to the new face by traversing faces within the mesh in a predetermined order relative to the vertex index;

determining a level of the new face; and

combining the base mesh face, the vertex index, the level and the path as the unique identifier such that the identifier of the newly created face is independent of the order of creation of the faces.

9. A method of accessing a new face of a mesh in a subdivision surface created by a new vertex, comprising:

obtaining a face identifier including a base face index of a face surrounding the new vertex, a vertex index, a level and a path to the face; and

traversing the path to the face using the base face index, the level and the vertex index by traversing faces within the mesh in a predetermined order relative to the vertex index such that the identifier of the new face is independent of the order of creation of other faces.

10. A method as recited in claim 9 , wherein the traversing includes a number of repeated steps which number is responsive to the level.

11. A computer readable storage having a face name data structure providing a face identifier for a subdivision surface face and controlling access for the face by a computer using the face name data structure relative to a vertex with the face identifier comprising a base face identifier field storing a base face surrounding the vertex, a vertex index field storing a vertex index, a level field storing a level of the surface face and a path field storing a path to the surface face traversing faces within the subdivision surface in a predetermined order relative to the vertex index such that the identifier of the surface face is independent of the order of creation of other faces.

12. A storage as recited in claim 11 , further comprising a unique vertex name for a vertex of the face.

13. A storage as recited in claim 11 , further comprising a unique edge name for an edge of the face.

14. An apparatus for analyzing a mesh having plural faces each having an arbitrary number of sides, a new vertex and new faces corresponding to the new vertex, the apparatus comprising a computer analyzing the mesh and determining a unique identifier for a first face of the new faces comprising a base face identifier identifying the face surrounding the new vertex, a vertex index on the new first face, a level of the new first face and a path to the new first face determined by traversing faces within the mesh in a predetermined order relative to the vertex index such that the identifier of the first face is independent of the order of creation of the faces.

15. A system, comprising:

an input source providing a polygonal base mesh having a plurality of arbitrarily sided base faces; and

a computer analyzing the mesh and determining a linear identifier for any existing base face and a newly created face within an existing base face, the identifier comprising a base face identifier, a vertex index, a level and a path to the face, and where said computer determines the identifier of the newly created face independent of the order of creation of the faces and such that each face is uniquely identified without reference to other identifiers.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2006
From: ALIAS SYSTEMS CORPORATION
To: AUTODESK, INC.
Reel/Frame 018375/0466 →
CERTIFICATE OF AMENDMENT Recorded Nov 18, 2004
From: ALIAS SYSTEMS CORP., A NOVA SCOTIA UNLIMITED LIABILITY COMPANY
To: ALIAS SYSTEMS INC., A NOVA SCOTIA LIMITED LIABILITY COMPANY
Reel/Frame 015370/0578 →
CERTIFICATE OF CONTINUANCE AND CHANGE OF NAME Recorded Nov 18, 2004
From: ALIAS SYSTEMS INC., A NOVA SCOTIA LIMITED LIABILITY COMPANY
To: ALIAS SYSTEMS CORP., A CANADIAN CORPORATION
Reel/Frame 015370/0588 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 3, 2004
From: SILICON GRAPHICS, INC.; SILICON GRAPHICS LIMITED; SILICON GRAPHICS WORLD TRADE BV
To: ALIAS SYSTEMS CORP.
Reel/Frame 014934/0523 →