Three-dimensional object design system
The 3D object design system addresses the complexity of existing systems by allowing novice designers to create true-to-life 3D models with integrated manufacturing constraints, using a multi-model iterative design approach that simplifies the process and reduces expertise requirements.
Patent Information
- Application Number
- PCT/US2024/047622
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-09-22
- Filing Date
- 2024-09-20
- Publication Date
- 2025-03-27
AI Technical Summary
Existing 3D object design systems are complex and require expert knowledge, making it difficult for novice designers to create 3D objects that meet manufacturing requirements, as they lack robust features for linking design variants and manufacturing constraints.
A method and system for 3D object design that allows users to interact with a 3D model in real-time, modifying design elements and generating projected variants based on attribute data, using a multi-model iterative design approach that incorporates manufacturing specifications and constraints.
Enables novice designers to create true-to-life 3D models with integrated manufacturing constraints, reducing design time and expertise required, and producing models that are ready for direct manufacturing.
Smart Images

Figure US2024047622_27032025_PF_FP_ABST
Abstract
Description
THREE-DIMENSIONAL OBJECT DESIGN SYSTEMCROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This present application claims priority to U.S. Provisional Patent Application No. 63 / 584,665 entitled “THREE-DIMENSIONAL OBJECT DESIGN SYSTEM” filed on September 22, 2023, which is hereby incorporated herein by reference in its entirety.TECHNICAL FIELD
[0002] The subject matter described herein relates to system and methods for designing three-dimensional (3D) objects.BACKGROUND
[0003] Designing 3D objects can require skills and expertise that non-expert designers may not possess, such as knowledge of object composition, assembly methods of object components, manufacturing tolerances of an object and / or components of the object, or appropriate material selection. Design systems for novice designers may include visual interfaces to model object designs, but such systems lack robust features associated with linking variants of object designs or manufacturing constraints associated with the object or object components.SUMMARY
[0004] In one aspect, a method for three-dimensional (3D) object design is provided. In one embodiment, the method can include receiving, by a data processor, first data characterizing a first three-dimensional (3D) model of an object selected from a plurality of object models provided via a user interface. The method can also include determining, by the data processor, second data characterizing a plurality of object element models associated with the first 3D model. The plurality of object element models characterizing attribute data can correspond to one or more design elements of the object. The method can further include providing, by the data processor, the first 3D model and the attribute data to be displayed via the user interface. The method can also include receiving, by the data processor, third data characterizing an input modifying the attribute data of at least one design element of the 3D object. The input can be received via the user interface. The method can further include determining, by the data processor, a second 3D model of the object based on the third data. The second 3D model can be a projected variant of the first 3D model generated based on the modified attribute data of the at least one design elementof the object. The method can also include providing, by the data processor, the second 3D model of the object as the projected variant for display via the user interface.
[0005] In some embodiments, the plurality of object models can be categorized in the user interface based on an object type. In some embodiments, the one or more design elements of the object can be categorized in the user interface based on the object type. In some embodiments, the attribute data can include manufacturing specification data associated with manufacturing the at least one design element and the object. In some embodiments, the projected variant of the first 3D model can be generated based on values of the attribute data of the at least one design element. The attribute data values can be included in the plurality of object element models. In some embodiments, the object can include an object of jewelry, eyewear, footwear, apparel, swimwear, leather goods, sporting goods, toys, furniture, lifestyle goods, home goods, or components thereof. In some embodiments, the second 3D model can be a true-to-life visual representation of the object. The true-to-life representation can include dimensions of the object as manufactured.
[0006] In some embodiments, the projected variant can be determined based on at least one predictive algorithm trained in a machine learning process to generate the second 3D model based on attribute data associated with at least one design element of the 3D object included in the first and / or second 3D model. In some embodiments, the third data characterizing the input modifying the attribute data can be received via the user interface via at least one of a mouse or stylus input, an audible input, and a gesture input. In some embodiments, the method further includes receiving fourth data characterizing a second input provided via the user interface and selecting a second design element of the 3D object from a plurality of design elements provided via the user interface, and incorporating the second design element into the second 3D model so as to link an object element model associated with the second design element to the second 3D model.
[0007] In another aspect, a system for three-dimensional (3D) object design is provided. In one embodiment, the system can include a computing device including a display including a user interface and a server device communicably coupled to the computing device. The server device can include a memory storing non-transitory computer-readable instructions and a plurality of object models. The server device can also include at least one data processor communicatively coupled to the memory and the display. The at least one data processor can be configured to execute the instructions, which when executed cancause the at least one data processor perform operations including receiving first data from the computing device. The first data can characterize a first three-dimensional (3D) model of an object selected from a plurality of object models provided via the user interface of the computing device. The operations can also include determining second data characterizing a plurality of object element models associated with the first 3D model. The plurality of object element models can characterize attribute data corresponding to one or more design elements of the object. The operations can further include providing the first 3D model and the attribute data to the computing device. The providing can cause the first 3D model and the attribute data to be displayed via the user interface of the computing device. The operations can also include receiving third data characterizing an input provided via the user interface. The input can modify the attribute data of at least one design element of the object. The operations can further include determining a second 3D model of the object based on the third data. The second 3D model can be a projected variant of the first 3D model generated based on the modified attribute data of the at least one design element of the object. The operations can also include providing the second 3D model of the object to the computing device. The providing can cause the second 3D model of the object to be displayed as the projected variant via the user interface of the computing device.
[0008] In some embodiments, the first plurality of object models can be categorized in the user interface based on an object type. In some embodiments, the one or more design elements of the object can be categorized in the user interface based on the object type. In some embodiments, the attribute data can include manufacturing specification data associated with manufacturing the at least one design element and the object. In some embodiments, the projected variant of the first 3D model can be generated based on values of the attribute data of the at least one design element. The attribute data values can be included in the plurality of object element models. In some embodiments, the object can include an object of jewelry, eyewear, footwear, apparel, swimwear, leather goods, sporting goods, toys, furniture, lifestyle goods, home goods, or components thereof. In some embodiments, the second 3D model can be a true-to-life representation of the object. The true-to-life representation can include dimensions of the object as manufactured. In some embodiments, the computing device and the server device can be communicably coupled via a network in a software-as-a-service configuration.
[0009] In some embodiments, the projected variant can be determined based on at least one predictive algorithm trained in a machine learning process to generate the second 3D model based on attribute data associated with at least one design element of the 3D object included in the first and / or second 3D model. In some embodiments, the third data characterizing the input modifying the attribute data can be received via the user interface via at least one of a mouse or stylus input, an audible input, and a gesture input.DESCRIPTION OF DRAWINGS
[0010] These and other features will be more readily understood from the following detailed description taken in conjunction with the accompanying drawings, in which:
[0011] FIG. 1 is a system diagram illustrating one exemplary embodiment of a system for designing 3D objects according to methods described herein;
[0012] FIG. 2 is an illustration of a 3D object designed using the system of FIG. 1 according to methods described herein;
[0013] FIG. 3 is an illustration of another 3D object designed using the system of FIG. 1 according to methods described herein;
[0014] FIG. 4 is an illustration of components of the 3D object of FIG. 3 designed using the system of FIG. 1 according to methods described herein;
[0015] FIG. 5 is an exemplary user interface of the system of FIG. 1 configured for designing 3D objects according to methods described herein;
[0016] FIG. 6 is a process diagram illustrating an exemplary embodiment of a method performed by the system of FIG. 1 ;
[0017] FIG. 7 is another exemplary user interface of the system of FIG. 1 configured for designing 3D objects according to methods described herein;
[0018] FIG. 8 is a block diagram of an exemplary computing system configured for use in the system of FIG. 1.
[0019] It is noted that the drawings are not necessarily to scale. The drawings are intended to depict only typical aspects of the subject matter disclosed herein, and therefore should not be considered as limiting the scope of the disclosure.DETAILED DESCRIPTION
[0020] Designing highly technical and complex objects or products (e.g., jewelry, eyewear, footwear, leathergoods, apparel, homegoods, or the like) in 3D is a timeconsuming process and requires expert knowledge in how to utilize current 3D design platforms. In addition, designing highly technical and complex 3D objects in a form thatcan be directly manufactured (i.e., meets all manufacturing requirements including being formed into appropriate component parts) by a factory requires expert knowledge in the manufacturing requirements of such objects. To design a 3D object using existing 3D object design systems requires novice users to have access to such systems, which are often complex enterprise software platforms. Additionally, users must know how to use the system, which can often require significant training to efficiently achieve the intended design goals for the 3D object. Further the design process is time consuming. It can take tens of hours to design a complex 3D object or product.
[0021] The above limitations present a barrier to designing 3D objects and excludes users who aren’t experts in these such design systems. A user without expert knowledge of 3D object construction and manufacturing would not know these requirements.
[0022] Existing 3D object design systems can include computer-aided design (CAD) programs that require a user to build 3D models using complex modelling functions and to have an understanding of the manufacturing requirements for the product (e.g., a component length and thickness for a ring with a gemstone set in it, or a minimum wire thickness and hole sizing for a hinge earring, or pattern requirements for apparel, etc.). Some plugins or addon modules exist for these CAD programs that can shortcut the process, (e.g., providing a set of templates that can be used), however they still require some level of expert knowledge to use and don’t provide a true-to-life object model including a plurality of linked components configurations for design variants that are also able to be deconstructed into directly manufacturable components. Additional customization of designs above and beyond the detail provided in a template, requires users to have expert knowledge of the object or component design, as well as the manufacturing limitations associated with the desired customizations.
[0023] The systems and methods herein provide an improved 3D object design tool. The systems and methods herein solve the problem for novice users to need to know manufacturing methods and approaches when designing 3D objects or products by utilizing a multi-model iterative design approach. In this approach, one model is directly interacted with by the user and is displays in real-time in a user interface how the product will look when fully manufactured. Related models are linked to this model and are configured and processed behind the scenes. This arrangement of linked models can be configured with optimum manufacturing criteria and production specifications and can mirror all changes made by the user to produce a visual representation of the 3D object inthe user interface that has true-to-life characteristics including all manufacturing constraints and / or specifications associated with the object or its components.
[0024] Using a defined 3D object model as a starting point for design of a 3D object, e.g., a ring, a user can modify various design aspects of the ring into a final ring design. The object model of the ring can include multiple projected variations that can be provided in a user interface in 3D. For example, variations can include the ring with a different style of ring band or the ring with a square signet face on the primary stone. As the user interacts with the 3D object model of the ring in the user interface, the 3D object model can transition at a micro level towards a projected variation and in doing so the model is altered based on how the movement towards the project variation alters the current model state. This transitioning can be applied across all variations and each movement towards a variation will also incorporate already applied transitions into the 3D object model. The alterations that occur are classified into natural language groupings and these groupings are presented to a user within the interface along with the 3D object model to allow for non-expert design of that model.
[0025] As shown in FIG. 1, the 3D object design system 100 can include a computing device 105 communicatively coupled to a server computing device 115 via a network 1 10. The computing device 105 and the server device 1 15 can include a data processor and a memory. One or more 3D object models 125 and one or more object element models 140 can be stored in memory of the computing device 105, the server device 115 or in a database 120 accessible via the network 110. The 3D object element models 140 can define characteristics and attributes of design elements that are part of the 3D object represented by the 3D object models 120. In some embodiments, the system 100 can be configured in a software-as-a-service (SaaS) configuration. The computing device 105 can include a display 130, which can provide a user interface 135. A user can interact with the 3D object models 125 and / or the object element models 140 via the user interface 135.
[0026] The object models 125 can be associated with an object to be designed and can include a number of linked features associated with design elements or components of the object to be designed. The linked nature of the object models 125 can provide an enhanced user experience when designing 3D objects so as to properly account for all associated design elements or object components. Each 3D object model 125 can be embedded with projected variants and can include one or more object element models 140 embedded or linked therein that are associated with design elements of the 3D objectcorresponding to the 3D object model 125. Users can iteratively manipulate the 3D object model 125 and / or the object element models 140 to design a new 3D object or new 3D design elements of the 3D object. The system 100 can determine and provide variants of the 3D object that represent a modified design or configuration of the 3D object and / or of the 3D object component. New or modified 3D object models 125 and object element models 140 can be stored locally on a memory of the computing device 105, a memory of the server device 115, and or in the database 120.
[0027] The 3D object models 125 can correspond to 3D objects such as jewelry, eyewear, footwear, apparel, swimwear, leather goods, sporting goods, toys, furniture, lifestyle goods, home goods, or the like. The 3D object element models 140 can correspond to design elements or components of the aforementioned 3D objects. The 3D object models 125 and / or the 3D object element models 140 can include attribute data. A list of attribute data that can be included in the 3D object models 125 and / or the 3D object element models 140 is shown in Table 1 below.Table 1
[0028] The attribute data illustrated in Table 1 is not intended to be an exhaustive list of attributes of the 3D object models 125 or the 3D object element models 140. A wide variety of attributes of a 3D objects and 3D object elements can be envisioned to be designed using the system 100 for a multitude of 3D objects and their 3D object elements.
[0029] The 3D object models 125 and associated object element models 140 can together form a linked multi-model data structure that the system 100 can leverage to generate intermediate design variants or a final 3D object model of a 3D object design.
[0030] Users can select an initial 3D object model 125 and can generate design variants thereof by adding, removing, or editing design elements defined in one or more object element models 140 associated with the 3D object being designed. In some embodiments, the 3D object element models 140 can include design attributes or attribute data of the design elements, such as text, fonts, and / or shapes that can be applied during engraving of jewelry objects. In some embodiments, the design attributes can correspond to aspects of a particular design element, which can be a component of an object embodied by the 3D object model 125. For example, a 3D object such as a pair of eyeglasses can include a hinge or a lens as a design element. The hinge can include design attributes such as a hinge type, a hinge direction, a bearing type, a screw size, an opening direction, or the like. The lens can include design attributes such as a frame size, a curvature, a material type, a coating, or the like. A surface of a design element can include a design attribute associated with a pattern of the surface. Thus, design attributes and attribute data can correspond to a large variety of unique properties of an object or object elements of the object.
[0031] Advantageously, the system 100 can allow users to transition through projected variants of a 3D object model 125 while that model contains customization elements (e.g., a stone setting or a chain). An algorithm can determine a projection of each customization as the transition occurs.
[0032] In some embodiments, the algorithm can generate design variants of the object or design elements that are associated with the corresponding changes made to a model of the 3D object (or the design elements linked therein) by a user. For example, a generativealgorithm can be trained in an artificial intelligence / machine learning process to generate a complete set of variants that are associated with each design change applied to a design element or to the object, such that when a user makes a design element thicker, the system 100 can determine corresponding design variants are determined which are associated with the thickness change made by the user. The algorithm can also determine inconsistencies between user inputs and the models 125 and can generate solutions to ensure a feasible design that reflects that manufactured state of the 3D object under design.
[0033] Additionally, the system 100 can automatically create 3D object models 125 or 3D object element models 140 tailored for production purposes as mirrored objects to a user designed 3D model. For example, the 3D object models 125 and / or the 3D object element models 140 can define a true-to-life representation of the object or the design element that adhere to or otherwise include manufacturing specifications and parameter settings. For jewelry object design, such manufacturing specifications and parameter settings can include a minimum casting thickness, a prong length for a gemstone setting, a hinge construction for a bracelet or earring. For eyewear object design, the manufacturing specifications and parameter settings can include a lens curvature, dimension requirements for computer numerical control (CNC) or injection molding manufacturing methods. For apparel object design, the manufacturing specifications and parameter settings can include a specifications and settings associated with forming or generating a pattern of the apparel object that can be formed as component pieces and assembled together to form the apparel object.
[0034] Thus, the system 100 can be configured to generate files of production-ready 3D object models 120 or 3D object element models 140 that can be optimized for manufacturing of the 3D object. The system 100 can capture a user’s design customizations within a production-equivalent file including the 3D object model 125 and its associated component element model 140 in as-manufactured specifications. In some embodiments, the system 100 can utilize and generate object model files such as STL, OBJ, FBX, DAE, 3DS, IGES, STEP, VRML, X3D, AMF and / or 3MF. The system 100 can utilize and generate 3D object model files that have surface geometry encoded as approximate meshes, precise meshes, and / or constructive solid geometry.
[0035] In some embodiments, the 3D object models 125 and / or the object element models 140 can be generated using machine learning techniques. For example, projected variations associated with a 3D object model 125 and / or an object element model 140 canbe used as training data in a machine learning process. Projected variants can exist as a possible state for a base 3D object or a 3D object element. In some embodiments, base 3D objects can be combined and / or can be built using 3D object elements.
[0036] As used herein, the term state can refer to an instance of a design iteration of either the object (and its associated object model 125) or an object element (and its associated object element model 140). Traditionally, design states are defined by creating a 3D object that matches the design state created by the user. The created design state is then mapped back to the base object to allow for transitions to occur therefrom. Alternatively, the system 100 described herein can utilize generative artificial intelligence and machine learning techniques and / or algorithms to create and provide projected variants automatically from a single base model by creating a pre-trained model with a base model as the input and the project variants as the output. In some embodiments, the algorithms can include but are not limited to diffusion models. Classification models can be used to group and label projected variants to allow for automatic ingestion into the user interface 135 of the system 100.
[0037] In some embodiments, the algorithms can be configured to receive an image of a 3D object and to generate a 3D object model 125 of the 3D object that includes linked 3D object element models 140 associated with 3D design elements or components of the 3D object. In this way, the algorithms can be configured to automatically identify the 3D object and the 3D design elements of the 3D object and to deconstruct the 3D object into the associated 3D design elements. For example, a user can upload an image of an engagement ring (e.g., a plain ring with a single large stone set therein). The algorithms of the system 100 can generate a 3D object model 125 and can convert the stone and the stone setting into separate 3D object element models 140 that are linked within the 3D object model 125 of the engagement ring. This automatic identification of objects and object elements and generation of corresponding 3D object models 125 with linked 3D object element models 140 can enhance the user’s design experience to allow iteration of design elements (e.g., object elements, such as the stone shape and size or the stone setting type) so that the generated 3D object model 125 of the engagement ring is a productionready model suitable to be immediately manufactured therefrom after the user finishes designing the engagement ring.
[0038] For example, in some embodiments the system 100 can include one or more large reconstruction models (LRM) to generate a 3D object model 125 from image data of a 3Dobject. In some embodiments, a transformer-based encoder-decoder architecture for learning 3D representations of 3D objects from image can be included that can receive an image as input and regresses a neural radiance field (NeRF) in the form of a triplane representation. In some embodiments, the LRM can utilize pre-trained visual transformer distillation with no labels (DINO) as the image encoder to generate the image features. The LRM can learn an image-to-triplane transformer decoder to project the 2D image features onto the 3D triplane via cross-attention and model the relations among the spatially-structured triplane tokens via self-attention. The output tokens from the decoder can be reshaped and upsampled to the final triplane feature maps. Images can be rendered at arbitrary views by decoding the triplane feature of each point with an additional shared multi-layer perception (MLP) to get color and density and to also perform volume rendering. Advantageously, the LRM is highly scalable and efficient. The triplane NeRF can be a concise and scalable 3D representation since it is computationally friendly compared to other 3D representations, such as volumes and point clouds. It also has a better locality with respect to the image input compared to tokenizing the NeRF’s model weights. The LRM can be trained by minimizing the difference between the rendered images and ground truth images at various views, without excessive 3D-aware regularization or delicate hyper-parameter tuning, allowing the model to be very efficient in training and adaptable to a wide range of multi-view image datasets.
[0039] FIG. 2 illustrates an earring 200 that includes various design components which can be easily designed for manufacturing using the system 100 and the object models 125 configured therein. For example, to manufacture earring 200 including a pair of earring hoops 205 with gemstones 210 set in small pendants 215 that attach to the bottom 220 of the hoops 205 requires multiple object element models 140 that are associated with the design elements of the earring 200 that must be integrated with an overall object model 125 of the earring 200. A first 3D object element model 140 can include the hoop 205 with the pendant 215 attached or the post 225. The first 3D object element model 140 must adhere to manufacturing requirements such as minimum thicknesses of specific elements (e.g., the ring 230 on the bottom of the hoop 205) in order to properly cast the hoop 205 without defects. A second 3D object element model 140 for the pendant 215 can include no gemstone 210 in it and the prongs 235 can be within a specific size range for the size of the gemstone 210. The second 3D object element model 140 must adhere to manufacturing requirements such as extended length of the prongs 235, beyond the lengththey will be on the finished product, to ensure gemstones 210 can be set using standard gemstone setting methodologies. A third 3D object element model 140 can include a position of the post 225 but without the post 225 in any other 3D object component model. A fourth 3D object component model can include a type of back 240 of the earring 200 but without the back 240 in any other 3D object component model. In some embodiments, all design elements can be included in a single object element model 140.
[0040] A user without expert knowledge of jewelry construction and manufacturing would not know these manufacturing specifications and requirements. When designing a 3D product or object, a non-expert user is only able to conceptualize and envision what the full finished product looks like (i.e., with an earring post and with stones in the settings and with the prongs appearing as they would in the finished product) and as such would not give consideration to constraints or restrictions that may be associated with manufacturing of object components or how those affect the resulting manufacturability of the desired 3D object or product.
[0041] As used herein, the terms “production-ready”, “manufacturing-ready,” or “true-to- life” as used to describe the 3D object models 125 (and / or the 3D object element models 140) can describe a model file that can be generated by the system 100 and immediately used in a manufacturing device or process, such as an additive manufacturing machine or process, a CNC machine or process, or an automated sewing machine or process. In some embodiments, the 3D object models 125 (and / or the 3D object element models 140) can include “production-ready”, “manufacturing-ready,” or “true-to-life” representations of objects or object elements suitable for use in nanomanufacturing environments or processes. The terms “production-ready”, “manufacturing-ready,” or “true-to-life” refer to a condition, quality, or property of the 3D object models 125 (and / or the 3D object element models 140) in which no further post processing is needed prior to manufacturing. A user designs an object or object element using the system 100, in a “true-to-life” setting or environment, and the system 100 can automatically converts their design into something that can be manufactured with an automated device. For example, consider designing a pair of eyeglasses. The system 100 can deconstruct the eyeglass object into object elements such as lenses, temples, temple tips, hinges, bridge, nose pads, or the like) and can output a 3D object model 125 (and its corresponding 3D object element model 140) in a model file that includes “production-ready”, “manufacturing-ready,” or “true-to-life” dimensions for the aforementioned components of the eyeglasses so that it can be manufactured automatically.
[0042] FIGS. 3 and 4 show a necklace 300 which can be associated with a true-to-life 3D object model 125 using the systems and methods described herein. The necklace 300 can include a number of components 305-335. A 3D object model 125 of the necklace 300 must include and / or otherwise be linked to a 3D object element model 140 for the components 305-335. The 3D object model 125 of the necklace 300 and the 3D object element models 140 of the components 305-335 can be production-ready or manufacturing-ready 3D models, meaning that the 3D object model 125 of the necklace 300 and the 3D object element models 140 of the components 305-335 adhere to specific manufacturing requirements or specifications. In the example of the necklace 300, those can include dimensions, sizing of components 305-335 to fit stones, sizing of components 305-335 to fit chains 340-350, depth restrictions for debossed elements, or the like.
[0043] FIG. 5 illustrates an exemplary user interface 135 that can be provided in the display 130 of the computing device 105 of system 100 shown in FIG. 1. As shown in FIG. 5, the object being designed is a ring. The user has selected a ring from a list of object types provided in the user interface 135. Responsive to selecting the ring as they object type, the system 100 can instantiate a 3D object model 125 of the ring as a starting point for designing aspects of the ring. The 3D object model 125 can include all projected variations of the object that can be associated with one or more components of the object and are associated with 3D object element models 140 that are linked or otherwise associated with the 3D object model 125. The projected variations can include all variations of the object that are associated with the design elements or components of the object. The 3D object model 125 can transition as a projected variation based on modifications to design elements of the 3D object. In doing so the 3D object model 125 is altered based on how the project variation alters the current state of the 3D object model 125. This transitioning is applied across all variations and each movement towards a projected variation will also incorporate already applied transitions into the 3D object model 125. The alterations that occur are classified into natural language groupings and these groupings are presented to a user within the user interface 135 along with the projected variation of the 3D object model to allow for non-expert design of that model. In some embodiments, the system 100 can include one or more design wizards, apps, widgets, or similar computer-executable functionality enabled through a graphical userinterface as described herein that are configured to guide a user through a design and provide suggestions responsive to any of the variants generated in the design process. For example, the design wizards, apps, or widgets can be configured to generate a suggestion for adding a new object element or editing an existing object element to better conform with a particular manufacturing method. The design wizards, apps, or widgets can be configured to aid novice users performing object design using the system 100 so that an intuitive next design step, configuration, variant, or object element can be presented for user consideration and can receive inputs to apply the generated next design step, configuration, variant, or object element to their 3D object model 125 and / or 3D object element model 140.
[0044] In some embodiments, users can specify a manufacturing method by which the 3D object being designed will be manufactured. For example, a user designing a ring, can specify that the ring will be manufactured via casting. A user can select a manufacturing method from the user interface 135 and the 3D object model 125 and / or the 3D object element models 140 can be generated such that the manufacturing specifications associated with the selected manufacturing method (e.g., casting the ring) will be included as attribute data associated with the ring over all (as captured in the 3D object model 125) or with design elements of the ring (as captured in the 3D object element models 140). Examples of manufacturing methods that a user can select via the user interface 135 and can be applied to the 3D object models 125 and 3D object element models 140 can include casting, injection molding, additive manufacturing, CNC machining, welding, or an automated sewing process.
[0045] In some embodiments, the 3D object model 125 (and it’s linked 3D object element models 140) can be configured to be received and utilized by automated manufacturing machines or processes configured to receive model files, such as STL, STP, STEP, OBJ, IGES files, as digital inputs. Such automated manufacturing machines or processes can include CNC machines or processes, robotic assembly machines or processes, programmable machining automation machines or processes, automated assembly machines or processes, additive manufacturing machines or processes, 3D printing machines or processes, automated sewing machines or processes, automated casting machines or processes, injection molding machines or processes, or the like.
[0046] The user interface 135 can include an object projection 500 in which a projected variation 505 of the object being designed can be displayed. The projected variation 505can be modified responsive to user inputs provided in regard to parameters of the object or parameters of components of the object. For example, a parameter of the object can include a material. The user interface 135 can include a material selection 510, in which a material parameter can be assigned to the object. Responsive to selecting a material parameter, the projected variation 505 can display the selected material parameter.
[0047] The user interface 135 can include functionality configured to convert multiple, complex design actions into fewer, simplified actions which can be in part automated by the functionality of the system 100 and the user interface 135. For example, manually making portions of an object thicker is a complex task that can required a detailed understanding of modifying edges and vertices associated with the 3D object or object elements of the 3D object. The system 100 described herein can simplify such tasks by grouping tasks such as selecting edges, extruding the edges, and applying movement inputs / directions into a simple action that lets novice users achieve the desired thickness modification more easily. Other complex actions, which would normally require a high- degree of technical understanding of geometric 3D modeling, such as pinching, inflating, or twisting the 3D object are similarly simplified by the system 100 described herein.
[0048] In some embodiments, the user interface 135 can be configured to receive inputs from a user via a mouse or stylus input, an audio or verbal input, or a gesture input. In some embodiments, computing devices of the system 100 can include a microphone to capture an audible or verbal input and / or a camera to capture a gesture input.
[0049] In some embodiments, the user interface 135 can display restricted areas within a 3D object model 125 and / or a 3D object element model 140. For example, the restricted area may be displayed visually within the user interface 135. User-provided inputs or actions related to object elements within the restricted areas may be ignored by the user interface 135. Advantageously, the presentation of restricted areas relative to nonrestricted areas can help guide novice design users to interact with aspects of the 3D object model 125 and / or the 3D object element model 140 which are configurable and unrestricted.
[0050] The user interface 135 can also include an object component list 515. The object component list 515 can include a list of one or more components and corresponding component parameters. Each component parameter can have a range of values. For example, as shown in FIG. 5, the object component list 515 can include parameters associated with a first component (e.g., a signet of the ring) and a second component (e.g.,a band of the ring). The signet component 520, which was previously selected as a “circular signet” can have a range of values 525 corresponding to a size of the circular signet. Responsive to adjusting or modifying a selection of the parameter values associated with a component, the projected variation 505 can be displayed to illustrate the object with the selected parameter value associated with the component. In this way, a user can easily design and iterate on a projected variation of the object by selecting parameter values associated with the object or components of the object.
[0051] FIG. 6 is a process diagram illustrating an exemplary embodiment of a method 600 for designing three-dimensional objects using the system of FIG. 1. In some embodiments, the method 600 can include more or less operations or can include performing operations in a different order than those shown in FIG. 6. In some embodiments, one or more operations of the method 600 can be performed iteratively.
[0052] At 605, first data can be received by a data processor of a computing device. The first data can characterize a first 3D model of an object that a user wishes to design. The 3D model can be selected from a plurality of object models that can be provided in a user interface. In some embodiments, the first 3D model can be a previously modified 3D model that has been saved in a memory or storage device of the system of FIG. 1. A user can provide an input to the user interface to select the first 3D model from a list or index of 3D object models. In some embodiments, the first 3D model can include a template model of the object that can include a predetermined number of object model elements and corresponding predetermined attribute data.
[0053] At 610, second data can be determined by the data processor characterizing a plurality of object element models associated with the first 3D model. The plurality of object element models can characterize attribute data of one or more design elements of the object. In some embodiments, the object element models can be specifically associated with a particular 3D model and thus, the 3D model can specify the object element models (and corresponding attribute data) included in the 3D model and associated with the object.
[0054] At 615, the data processor can provide the first 3D model and the attribute data via the user interface. In some embodiments, the attribute data can also include attribute data associated with the first 3D model (and thus the object being designed) and may not be limited to attribute data of the object element models corresponding to the design elements of the object.
[0055] At 620, the data processor can receive third data characterizing input modifying the attribute data of at least one design element of the 3D object. The third data can be received via the user interface. In some embodiments, the third data can characterize an input modifying the first 3D model of the selected object and may not be limited to inputs modifying attribute data of a design element. In some embodiments, a user can select a 3D object model 125 corresponding to a 3D object they wish to design. The 3D object model file 125 can include a first number of linked 3D object element models 140 associated with object elements or components of the 3D object. The third data can include a second number of 3D object element models 140, which were not previously linked to the 3D object model 125 and which correspond to a 3D object element or component the user wishes to add or otherwise link to the originally selected 3D object model 125. In this way, a 3D object model 125 can be updated to include new, additional, or alternative object elements (and their corresponding 3D object element models 140) so as to provide an enhanced design experience beyond what may be provided in some 3D object models 125. Once added to the 3D object model 125, the 3D object element models 140 corresponding to the new, additional, or alternative object elements, can be linked to the 3D object model 125.
[0056] At 625, the data processor can determine a second 3D model of the object based on the third data provided as an input to the user interface. The second 3D model can be a projected variant of the first 3D model and can be generated based on the third data received at 620 to modify the attribute data of the design element.
[0057] At 630, the data processor can provide the second 3D model of the object determined at 625 for display via the user interface. The second 3D model can be a projected variant of the 3D object model that has been modified based on the inputs received at 620.
[0058] At 635, the user can iterate with the second 3D object model to provide additional inputs via the user interface and view the resulting projected variation determined based on the additional inputs. For example, a user can provide a second instance of the third data modifying attributes of a design element or the object itself and based on the second instance of third data, the data processor can iteratively determine a second instance of the second 3D model as a subsequent projected variant of the first instance of the second 3D model generated based on the second instance of the third data modifying attributes of a design element or the object itself. The second instance of the second 3D model can thenbe provided for display via the user interface. In this way, the user can iteratively design, modify designs, create, remove, add aspects of the object, such as design elements of the object or the object itself.
[0059] FIG. 7 illustrates another exemplary embodiment of a user interface 135 of the system 100 described herein. As shown in FIG. 7, the user interface can include an object design menu portion 700, an object design sub-menu portion 710, a view control portion 720, an object view portion 730, a file management and interface operation portion 740, and one or more tool tip portions 750. The number and specific arrangement of portions 700-750 can vary and may not be limited to the number and arrangement shown in FIG. 7. In some embodiments, the user interface 135 can include more or less of the portions 700- 750 or can include portions 700-750 located in different locations of the user interface 135 than shown in the embodiment of FIG. 7.
[0060] The overall layout of the user interface 135 can be configured to aid novice users designing complex 3D objects with little or no previous experience using 3D design interfaces and to provide a comprehensive environment for designing a large variety of design elements of a 3D object. A user can interact with any of portions 700-720 and 750 and the resulting variant of the 3D object 733 can be projected or displayed in the object view portion 730. A user can iteratively interact with a variety of design elements, functionality, and attribute data and the display of the object 733 can be updated in the object view portion 730 in real-time. Because the system 100 is configured to generate the projected variant of the object 733 as production-ready or manufacturing-ready variant, the user’s design experience can be enriched trusting that the object as manufactured would accurately resemble the variant displayed in the object view portion 730.
[0061] As further seen in FIG. 7, the object design menu 700 can include a number of menu selections associated with designing the object 733. For example, the object design menu 700 can include a Home menu selection 701, a Design menu selection 702, a Basic menu selection 703, a Materials menu selection 704, an Al (artificial intelligence) menu selection 705, an Elements menu selection 706, a Text menu selection 707, a Components menu selection 708, and an Applied menu selection 709. Responsive to selecting a menu selection (701-709) in the object design menu 700, a contextually related selection of submenu items can be provided in the object design sub-menu portion 710.
[0062] The Home menu selection 701 can include functionality configured to select a 3D object model 125 and / or 3D object element model 140, save / save-as model files 125, 140,print a projected variant of the object 733, or configured one or more settings of the user interface 135 and / or the system 100. The Home menu selection 701 can include a list of 3D object models 125 that the user has previously edited. In some embodiments, the Home menu selection 701 can also include 3D object models 125 that have been shared with a user by others. The 3D object models 125 can include functionality associated with commenting, providing and receiving feedback, as well as review and approval of the 3D object models 125. In some embodiments, the Home menu selection 701 can include a list of 3D object models 125 listed by natural language. Each 3D object model 125 can also include a hierarchical tree structure showing the 3D object element models 140 that are linked or otherwise associated with the 3D object model 125. The listing of 3D object elements models 140 can be provided in a natural language corresponding to the natural language of the 3D object model 125.
[0063] The Design menu selection 702 can be configured to present design elements of the object 733 for user interaction and design iteration. For example, as shown in FIG. 7, a handbag is being designed. Design or object elements 711A-711G are each associated with a 3D object element model 140 that is linked to the 3D object model associated with the handbag 733. For example, the 3D object model 125 for the handbag 733 can include 3D object element models 140 associated with a Bag height (711 A), a Bag width (71 IB), a Bag depth (711C), a Strap length (71 ID), a Strap width (71 IE), a Buckle size (71 IF), and a Pocket size (711G). Each of the design or object elements 711A-71 1G of the bag 733 can include a user input mechanism 712 (such as a slider or the like) and an attribute data value display 713. The range of attribute data values presented via the input mechanism 712 can be determined based on the manufacturing specifications of the object 733 and the various design or object elements 711A-711G that are included in the object 733 (or have been added to the object model 125 by the user). In this way, the range of attribute data values can be limited to illustrate the projected variant of the object 733 in a condition that correlates to a production-ready or manufacturing-ready state. In some embodiments, the Design menu selection 702 can include functionality to allow a user to edit or alter the 3D object model 125, such as changing the size of the 3D object or changing the shape of the 3D object.
[0064] The Basic menu selection 703 can include functionality configured to adjust or manipulate aspects of the design. For example, in some embodiments, the Basic menu selection 703 can include functionality configured to name a 3D object model 125corresponding to a design, select options related to the 3D object model 125, such as display options.
[0065] The Materials menu selection 704 can include functionality configured to adjust or manipulate material selections of the object 733 or one or more of the design elements or components of the object 733. In embodiments, the Materials menu selection 704 can include functionality related to materials of the 3D object or design components or elements of the 3D object, such as specifying a material type or a finish treatment of the 3D object or design components or elements of the 3D object.
[0066] The Al menu selection 705 can include functionality configured to generate new designs for a 3D object or design components or elements of the 3D object. For example, in some embodiments, the Al menu selection 705 can include functionality for design iteration activity via prompt-response interfaces, uploading image data for use generating 3D object models 125, and other Al-based control tools for managing aspects of the resulting outputs.
[0067] The Elements menu selection 706 can include functionality configured to manipulate 3D design elements or components that are associated with the 3D object being designed. The Elements menu selection 706 can include functionality to visualize the 3D design elements or components that are available for inclusion in the 3D object, such as 3D design elements or components that are generated by a user, as well as standard or template 3D design elements or components (e.g. buckles or stones). It also has tools for editing the 3D design elements or components (e.g. changing a size, applying an engraving, editing the engraving) and tools for movements / placement of the 3D design elements or components included in the 3D object being designed.
[0068] The Text menu selection 707 can include functionality configured to input, adjust or manipulate, delete text associated with the object 733 or one or more of the 3D design elements or components of the object 733. The text can be applied to the 3D object or the 3D design elements or components via engraving or embossing.
[0069] The Components menu selection 708 can include functionality configured to provide a selection of hardware that can be added to a design of the 3D object as 3D design elements or components. Once added via the Components menu selection 708, a user can manipulate the design of the 3D design elements or components via the Elements menu selection 706.
[0070] The Applied menu selection 709 can include functionality configured to provide a summary display of the 3D object based on all attributes a user has applied to their design of the 3D object. The summary display can include a full, production-ready, view of the 3D object as embodied by the 3D object model 125 (and it’s linked 3D object element models 140). The Applied menu selection 709 can also include editing tools to editing aspects of the 3D object and / or the 3D design elements or components.
[0071] As described earlier, the object design sub-menu portion 710 can provide functionality that is contextually related to a user selection provided in the object design menu portion 700 and thus can change depending on the user’s input to the object design menu portion 700.
[0072] The view control portion 720 can include functionality configured to adjust or manipulate aspects of the view of the object 733 that is projected for display in the object view portion 730. For example, as shown in FIG. 7, the view control portion 720 includes a view perspective selection 721. The view perspective selection 721 can be configured to receive user inputs and to provide front (as shown), rear, side, top, bottom, and perspective views of the object 733 in the object view portion 730. The view control portion 720 can also include a view lock selection 722. A user can lock (as shown) or unlock a view of the object 733 in the object view portion 730.
[0073] The user interface 135 can also include an object view portion 730 in which the current projected variant of the object 733 is displayed based on the attribute data values, menu item selections, or input provided by the user in any of portions 700-20 and 750 of the user interface 135. For example, as shown in FIG. 7, the object view portion 730 can include axes 731 and 733. In some embodiments, the axes 731, 733 can include data values 732, 734 that correspond to units of measure, dimensions, borders, or boundaries of the object 733.
[0074] The object 733 displayed in object view portion 730 can be manipulated by the user inputs provided by the user via a mouse or stylus, an audible or verbal command, a touch gesture as applied to a touch-screen display, or an observed gesture captured via a sensor, such as a camera, or an augmented reality device. For example, a user can provide inputs to cause a view of the displayed object 733 to select, highlight, zoom, pan, rotate, move, animate, stamp, measure, explode, section, or reset the projected variant of the object 733 displayed in the object view portion 730.
[0075] In some embodiments, a user can confirm the resulting projected orientation with a second input that is different than the first input to cause the change in the projected orientation. For example, as shown in FIG. 7, the user interface 135 can include a tool tip portion 750. The tool tip portion 750 can provide the user with a hint or instruction to guide their design experience. As shown in FIG. 7, the tool tip portion 750 informs the user to “Click and Hold to Rotate, Double Click to Place Customization.” Thus, the tool tip portion 750 can inform the user about the ability to rotate the projected variant of the object 733. A variety of contextually relevant tool tips can be generated and provided throughout the design experience within the tool tip portion 750.
[0076] As further shown in FIG. 7, the user interface can include a file management and operation portion 740. The file management and operation portion 740 can be configured to allow a user to download a model file including the attribute data values of the projected variant of the object 733 as currently designed based on the settings of portions 700-720 (and 750 if applicable) and as viewed in the object view portion 730. The file management and operation portion 740 can also include functionality configured to provide “Help” or user assistance regarding functionality, use, and operation of the user interface 135 and / or the system 100. The file management and operation portion 740 can also include functionality configured to close or otherwise exit the user interface 135 and / or the system 100.
[0077] FIG. 8 is a block diagram 800 of a computing system 810 suitable for use in implementing the computerized components described herein, such as a computing devices 105, 115, or 120 shown in system 100 of FIG. 1. In broad overview, the computing system 810 includes at least one processor 850 for performing actions in accordance with instructions, and one or more memory devices 860 and / or 870 for storing instructions and data. The illustrated example computing system 810 includes one or more processors 850 in communication, via a bus 815, with memory 870 and with at least one network interface controller 820 with a network interface 825 for connecting to external devices 830. The one or more processors 850 are also in communication, via the bus 815, with each other and with any FO devices at one or more I / O interfaces 840, and any other devices 880. The processor 850 illustrated incorporates, or is directly connected to, cache memory 860. Generally, a processor will execute instructions received from memory. In some embodiments, the computing system 810 can be configured within acloud computing environment, a virtual or containerized computing environment, and / or a web-based microservices environment.
[0078] In more detail, the processor 850 can be any logic circuitry that processes instructions, e.g., instructions fetched from the memory 870 or cache 860. In many embodiments, the processor 850 is an embedded processor, a microprocessor unit or special purpose processor. The computing system 810 can be based on any processor, e.g., suitable digital signal processor (DSP), or set of processors, capable of operating as described herein. In some embodiments, the processor 850 can be a single core or multicore processor. In some embodiments, the processor 850 can be composed of multiple processors.
[0079] The memory 870 can be any device suitable for storing computer readable data. The memory 870 can be a device with fixed storage or a device for reading removable storage media. Examples include all forms of non-volatile memory, media and memory devices, semiconductor memory devices (e.g., EPROM, EEPROM, SDRAM, flash memory devices, and all types of solid-state memory), magnetic disks, and magneto optical disks. A computing device 810 can have any number of memory devices 870.
[0080] The cache memory 860 is generally a form of high-speed computer memory placed in close proximity to the processor 850 for fast read / write times. In some implementations, the cache memory 860 is part of, or on the same chip as, the processor 850.
[0081] The network interface controller 820 manages data exchanges via the network interface 825. The network interface controller 820 handles the physical, media access control, and data link layers of the Open Systems Interconnect (OSI) model for network communication. In some implementations, some of the network interface controller’s tasks are handled by the processor 850. In some implementations, the network interface controller 820 is part of the processor 850. In some implementations, a computing device 810 has multiple network interface controllers 820. In some implementations, the network interface 825 is a connection point for a physical network link, e.g., an RJ 45 connector. In some implementations, the network interface controller 820 supports wireless network connections and an interface port 825 is a wireless Bluetooth transceiver. Generally, a computing device 810 exchanges data with other network devices 830, such as computing device 830, via physical or wireless links to a network interface 825. In someimplementations, the network interface controller 820 implements a network protocol such as LTE, TCP / IP Ethernet, IEEE 802.11, IEEE 802.16, Bluetooth, or the like.
[0082] The other computing devices 830 are connected to the computing device 810 via a network interface port 825. The other computing device 830 can be a peer computing device, a network device, a server, or any other computing device with network functionality. In some embodiments, the computing device 830 can be a network device such as a hub, a bridge, a switch, or a router, connecting the computing device 810 to a data network such as the Internet.
[0083] In some uses, the I / O interface 840 supports an input device and / or an output device (not shown). In some uses, the input device and the output device are integrated into the same hardware, e.g., as in a touch screen. In some uses, such as in a server context, there is no I / O interface 840 or the I / O interface 840 is not used. In some uses, additional other components 880 are in communication with the computer system 810, e.g., external devices connected via a universal serial bus (USB).
[0084] The other devices 880 can include an I / O interface 840, external serial device ports, and any additional co-processors. For example, a computing system 810 can include an interface (e.g., a universal serial bus (USB) interface, or the like) for connecting input devices (e.g., a keyboard, microphone, mouse, or other pointing device), output devices (e.g., video display, speaker, refreshable Braille terminal, or printer), or additional memory devices (e.g., portable flash drive or external media drive). In some implementations an I / O device is incorporated into the computing system 810, e.g., a touch screen on a tablet device. In some implementations, a computing device 810 includes an additional device 880 such as a co-processor, e.g., a math co-processor that can assist the processor 850 with high precision or complex calculations.
[0085] Exemplary technical effects of the systems and methods described herein include, by way of non-limiting example, providing an intuitive user interface for non-expert designers of 3D objects or products to efficiently create true-to-life 3D models of the 3D object or product. Additionally, the 3D models described herein can include a unique arrangement of linked object component models that provide an interrelated arrangement of object elements that can be interacted with separately or together as a single 3D object. The object model and the linked object element models described herein can include manufacturing parameters, requirements, specifications, and / or constraints so that the object can be easily supplied to a particular manufacturing machine or process without theneed to perform additional processing of the model files for use in the particular manufacturing machine or process. The systems and methods herein can reduce the amount of time to design a ready-to-manufacture 3D object and require minimal user training to utilize.
[0086] Certain exemplary embodiments have been described to provide an overall understanding of the principles of the structure, function, manufacture, and use of the systems, devices, and methods disclosed herein. One or more examples of these embodiments have been illustrated in the accompanying drawings. Those skilled in the art will understand that the systems, devices, and methods specifically described herein and illustrated in the accompanying drawings are non-limiting exemplary embodiments and that the scope of the present invention is defined solely by the claims. The features illustrated or described in connection with one exemplary embodiment may be combined with the features of other embodiments. Such modifications and variations are intended to be included within the scope of the present invention. Further, in the present disclosure, like-named components of the embodiments generally have similar features, and thus within a particular embodiment each feature of each like-named component is not necessarily fully elaborated upon.
[0087] Approximating language, as used herein throughout the specification and claims, may be applied to modify any quantitative representation that could permissibly vary without resulting in a change in the basic function to which it is related. Accordingly, a value modified by a term or terms, such as “about,” “approximately,” and “substantially,” are not to be limited to the precise value specified. In at least some instances, the approximating language may correspond to the precision of an instrument for measuring the value. Here and throughout the specification and claims, range limitations may be combined and / or interchanged, such ranges are identified and include all the sub-ranges contained therein unless context or language indicates otherwise.One skilled in the art will appreciate further features and advantages of the invention based on the above-described embodiments. Accordingly, the present application is not to be limited by what has been particularly shown and described, except as indicated by the appended claims. All publications and references cited herein are expressly incorporated by reference in their entirety.
Claims
WHAT IS CLAIMED IS:
1. A method comprising: receiving, by a data processor, first data characterizing a first three-dimensional (3D) model of an object selected from a plurality of object models provided via a user interface; determining, by the data processor, second data characterizing a plurality of object element models associated with the first 3D model, the plurality of object element models characterizing attribute data corresponding to one or more design elements of the object; providing, by the data processor, the first 3D model and the attribute data to be displayed via the user interface; receiving, by the data processor, third data characterizing an input modifying the attribute data of at least one design element of the 3D object, the input received via the user interface; determining, by the data processor, a second 3D model of the object based on the third data, wherein the second 3D model is a projected variant of the first 3D model generated based on the modified attribute data of the at least one design element of the object; and providing, by the data processor, the second 3D model of the object as the projected variant for display via the user interface.
2. The method of claim 1, wherein the plurality of object models are categorized in the user interface based on an object type.
3. The method of claim 2, wherein the one or more design elements of the object are categorized in the user interface based on the object type.
4. The method of any one of claims 1-3, wherein the attribute data includes manufacturing specification data associated with manufacturing the at least one design element and the object.
5. The method of any one of claims 1-4, wherein the projected variant of the first 3D model is generated based on values of the attribute data of the at least one design element, the attribute data values included in the plurality of object element models.
6. The method of any one of claims 1-5, wherein the object comprises an object of jewelry, eyewear, footwear, apparel, swimwear, leather goods, sporting goods, toys, furniture, lifestyle goods, home goods, or components thereof.
7. The method of any one of claims 1-6, wherein the second 3D model is a true-to- life visual representation of the object, the true-to-life representation including dimensions of the object as manufactured.
8. The method of any one of claims 1-7, wherein the projected variant is determined based on at least one predictive algorithm trained in a machine learning process to generate the second 3D model based on attribute data associated with at least one design element of the 3D object included in the first and / or second 3D model.
9. The method of any one of claims 1-8, wherein the third data characterizing the input modifying the attribute data is received via the user interface via at least one of a mouse or stylus input, an audible input, and a gesture input.
10. The method of any one of claims 1-9, further comprising receiving fourth data characterizing a second input provided via the user interface and selecting a second design element of the 3D object from a plurality of design elements provided via the user interface, and incorporating the second design element into the second 3D model so as to link an object element model associated with the second design element to the second 3D model.
11. A system comprising: a computing device comprising a display including a user interface; and a server device communicably coupled to the computing device, the server device comprising a memory storing non-transitory computer-readable instructions and a plurality of object models; and at least one data processor communicatively coupled to the memory and the display, the at least one data processor configured to execute the instructions, which when executed cause the at least one data processor perform operations comprising: receiving first data from the computing device, the first data characterizing a first three-dimensional (3D) model of an object selected from a plurality of object models provided via the user interface of the computing device; determining second data characterizing a plurality of object element models associated with the first 3D model, the plurality of object elementmodels characterizing attribute data corresponding to one or more design elements of the object; providing the first 3D model and the attribute data to the computing device, the providing causing the first 3D model and the attribute data to be displayed via the user interface of the computing device; receiving third data characterizing an input provided via the user interface, the input modifying the attribute data of at least one design element of the object; determining a second 3D model of the object based on the third data, wherein the second 3D model is a projected variant of the first 3D model generated based on the modified attribute data of the at least one design element of the object; and providing the second 3D model of the object to the computing device, the providing causing the second 3D model of the object to be displayed as the projected variant via the user interface of the computing device.
12. The system of claim 11, wherein the first plurality of object models are categorized in the user interface based on an object type.
13. The system of claim 12, wherein the one or more design elements of the object are categorized in the user interface based on the object type.
14. The system of any one of claims 11-13, wherein the attribute data includes manufacturing specification data associated with manufacturing the at least one design element and the object.
15. The system of any one of claims 11-14, wherein the projected variant of the first 3D model is generated based on values of the attribute data of the at least one design element, the attribute data values included in the plurality of object element models.
16. The system of any one of claims 11-15, wherein the object comprises an object of jewelry, eyewear, footwear, apparel, swimwear, leather goods, sporting goods, toys, furniture, lifestyle goods, home goods, or components thereof.
17. The system of any one of claims 11-16, wherein the second 3D model is a true-to- life representation of the object, the true-to-life representation including dimensions of the object as manufactured.
18. The system of any one of claims 11-17, wherein the computing device and the server device are communicably coupled via a network in a software-as-a-service configuration.
19. The system of any one of claims 11-18, wherein the projected variant is determined based on at least one predictive algorithm trained in a machine learning process to generate the second 3D model based on attribute data associated with at least one design element of the 3D object included in the first and / or second 3D model.
20. The system of any one of claims 11-19, wherein the third data characterizing the input modifying the attribute data is received via the user interface via at least one of a mouse or stylus input, an audible input, and a gesture input.
Citation Information
Patent Citations
Product visualization system
US20170011451A1
Digital Traveler - Tracking and Identification for Additive Manufacturing
US20210256580A1
Deep-learning generative model
US20220101105A1
Cited By
Model digital generation type design method and device based on continuous implicit function
CN121788728A
Generating meshes by decoding volume representations
US20260045041A1