# US 11,308,693 B2 · Smart edge loop selection

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,308,693 B2
- Document ID: US11308693B2
- Status: Granted
- Kind: B2
- Application number: 16/930,591
- Filed: 2020-07-16
- Published: 2021-12-30
- Granted: 2022-04-19
- Earliest claimed: 2020-06-26
- Assignees: Lucasfilm Entertainment Company Ltd.
- Applicants: Lucasfilm Entertainment Company Ltd.
- Inventors: Colette Mullenhoff
- Web page: https://patentgrep.com/patent/US11308693B2

## CPC

- G06T 17/20: Finite element generation, e.g. wire-frame surface description, {tesselation}
- G06T 17/205: {Re-meshing}
- G06F 3/04842: Selection of displayed objects or displayed text elements (G06F3/0482 takes precedence)
- G06F 3/04845: for image manipulation, e.g. dragging, rotation, expansion or change of colour
- G06T 19/20: Editing of three-dimensional [3D] images, e.g. changing shapes or colours, aligning objects or positioning parts
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method of edge loop selection includes accessing a polygon mesh; receiving a selection of a first edge connected to a first non-four-way intersection vertex; receiving, after receiving the selection of the first edge, a selection of a second edge connected to the first non-four-way intersection vertex; in response to receiving a command invoking an edge loop selection process: evaluating a topological relationship between the first edge and the second edge; determining a rule for processing a non-four-way intersection vertex based on the topological relationship between the first edge and the second edge; and completing an edge loop by, from the second edge, processing each respective four-way intersection vertex by choosing a middle edge as a next edge at the respective four-way intersection vertex, and processing each respective non-four-way intersection vertex based on the rule.

## Claims

### Claim 1

A method of edge loop selection in computer graphics performed by a computer system, the method comprising:
accessing a polygon mesh comprising a plurality of vertices and a plurality of edges associated with the plurality of vertices;
receiving, via an input device of the computer system, a selection of a first edge connected to a first non-four-way intersection vertex;
receiving, via the input device and after receiving the selection of the first edge, a selection of a second edge connected to the first non-four-way intersection vertex; and
in response to receiving, via the input device, a command invoking an edge loop selection process:
determining a number of edge(s) that is skipped from the first edge to the second edge on a left side or on a right side;
determining a rule for selecting a next edge at a non-four-way intersection vertex based on the number of edge(s) that is skipped from the first edge to the second edge on a left side or on a right side; and
completing an edge loop by, from the second edge and continuing in a direction from the first edge to the second edge:
at each respective four-way intersection vertex, selecting a middle edge as the next edge at the respective four-way intersection vertex; and
at each respective non-four-way intersection vertex, selecting the next edge based on the rule;
wherein the rule comprises:
upon determining that the first non-four-way intersection vertex has N number of edges connected thereto, N being an even integer, and the number of edge(s) that is skipped from the first edge to the second edge is equal to
M
=
N
2
-
1
,
processing all future non-four-way intersection vertices that have an even number of edges connected thereto by choosing a middle edge.

### Claim 2 (depends on 1)

The method of claim 1, wherein the rule further comprises:
upon encountering a first future non-four-way intersection vertex that has an odd number of edges connected thereto, and upon determining that the first future non-four-way intersection vertex has three edges connected thereto, processing the first future non-four-way intersection and all other future non-four-way intersection vertices that have an odd number of edges connected thereto by skipping no edge on the left side; and
upon encountering the first future non-four-way intersection vertex that has an odd number of edges connected thereto, and upon determining that the first future non-four-way intersection vertex has five or more edges connected thereto, processing the first future non-four-way intersection vertex and all other future non-four-way intersection vertices that have an odd number of edges connected thereto by skipping one edge on the left side.

### Claim 3 (depends on 1)

The method of claim 1, wherein the selection of the second edge and the command invoking the edge loop selection process are made by clicking or double-clicking the second edge, or by entering a key combination, or by hovering a mouse over the second edge and selecting an item in a pop-up menu.

### Claim 4

A method of edge loop selection in computer graphics performed by a computer system, the method comprising:
accessing a polygon mesh comprising a plurality of vertices and a plurality of edges associated with the plurality of vertices;
receiving, via an input device of the computer system, a selection of a first edge connected to a first non-four-way intersection vertex;
receiving, via the input device and after receiving the selection of the first edge, a selection of a second edge connected to the first non-four-way intersection vertex; and
in response to receiving, via the input device, a command invoking an edge loop selection process:
determining a number of edge(s) that is skipped from the first edge to the second edge on a left side or on a right side;
determining a rule for selecting a next edge at a non-four-way intersection vertex based on the number of edge(s) that is skipped from the first edge to the second edge on a left side or on a right side; and
completing an edge loop by, from the second edge and continuing in a direction from the first edge to the second edge:
at each respective four-way intersection vertex, selecting a middle edge as the next edge at the respective four-way intersection vertex; and
at each respective non-four-way intersection vertex, selecting the next edge based on the rule;
wherein the rule comprises:
upon determining that the first non-four-way intersection vertex has N number of edges connected thereto, N being an even integer equal to or greater than eight, and the number of edge(s) that is skipped from the first edge to the second edge is equal to M, M being between 2 and
N
2
-
2
,
inclusive, processing all future non-four-way intersection vertices that have N number of edges connected thereto by skipping M number of edges on the left side or on the right side.

### Claim 5 (depends on 4)

The method of claim 4, wherein the rule further comprises:
upon encountering a first future non-four-way intersection vertex that has L number of edges connected thereto and L is not equal to N, and upon determining that L is equal to three, processing the first future non-four-way intersection vertex and all other future non-four-way intersection vertices that have a number of edges connected thereto that is not equal to N by skipping no edge on the left side or the right side; and
upon encountering the first future non-four-way intersection vertex that has L number of edges connected thereto and L is not equal to N, and upon determining that L is equal to or greater than five, processing the first future non-four-way intersection vertex and all other future non-four-way intersection vertices that have a number of edges connected thereto that is not equal to N by skipping one edge on the left side or the right side.

### Claim 6

A method of edge loop selection in computer graphics performed by a computer system, the method comprising:
accessing a polygon mesh comprising a plurality of vertices and a plurality of edges associated with the plurality of vertices;
receiving, via an input device of the computer system, a selection of a first edge connected to a first non-four-way intersection vertex;
receiving, via the input device and after receiving the selection of the first edge, a selection of a second edge connected to the first non-four-way intersection vertex; and
in response to receiving, via the input device, a command invoking an edge loop selection process:
determining a number of edge(s) that is skipped from the first edge to the second edge on a left side or on a right side;
determining a rule for selecting a next edge at a non-four-way intersection vertex based on the number of edge(s) that is skipped from the first edge to the second edge on a left side or on a right side; and
completing an edge loop by, from the second edge and continuing in a direction from the first edge to the second edge:
at each respective four-way intersection vertex, selecting a middle edge as the next edge at the respective four-way intersection vertex; and
at each respective non-four-way intersection vertex, selecting the next edge based on the rule;
wherein the rule comprises:
upon determining that the first non-four-way intersection vertex has N number of edges connected thereto, N being an odd integer that is equal to or greater than seven, and the number of edge(s) that is skipped from the first edge to the second edge is equal to M, M being between 2 and
N
2
-
1
,
inclusive, processing all non-four-way intersection vertices that have N number of edges connected thereto by skipping M number of edges on the left side or on the right side.

### Claim 7 (depends on 6)

The method of claim 6, wherein the rule further comprises:
upon encountering a first future non-four-way intersection vertex that has L number of edges connected thereto and L is not equal to N, and upon determining that L is equal to three, processing all future non-four-way intersection vertices that have a number of edges connected thereto that is not equal to N by skipping no edge on the left side or the right side; and
upon encountering the first future non-four-way intersection vertex that has L number of edges connected thereto and L is not equal to N, and upon determining that L is equal to or greater than five, processing all future non-four-way intersection vertices that have a number of edges connected thereto that is not equal to N by skipping one edge on the left side or the right side.
