# US 10,769,317 B2 · Computer aided systems and methods for creating custom products

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

- Number: US 10,769,317 B2
- Document ID: US10769317B2
- Status: Granted
- Kind: B2
- Application number: 16/696,857
- Filed: 2019-11-26
- Published: 2020-03-26
- Granted: 2020-09-08
- Earliest claimed: 2017-06-29
- Assignees: Best Apps, LLC
- Applicants: Best Apps, LLC
- Inventors: Michael Bowen
- Web page: https://patentgrep.com/patent/US10769317B2

## CPC

- G06F 21/6209: {to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself}
- G06F 3/04817: using icons (graphical or visual programming using iconic symbols G06F8/34)
- G06F 3/0482: Interaction with lists of selectable items, e.g. menus
- G06F 3/04842: Selection of displayed objects or displayed text elements (G06F3/0482 takes precedence)
- G06F 3/0485: Scrolling or panning
- G06F 15/16: Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs {(coordinating program control therefor G06F9/52; in regulating and control system G05B)}
- G06F 21/10: Protecting distributed programs or content, e.g. vending or licensing of copyrighted material (protection in video systems or pay television H04N7/16) {; Digital rights management [DRM]}
- G06F 21/6218: {to a system of files or objects, e.g. local or distributed file system or database}
- G06F 30/00: Computer-aided design [CAD]
- G06F 30/398: Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM] (optical proximity correction [OPC] design processes G03F1/36)
- G06F 40/186: Templates
- G06N 5/046: Forward inferencing; Production systems
- G06Q 10/063118: {Staff planning in a project environment}
- G06Q 10/103: {Workflow collaboration or project management}
- G06Q 30/0601: Electronic shopping [e-shopping]
- G06Q 50/184: {Intellectual property management}
- G06F 2111/16: Customisation or personalisation
- G06F 2113/12: Cloth
- G06F 2221/2113: Multi-level security, e.g. mandatory access control
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR

## Abstract

A computer-aided design system enables physical articles to be customized via printing or embroidering and enables digital content to be customized and electronically shared. A user interface may be generated that includes an image of a model of an article of manufacture and user customizable design areas that are graphically indicated on the image corresponding to the model. A design area selection may be received. In response to an add design element instruction and design element specification, the specified design element is rendered in the selected design area on the model image. Customization permissions associated with the selected design area are accessed, and using the customization permissions, a first set of design element edit tools are selected and rendered. User edits to the design element may be received and rendered in real time. Manufacturing instructions may be transmitted to a printing system.

## Claims

### Claim 1

A computer system comprising:
a computing device;
a network interface;
a non-transitory data media configured to store instructions that when executed by the computing device, cause the computing device to perform operations comprising:
provide for display on a first user terminal an interface enabling the first user to specify proscribed combinations of design elements, wherein the interface enables the first user to specify that at least a first design element is not to be combined with design elements comprising text content, image content, and/or audio content of a specified feature type;
receive, via the network interface, from the first user terminal, a specification of one or more proscribed combinations of design elements, wherein the specification indicates that the first design element is not to be combined with a specified design element comprising text content, image content, and/or audio content of a proscribed first feature type, the proscribed first feature type comprising adult content or violent content;
store the specification of proscribed combinations of design elements;
enable a second user to access, via a second user terminal, the first design element;
provide, for display on the second user terminal, a design customization user interface enabling the second user to combine digital content with the first design element, wherein the digital content comprises image, text, and/or audio design elements;
determine, using an analysis engine configured to perform machine learning and to perform image, textual, and/or audio analysis and identify adult content and/or violent content, whether a second design element comprising digital text, image, and/or audio content specified by the second user includes content of the proscribed first feature type, the proscribed first feature type comprising adult content or violent content;
based at least in part on the determination of the analysis engine as to whether the second design element includes content of the proscribed first feature type, the proscribed first feature type comprising adult content or violent content, determine whether a combination of the second design element with the first design element is proscribed by the specification of proscribed combinations of design elements;
at least partly in response to a determination that the combination of the second design element is proscribed by the specification of proscribed combinations of design elements, inhibit printing on a physical item and/or electronic distribution by the second user of the first design element in combination with the second design element; and
at least partly in response to a determination that combination of the second design element with the first design element is not included in the specification of proscribed content combinations, enable printing on a physical item and/or electronic distribution by the second user of the first design element in combination with the second item.

### Claim 2 (depends on 1)

The computer system as defined in claim 1, wherein the analysis engine comprises a convolutional deep neural network, the convolutional deep neural network comprising one or more convolutional layers, pooling layers, fully connected layers, and normalization layers.

### Claim 3 (depends on 1)

The computer system as defined in claim 1, wherein the analysis engine is configured to execute a sentiment analysis with respect to the second design element.

### Claim 4 (depends on 1)

The computer system as defined in claim 1, wherein the computer system is configured to provide a user interface to the first user terminal that enables the first user to specify prohibited and/or permitted electronic distribution platforms, receive a specification of prohibited and/or permitted electronic distribution platforms from the first user terminal, and:
enable the second user to share the first design element via permitted electronic distribution platforms, and/or inhibit the second user from sharing the first design element via prohibited electronic distribution platforms.

### Claim 5 (depends on 1)

The computer system as defined in claim 1, wherein the computer system is configured to:
provide a user interface to the first user terminal that enables the first user to specify a content blacklist comprising specifically identified items of content;
receive from the first user terminal one or more specifically identified items of content assigned to the blacklist;
determine if the second design element includes content assigned to the blacklist;
at least partly in response to a determination that the second design element includes content assigned to the blacklist, inhibit printing on a physical item and/or electronic distribution by the second user of the first design element with the second design element.

### Claim 6 (depends on 1)

The computer system as defined in claim 1, wherein the computer system is configured to:
provide a user interface to the first user terminal that enables the first user to specify a content whitelist comprising specifically identified items of content, wherein the whitelist is prioritized over the specification of proscribed combinations of design elements;
receive from the first user terminal one or more specifically identified items of content assigned to the whitelist;
determine if the second design element includes content assigned to the whitelist;
at least partly in response to a determination that the second design element includes content assigned to the whitelist, enable printing on a physical item and/or electronic distribution by the second user of the first design element with the second design element, even when the combination of the first design element and second design element is included in the specification of proscribed content combinations.

### Claim 7 (depends on 1)

The computer system as defined in claim 1, the operations further comprising:
generate an analysis query for an item of content provided by the second user;
submit the analysis query to the analysis engine;
receive likelihood indications with respect to a plurality of content types;
based on the likelihood indications, determine whether combination of the item of content with the first design element is permitted.

### Claim 8 (depends on 1)

The computer system as defined in claim 1, the operations further comprising:
generate an analysis query for an item of content provided by the second user;
submit the analysis query to the analysis engine; and
receive likelihood indications with respect to a plurality of content types, wherein the likelihood indications are selected from a set of likelihood indications comprising: very likely, likely, possible, unlikely, and very unlikely; and
based on the likelihood indications, determine whether combination of the item of content with the first design element is permitted.

### Claim 9 (depends on 1)

The computer system as defined in claim 1, the operations further comprising:
prior to enabling electronic distribution of the first design element via the computer system by the first user, embed a watermark in the first design element using a spread spectrum watermarking process, wherein the embedded watermark is imperceptible to human senses;
crawl networked sites and attempt to identify the presence of the first design element based at least in part on a presence of the watermark;
at least partly in response to identify the presence of the first design element on a first networked site, access one or more usage rules;
determine whether the first design element, as present on the first networked site, violates at least a first of the one or more usage rules;
based at least in part on the determination as to whether the first design element, as present on the first networked site, violates the first of the one or more usage rules, determine whether a first remediation action is to be taken; and
at least partly in response to determining that a first remediation action is to be taken, enable the first remediation action to be taken.

### Claim 10 (depends on 1)

The computer system as defined in claim 1, wherein the first design element comprises a logo.

### Claim 11 (depends on 1)

The computer system as defined in claim 1, wherein the first design element comprises an image of a person or an animation character.

### Claim 12

A computerized method, comprising:
providing, using a computing device, for display on a terminal of a first user an interface enabling the first user to specify one or more proscribed combinations of design elements, wherein the interface enables the first user to specify that a first design element of a first entity is not to be combined with a design elements comprising text content, image content, and/or audio content of a specified feature type;
receiving from the first user a specification of proscribed combinations of design elements, wherein the specification indicates that the first design element of the first entity is not to be combined with specified design elements comprising text content, image content, and/or audio content of a proscribed first feature type, the proscribed first feature type comprising adult content or violent content;
storing the specification of proscribed combinations of design elements in non-transitory computer readably memory;
enabling a second user to access, via a second user terminal, the first design element from a library of design elements;
providing, for display on the second user terminal, a design customization user interface enabling the second user to combine content with the first design element, wherein the content comprises image, text, and/or audio design elements;
performing image, textual, and/or audio analysis to identify adult content and/or violent content in determining whether a second design element specified by the second user includes content of the proscribed first feature type, the proscribed first feature type comprising adult content or violent content and whether the combination of the second design element with the first design element is proscribed by the specification of proscribed combinations of design elements, the second design element comprising image, textual, and/or audio content;
at least partly in response to a determination that the combination of the second design element is proscribed by the specification of proscribed combinations of design elements, inhibiting the second user from utilizing the design customization user interface to cause: the combination of the first design element and the second design element on a physical item and/or electronic distribution by the second user of the first design element in combination with the second design element; and
at least partly in response to a determination that combination of the second design element with the first design element is not included in the specification of proscribed content combinations, enabling the second user to utilize the design customization user interface to cause: the printing of the combination of the first design element and the second design element on a physical item and/or electronic distribution by the second user of the first design element in combination with the second design element.

### Claim 13 (depends on 12)

The method as defined in claim 12, the method further comprising:
receiving over a network an item of digital content provided by the second user;
using an analysis engine to determine whether the digital content violates one or more content subject matter rules,
wherein the analysis engine comprises a convolutional deep neural network, the convolutional deep neural network comprising one or more convolutional layers, pooling layers, fully connected layers, and normalization layers; and
based on a determinations as to whether the digital content violates one or more content subject matter rules, determining whether the item of digital content may be used in combination with the first design element.

### Claim 14 (depends on 12)

The method as defined in claim 12, the method further comprising:
receiving over a network an item of digital content provided by the second user;
using a sentiment analysis engine to determine whether the digital content violates one or more content subject matter rules; and
based on a determinations as to whether the digital content violates one or more content subject matter rules, determining whether the item of digital content may be used in combination with the first design element.

### Claim 15 (depends on 12)

The method as defined in claim 12, the method further comprising:
providing a user interface to the first user terminal that enables the first user to specify prohibited and/or permitted electronic distribution platforms;
receiving a specification of prohibited and/or permitted electronic distribution platforms from the first user terminal, and:
enabling the second user to share the first design element via permitted electronic distribution platforms, and/or
inhibiting the second user from sharing the first design element via prohibited electronic distribution platforms.

### Claim 16 (depends on 12)

The method as defined in claim 12, the method further comprising:
providing a user interface to the first user terminal that enables the first user to specify a content blacklist comprising specifically identified items of content;
receiving from the first user terminal one or more specifically identified items of content assigned to the blacklist;
determining if the second design element includes content assigned to the blacklist;
at least partly in response to a determination that the second design element includes content assigned to the blacklist, inhibiting printing on a physical item and/or electronic distribution by the second user of the first design element in combination with the second design element.

### Claim 17 (depends on 12)

The method as defined in claim 12, the method further comprising:
providing a user interface to the first user terminal that enables the first user to specify a content whitelist comprising specifically identified items of content, wherein the whitelist is prioritized over the specification of proscribed combinations of design elements;
receiving from the first user terminal one or more specifically identified items of content assigned to the whitelist;
determining if the second design element includes content assigned to the whitelist;
at least partly in response to a determination that the second design element includes content assigned to the whitelist, enabling printing on a physical item and/or electronic distribution by the second user of the first design element with the second design element, even when the combination of the first design element and second design element is included in the specification of proscribed content combinations.

### Claim 18 (depends on 12)

The method as defined in claim 12, the method further comprising:
generating an analysis query based at least in part on the specification of proscribed content combinations, the analysis query;
submitting the analysis query to an analysis engine;
receiving likelihood indications with respect to a plurality of content types;
based on the likelihood indications, initiating one or more specified actions.

### Claim 19 (depends on 12)

The method as defined in claim 12, the method further comprising:
generating an analysis query based at least in part on the specification of proscribed content combinations, the analysis query;
submitting the analysis query to the analysis engine; and
receiving likelihood indications with respect to a plurality of content types, wherein the likelihood indications are selected from a set of likelihood indications comprising: very likely, likely, possible, unlikely, and very unlikely; and
based on the likelihood indications initiating one or more specified actions.

### Claim 20 (depends on 12)

The method as defined in claim 12, the method further comprising:
prior to enabling electronic distribution of the first design element by the first user, embedding a watermark in the first design element using a spread spectrum watermarking process, wherein the embedded watermark is imperceptible to human senses;
initiating crawling networked sites and attempt to identify the presence of the first design element based at least in part on a presence of the watermark;
at least partly in response to identifying the presence of the first design element on a first networked site, accessing one or more usage rules comprising the specification of proscribed content combinations;
determining whether the first design element, as present on the first networked site, violates at least a first of the one or more usage rules;
based at least in part on the determination as to whether the first design element, as present on the first networked site, violates the first of the one or more usage rules, determining whether a first remediation action is to be taken;
at least partly in response to determining that a first remediation action is to be taken, enabling the first remediation action to be taken.

### Claim 21

Non-transitory computer readable memory configured to store computer executable instructions that when executed by a computing system, cause the computing system to perform operations comprising:
provide for display on a terminal of a first user an interface that enables the first user to specify proscribed combinations of design elements, wherein the interface enables the first user to specify that a first design element of a first entity is not to be combined with specified design elements comprising text content, image content, and/or audio content of a specified feature type;
receive from the first user terminal a specification of proscribed combinations of design elements, wherein the specification indicates that the first design element of the first entity is not to be combined with specified design elements comprising text content, image content, and/or audio content;
store the specification of proscribed combinations of design elements in non-transitory computer readably memory;
enable a second user to access, via a second user terminal, the first design element from a plurality of design elements;
provide, for display on the second user terminal, a design customization user interface that enables combination of content with the first design element, wherein the content comprises image, text, and/or audio design elements;
perform image, textual, and/or audio analysis to identify adult content and/or violent content to determine second design element specified by the second user includes content of the proscribed first feature type, the proscribed first feature type comprising adult content or violent content and whether the combination of the second design element with the first design element is proscribed by the specification of proscribed combinations of design elements, the second design element comprising image, textual, and/or audio content;
at least partly in response to a determination that the combination of the second design element is proscribed by the specification of proscribed combinations of design elements, inhibit the second user from utilizing the design customization user interface to cause: the combination of the first design element and the second design element on a physical item and/or electronic distribution by the second user of the first design element in combination with the second design element; and
at least partly in response to a determination that combination of the second design element with the first design element is not included in the specification of proscribed content combinations, enable the second user to utilize the design customization user interface to cause: the printing of the combination of the first design element and the second design element on a physical item and/or electronic distribution by the second user of the first design element in combination with the second design element.

### Claim 22 (depends on 21)

Non-transitory computer readable memory as defined in claim 21, the operations further comprising:
receive over a network an item of digital content provided by the second user;
determine whether the digital content violates one or more content subject matter rules using a convolutional deep neural network, the convolutional deep neural network comprising one or more convolutional layers, pooling layers, fully connected layers, and normalization layers; and
based on a determinations as to whether the digital content violates one or more content subject matter rules, determine whether the item of digital content may be used in combination with the first design element.

### Claim 23 (depends on 21)

Non-transitory computer readable memory as defined in claim 21, the operations further comprising:
receive over a network an item of digital content provided by the second user;
use a sentiment analysis engine to determine whether the digital content violates one or more content subject matter rules; and
based on a determinations as to whether the digital content violates one or more content subject matter rules, determine whether the item of digital content may be used in combination with the first design element.

### Claim 24 (depends on 21)

Non-transitory computer readable memory as defined in claim 21, the operations further comprising:
provide a user interface to the first user terminal that enables the first user to specify prohibited and/or permitted electronic distribution platforms;
receive a specification of prohibited and/or permitted electronic distribution platforms from the first user terminal, and:
enable the second user to share the first design element via permitted electronic distribution platforms, and/or
inhibit the second user from sharing the first design element via prohibited electronic distribution platforms.

### Claim 25 (depends on 21)

Non-transitory computer readable memory as defined in claim 21, the operations further comprising:
provide a user interface to the first user terminal that enables the first user to specify a content blacklist comprising specifically identified items of content;
receive from the first user terminal one or more specifically identified items of content assigned to the blacklist;
determine if the second design element includes content assigned to the blacklist;
at least partly in response to a determination that the second design element includes content assigned to the blacklist, inhibiting printing on a physical item and/or electronic distribution by the second user of the first design element in combination with the second design element.

### Claim 26 (depends on 21)

Non-transitory computer readable memory as defined in claim 21, the operations further comprising:
provide a user interface to the first user terminal that enables the first user to specify a content whitelist comprising specifically identified items of content, wherein the whitelist is prioritized over the specification of proscribed combinations of design elements;
receive from the first user terminal one or more specifically identified items of content assigned to the whitelist;
determine if the second design element includes content assigned to the whitelist;
at least partly in response to a determination that the second design element includes content assigned to the whitelist, enable printing on a physical item and/or electronic distribution by the second user of the first design element with the second design element, even when the combination of the first design element and second design element is included in the specification of proscribed content combinations.

### Claim 27 (depends on 21)

Non-transitory computer readable memory as defined in claim 21, the operations further comprising:
generate an analysis query based at least in part on the specification of proscribed content combinations, the analysis query;
submit the analysis query to an analysis engine;
receive likelihood indications with respect to a plurality of content types;
based on the likelihood indications, initiate one or more specified actions.

### Claim 28 (depends on 21)

Non-transitory computer readable memory as defined in claim 21, the operations further comprising:
generate an analysis query based at least in part on the specification of proscribed content combinations, the analysis query;
submit the analysis query to the analysis engine; and
receive likelihood indications with respect to a plurality of content types, wherein the likelihood indications are selected from a set of likelihood indications comprising:
very likely, likely, possible, unlikely, and very unlikely; and
based on the likelihood indications initiating one or more specified actions.

### Claim 29 (depends on 21)

Non-transitory computer readable memory as defined in claim 21, the operations further comprising:
prior to enabling electronic distribution of the first design element by the first user, embed a watermark in the first design element using a spread spectrum watermarking process, wherein the embedded watermark is imperceptible to human senses;
initiate crawling networked sites and attempt to identify the presence of the first design element based at least in part on a presence of the watermark;
access one or more usage rules comprising the specification of proscribed content combinations;
determine whether the first design element, as present on the first networked site, violates at least a first of the one or more usage rules;
based at least in part on the determination as to whether the first design element, as present on the first networked site, violates the first of the one or more usage rules, determine whether a first remediation action is to be taken;
at least partly in response to determining that a first remediation action is to be taken, enable the first remediation action to be taken.
