Object folding tool
AssigneeAdobe Inc.
InventorsMichal Lukac, Amanda Paige Ghassaei, Wilmot Wei-Mau Li, Vidya Narayanan, Eric Joel Stollnitz, Daniel Max Kaufman
Life of this patent
Estimating the term…
Abstract
An object folding tool is leveraged in a digital medium environment. A two-dimensional (2D) representation of an unfolded object is obtained, and visual cues indicating folds for transforming the unfolded object into a folded object are detected. Based on the detected visual cues, a shape of the folded object is determined, and a three-dimensional (3D) representation of the folded object having the determined shape is generated. In one or more implementations, the 2D representation of the unfolded object and the 3D representation of the folded object are displayed concurrently on a display device.
Claims20
A computer-implemented method for applying graphics to two-dimensional (“2D”) and three-dimensional (“3D”) representations of objects in an application, the method comprising:
- receiving, by an object folding tool of a computer application, a 2D representation of an unfolded object as input, the input 2D representation of the unfolded object including formatted lines having styling;
- detecting, by the object folding tool, the formatted lines on the input 2D representation of the unfolded object;
- determining, by the object folding tool, locations of transformations for transforming the unfolded object into a folded object based on locations of the formatted lines on the input 2D representation of the unfolded object;
- determining, by the object folding tool, types of the transformations to perform at the locations based on the styling of the formatted lines, wherein the types of transformations include folds that are indicated by different styling of the formatted lines than other transformations;
- identifying, by the object folding tool, fold lines on which the unfolded object is foldable to form the folded object based on the locations of the formatted lines and the different styling;
- generating, by the object folding tool, annotations that describe the locations of the transformations and the types of transformations;
- determining, by the object folding tool, a shape of the folded object by processing the annotations using an iterative technique, the iterative technique determining different fold angles at which to fold the unfolded object along a fold line of the fold lines, wherein:
- the different fold angles of the fold line produce different candidate shapes for the folded object;
- each different fold angle is determined based on the locations of the transformations and the types of transformations to perform at the locations as described by the annotations;
- and
- the shape of the folded object is selected from the different candidate shapes produced;
- and
- generating, by the object folding tool, a 3D representation of the folded object having the determined shape.
A system comprising:
- an annotation module of an object folding tool to:
- detect visual cues of a 2D representation of an unfolded object received as input by the object folding tool, the input 2D representation of the unfolded object including formatted lines having styling;
- determine locations of transformations for transforming the unfolded object into a folded object based on locations of the formatted lines on the input 2D representation of the unfolded object;
- determine types of the transformations to perform at the locations based on the styling of the formatted lines, wherein the types of transformations include folds that are indicated by different styling of the formatted lines than other transformations;
- generate annotation data based on the formatted lines, the annotation data generated by identifying fold lines for transforming the unfolded object into the folded object based on the locations of the formatted lines and the different styling;
- an object folding module of the object folding tool to:
- determine different fold angles for a fold line of the fold lines, wherein the different fold angles of the fold line produce different candidate shapes of the folded object;
- determine a shape of the folded object by selecting one of the different candidate shapes as the shape;
- and
- generate a 3D representation of the folded object having the shape;
- and
- a display module to display the 2D representation of the unfolded object and the 3D representation of the folded object concurrently on a display device.
Non-transitory computer-readable storage media storing instructions that are executable by one or more processors to perform operations for applying graphics to two-dimensional (“2D”) and three-dimensional (“3D”) representations of objects in an application, the operations including:
- receiving, by an object folding tool of a computer application, a 2D representation of an unfolded object as input, the input 2D representation of the unfolded object including formatted lines having styling;
- detecting, by the object folding tool, the formatted lines on the input 2D representation of the unfolded object;
- determining, by the object folding tool, locations of transformations for transforming the unfolded object into a folded object based on locations of the formatted lines on the input 2D representation of the unfolded object;
- determining, by the object folding tool, types of the transformations to perform at the locations based on the styling of the formatted lines, wherein the types of transformations include folds that are indicated by different styling of the formatted lines than other transformations;
- identifying, by the object folding tool, fold lines on which the unfolded object is foldable to form the folded object based on the locations of the formatted lines and the different styling;
- generating, by the object folding tool, annotations that describe the locations of the transformations and the types of transformations;
- determining, by the object folding tool, a shape of the folded object by processing the annotations using an iterative technique, the iterative technique determining different fold angles at which to fold the unfolded object along a fold line of the fold lines, wherein:
- the different fold angles of the fold line produce different candidate shapes for the folded object;
- each different fold angle is determined based on the locations of the transformations and the types of transformations to perform at the locations as described by the annotations;
- and
- the shape of the folded object is selected from the different candidate shapes produced;
- and
- generating, by the object folding tool, a 3D representation of the folded object having the determined shape.
Dependencies are inferred from the claim text.