# US 2021/0240882 A1 · Cad model compression via automated block generation

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

- Number: US 2021/0240882 A1
- Document ID: US20210240882A1
- Status: Published application
- Kind: A1
- Application number: 17/263,495
- Filed: 2019-08-21
- Published: 2021-08-05
- Earliest claimed: 2018-09-17
- Assignees: Bricsys NV
- Applicants: Bricsys NV
- Inventors: Tjerk GAUDERIS; Geert MACHTELINCK; Wouter NYS
- Web page: https://patentgrep.com/patent/US20210240882A1

## CPC

- G06F 30/10: Geometric CAD
- G06F 30/17: Mechanical parametric or variational design
- G06F 2111/20: Configuration CAD, e.g. designing by assembling or positioning modules selected from libraries of predesigned modules
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A CAD model comprises multiple entities. Each entity comprises one or more subentities, wherein a subentity is a vertex, an edge or a face. From the CAD model a group of multiple entities comprising an identical geometry is obtained. This step comprises verifying whether the entities of a pair of entities comprise an identical geometry via sequentially verifying identity conditions of a sequence of multiple identity conditions, until either an identity condition of the sequence fails or all identity conditions of the sequence are verified. Each identity condition is based on the subentities of the pair of entities. A block definition comprising a block geometry based on said identical geometry is created. In the CAD model, the entities of the group are replaced with block references comprising a pointer to the block definition. The CAD model is thereby compressed.

## Claims

### Claim 1

Computer-implemented method for automated generation of a block definition for a CAD model, the CAD model comprising multiple entities each comprising one or more subentities, wherein a subentity is a vertex, an edge or a face, the method comprising the steps of:
obtaining from the CAD model a group of multiple entities comprising an identical geometry;
creating a block definition comprising a block geometry based on said identical geometry; and
replacing in the CAD model the entities of the group with block references comprising a pointer to the block definition,
wherein the step of obtaining from the CAD model a group of multiple entities comprising an identical geometry comprises verifying whether the entities of a pair of entities comprise an identical geometry via sequentially verifying identity conditions of a sequence of multiple identity conditions until either an identity condition of the sequence fails or all identity conditions of the sequence are verified, wherein each identity condition is based on the subentities of the pair of entities.

### Claim 2 (depends on 1)

Computer-implemented method according to preceding claim 1, wherein the step of verifying whether the entities of a pair of entities comprise an identical geometry is performed without mapping the geometry of an entity of the pair of entities onto the geometry of another entity of the pair of entities.

### Claim 3

Computer-implemented method according to any one of the preceding claims, wherein the method comprises the step of storing the block definition and the CAD model comprising the block references on a tangible non-transitory computer-readable storage medium.

### Claim 4

Computer-implemented method according to any one of the preceding claims, wherein a block reference comprises position data, rotation data, optionally translation data, and optionally a scaling factor with respect to the block geometry.

### Claim 5

Computer-implemented method according to any one of the preceding claims, wherein an entity is a solid.

### Claim 6

Computer-implemented method according to any one of the preceding claims, wherein an entity comprises a boundary representation comprising one or more boundary elements, wherein a subentity is a boundary element.

### Claim 7

Computer-implemented method according to any one of the preceding claims, wherein the sequence of multiple identity conditions comprises at least three, preferably at least four, more preferably at least five, even more preferably at least six, and most preferably at least seven identity conditions.

### Claim 8

Computer-implemented method according to any one of the preceding claims, wherein an identity condition is based on equality of number of vertices.

### Claim 9 (depends on 8)

Computer-implemented method according to preceding claim 8, wherein an identity condition for a pair of entities comprising an equal number of vertices is based on equality or proportionality of vertex distance lists, a vertex distance list of an entity comprising an ordered set of values, whereby each value is based on a distance of a vertex of the entity to a vertex centroid of the entity.

### Claim 10 (depends on 9)

Computer-implemented method according to preceding claim 9, wherein an identity condition for a pair of entities comprising an equal number of vertices and equal or proportional vertex distance lists is based on equality of a triple sum of the sign of the scalar triple product of a first, a second and a third vertex vector, a vertex vector of an entity being either a vector from the vertex centroid of the entity to a vertex of the entity or a vector from a vertex of the entity to the vertex centroid of the entity, the triple sum running over all first vertex vectors comprising a common first norm, all second vertex vectors comprising a common second norm and all third vertex vectors comprising a common third norm, the three norms being different, the first, second and third norms for the entities of the pair of entities pairwise related via said equality or proportionality of the vertex distance lists.

### Claim 11

Computer-implemented method according to any one of the preceding claims, wherein an identity condition is based on equality of number of edges, wherein an identity condition is based on equality or proportionality of edge parameters, wherein an identity condition is based on equality of number of faces, and wherein an identity condition is based on equality or proportionality of face parameters.

### Claim 12 (depends on 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11)

Computer-implemented method according to all of the preceding claims 1 to 11, wherein the sequence comprises the following relative order:
said identity condition based on equality of number of vertices;
said identity condition based on equality of number of edges;
said identity condition based on equality of number of faces;
said identity condition based on equality or proportionality of vertex distance lists;
said identity condition based on equality of the triple sum of the sign of the scalar triple product of a first, second and third vertex vector;
said identity condition based on equality or proportionality of edge parameters;
said identity condition based on equality or proportionality of face parameters.

### Claim 13

Computer-implemented method according to any one of the preceding claims, comprising the steps of:
obtaining an input entity set comprising multiple input entities;
determining for each input entity a group of entities comprising a geometry identical to the geometry of the input entity, comprising said step of verifying whether the entities of a pair of entities comprise an identical geometry;
determining one or more candidate entity subsets each comprising an entity of a first group comprising a minimal cardinality over all groups of entities, after which said first group has been treated;
iteratively:
selecting an untreated next group comprising a minimal cardinality over all untreated groups;
determining for the input entity associated with the next group and at least one input entity associated with at least one treated group at least one relative geometric property;
verifying for each entity of the next group whether the entity and corresponding entities of a candidate entity subset comprise said at least one relative geometric property, and depending on the verification, adding the entity to the candidate entity subset or discarding the candidate entity subset, after which the next group has been treated.

### Claim 14 (depends on 13)

Computer-implemented method according to preceding claim 13, comprising the steps of:
obtaining from the CAD model multiple entity sets comprising an identical set geometry;
creating a block definition comprising a block geometry based on said identical set geometry; and
replacing in the CAD model said entity sets with block references comprising a pointer to the block definition.

### Claim 15 (depends on 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)

Computer system for automated generation of a block definition for a CAD model, the computer system configured for performing the computer-implemented method according to any one of the preceding claims 1 to 14.

### Claim 16 (depends on 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)

Computer program product for automated generation of a block definition for a CAD model, the computer program product comprising instructions which, when the computer program product is executed by a computer, cause the computer to carry out the computer-implemented method according to any one of preceding claims 1 to 14.
