US2023056614A1PendingUtilityA1

Conversion of geometry to boundary representation with facilitated editing for computer aided design and 2.5-axis subtractive manufacturing

Assignee: AUTODESK INCPriority: Nov 9, 2018Filed: Sep 14, 2022Published: Feb 23, 2023
Est. expiryNov 9, 2038(~12.3 yrs left)· nominal 20-yr term from priority
G06F 2111/20G06F 2113/10G06F 2111/04G06F 30/28G06F 30/23G05B 19/4099G06F 30/17G05B 2219/35106G05B 19/4097G06T 17/20G06F 2119/18G06F 30/00G06F 2111/06Y02P90/02
63
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Methods, systems, and apparatus, including medium-encoded computer program products, for computer aided design of physical structures using data format conversion (e.g., of output(s) from generative design processes) and user interface techniques that facilitate the production of 3D models of physical structures that are readily usable with 2.5-axis subtractive manufacturing, include: modifying smooth curves, which have been fit to contours representing discrete height layers of an object, to facilitate the 2.5-axis subtractive manufacturing; preparing an editable model of the object using a parametric feature history, which includes a sketch feature, to combine extruded versions of the smooth curves to form a 3D model of the object in a boundary representation format; reshaping a subset of the smooth curves responsive to user input with respect to the sketch feature; and replaying the parametric feature history to reconstruct the 3D model of the object, as changed by the user input.

Claims

exact text as granted — not AI-modified
1 - 19 . (canceled) 
     
     
         20 . A system comprising:
 a display device;   one or more data processing apparatus coupled with the display device; and   a non-transitory storage medium coupled with the one or more data processing apparatus, the non-transitory storage medium encoding:
 program code that, when run, causes the one or more data processing apparatus to obtain a first model of an object to be manufactured using a 2.5-axis subtractive manufacturing process, wherein the first model comprises smooth curves fit to contours representing discrete height layers of the object to be manufactured using the 2.5-axis subtractive manufacturing process; 
 program code that, when run, causes the one or more data processing apparatus to modify at least one of the smooth curves to facilitate the 2.5-axis subtractive manufacturing process, including program code to detect at least a portion of a first smooth curve for a first of the discrete height layers that is almost coincident with at least a portion of a second smooth curve for a second of the discrete height layers, and program code to replace the at least a portion of the first smooth curve for the first of the discrete height layers with the at least a portion of the second smooth curve for the second of the discrete height layers; and 
 program code that, when run, causes the one or more data processing apparatus to provide an editable three-dimensional model of the object for use in manufacturing a physical structure corresponding to the object using one or more computer-controlled manufacturing systems that employ the 2.5-axis subtractive manufacturing process, wherein the editable three-dimensional model comprises a combination of extruded versions of the smooth curves. 
   
     
     
         21 . The system of  claim 20 , wherein the program code that, when run, causes the one or more data processing apparatus to obtain the first model of the object comprises:
 program code that, when run, causes the one or more data processing apparatus to receive shape data corresponding to the object to be manufactured using the 2.5-axis subtractive manufacturing process;   program code that, when run, causes the one or more data processing apparatus to process the shape data to produce polylines matching the contours representing the discrete height layers of the object;   program code that, when run, causes the one or more data processing apparatus to fit the smooth curves to the polylines; and   program code that, when run, causes the one or more data processing apparatus to replace at least one segment of at least one of the smooth curves to reduce a curvature of the at least one segment to be less than or equal to a curvature of a smallest milling tool available for use in the 2.5-axis subtractive manufacturing process for at least one of the discrete height layers.   
     
     
         22 . The system of  claim 21 , wherein the program code that, when run, causes the one or more data processing apparatus to replace the at least one segment of at least one of the smooth curves comprises:
 program code that, when run, causes the one or more data processing apparatus to offset outward a set of smooth curves by an amount that is based on the curvature of the smallest milling tool available; and   program code that, when run, causes the one or more data processing apparatus to offset inward the set of smooth curves by the amount, while closing any produced gaps using circular arcs.   
     
     
         23 . The system of  claim 21 , wherein the shape data comprises a level-set distance field, and the program code that, when run, causes the one or more data processing apparatus to process the shape data comprises:
 program code that, when run, causes the one or more data processing apparatus to resample the level-set distance field to produce a two-dimensional level-set grid at a slice plane corresponding to a current one of the discrete height layers, the slice plane being perpendicular to a milling direction to be used in the 2.5-axis subtractive manufacturing process; and   program code that, when run, causes the one or more data processing apparatus to extract a current layer polyline from the two-dimensional level-set grid, the current layer polyline matching a current layer contour of the object at the slice plane.   
     
     
         24 . The system of  claim 21 , wherein the program code that, when run, causes the one or more data processing apparatus to obtain the first model of the object comprises:
 program code that, when run, causes the one or more data processing apparatus to replace at least another segment of at least one of the smooth curves that includes a point, which is closer to a medial axis, of the corresponding contour for the curve, than is a radius of the smallest milling tool available for use in the 2.5-axis subtractive manufacturing process.   
     
     
         25 . The system of  claim 21 , wherein:
 the shape data includes a representation of one or more modelled solids, which are to be preserved in the editable three-dimensional model of the object;   a mesh representation of the object is either the shape data or is produced from the shape data by the program code that, when run, causes the one or more data processing apparatus to process the shape data;   the program code that, when run, causes the one or more data processing apparatus to process the shape data comprises program code that, when run, causes the one or more data processing apparatus to slice the mesh representation of the object with planes located within respective ones of the discrete height layers along a milling direction, each of the planes being perpendicular to the milling direction; and   the program code that, when run, causes the one or more data processing apparatus to obtain the first model of the object comprises:
 program code that, when run, causes the one or more data processing apparatus to segment the polylines into a first set of segments assigned to the one or more modelled solids and a second set of segments not assigned to the one or more modelled solids, wherein the segmentation uses a tolerance value when assigning polyline vertices to segments that errs on assignment to the one or more modelled solids, and 
 program code that, when run, causes the one or more data processing apparatus to extend one or more segments in the second set of segments that are connected with one or more segments in the first set of segments until the one or more segments in the second set of segments meet at an intersection point or at a tangent point of at least one of the one or more modelled solids, while also checking to align intersections of any extended segments that intersect a same at least one of the one or more modelled solids. 
   
     
     
         26 . A system comprising:
 a display device;   one or more data processing apparatus coupled with the display device; and   a non-transitory storage medium coupled with the one or more data processing apparatus, the non-transitory storage medium encoding:
 program code that, when run, causes the one or more data processing apparatus to obtain a first model of an object to be manufactured using a 2.5-axis subtractive manufacturing process, wherein the first model comprises (i) smooth curves fit to contours representing discrete height layers of the object to be manufactured using the 2.5-axis subtractive manufacturing process, and (ii) one or more modelled solids, which are to be preserved in a solid three-dimensional model of the object; 
 program code that, when run, causes the one or more data processing apparatus to modify at least one of the smooth curves to facilitate the 2.5-axis subtractive manufacturing process; 
 program code that, when run, causes the one or more data processing apparatus to prepare an editable model of the object, wherein the editable model comprises a series of construction steps represented in a parametric feature history, wherein the series of construction steps includes combining extruded versions of the smooth curves with the one or more modelled solids to form the solid three-dimensional model of the object, and the parametric feature history includes a sketch feature associated with at least one of the discrete height layers; 
 program code that, when run, causes the one or more data processing apparatus to render a user interface element showing the sketch feature in relation to the editable model; 
 program code that, when run, causes the one or more data processing apparatus to receive user input via the user interface element; 
 program code that, when run, causes the one or more data processing apparatus to reshape, responsive to the user input, a subset of the smooth curves in the at least one of the discrete height layers to change the solid three-dimensional model of the object; and 
 program code that, when run, causes the one or more data processing apparatus to replay the series of construction steps represented in the parametric feature history to construct the solid three-dimensional model of the object, as changed by the user input. 
   
     
     
         27 . The system of  claim 26 , wherein the program code that, when run, causes the one or more data processing apparatus to modify at least one of the smooth curves comprises:
 program code that, when run, causes the one or more data processing apparatus to detect at least a portion of at least one smooth curve for at least one of the discrete height layers that is almost coincident with at least a portion of the one or more modelled solids; and   program code that, when run, causes the one or more data processing apparatus to align the at least a portion of the at least one first smooth curve with the at least a portion of the one or more modelled solids.   
     
     
         28 . The system of  claim 27 , wherein the program code that, when run, causes the one or more data processing apparatus to reshape the subset of the smooth curves comprises program code that, when run, causes the one or more data processing apparatus to constrain changes to the at least a portion of the at least one first smooth curve to maintain tangency and contact with the at least a portion of the one or more modelled solids. 
     
     
         29 . The system of  claim 26 , wherein the program code that, when run, causes the one or more data processing apparatus to obtain the first model of the object comprises:
 program code that, when run, causes the one or more data processing apparatus to receive a level-set representation of the object, or receive a mesh representation of the object and convert the mesh representation into a level-set representation of the object;   program code that, when run, causes the one or more data processing apparatus to modify one or more level-set values in the level-set representation of the object, in each of one or more milling directions specified for the 2.5-axis subtractive manufacturing process, to remove undercuts;   program code that, when run, causes the one or more data processing apparatus to modify one or more additional level-set values in the level-set representation of the object to move one or more planar faces of the object up to a height level of that planar face's corresponding one of the discrete height layers; and   program code that, when run, causes the one or more data processing apparatus to convert the modified level-set representation of the object into the smooth curves of the first model.   
     
     
         30 . The system of  claim 29 , wherein the non-transitory storage medium encodes program code that, when run, causes the one or more data processing apparatus to, for each modelled solid of the one or more modelled solids:
 for each layer of the discrete height layers along a milling direction,
 intersect the layer with the modelled solid to produce a portion of the modelled solid, 
 move the portion of the modelled solid completely under the layer in the milling direction, 
 sweep the portion of the modelled solid upward, opposite the milling direction, through the layer to produce a swept solid, and 
 intersect the layer with the swept solid with to produce a replacement for the portion of the modelled solid; 
   sweep one or more upside faces of the modelled solid upward, opposite the milling direction, to a top most level of the discrete height layers along the milling direction to produce one or more upside swept solids;   sweep any downside faces of the modelled solid downward, in the milling direction, to a bottom most level of the discrete height layers along the milling direction to produce one or more downside swept solids;   intersect the one or more upside swept solids with the one or more downside swept solids to produce one or more undercut filling solids; and   combine the one or more undercut filling solids with the modelled solid.   
     
     
         31 . The system of  claim 26 , wherein the non-transitory storage medium encodes:
 program code that, when run, causes the one or more data processing apparatus to receive the one or more modelled solids; and   program code that, when run, causes the one or more data processing apparatus to detect, from the one or more modelled solids, one or more milling direction for the 2.5-axis subtractive manufacturing process.   
     
     
         32 . The system of  claim 26 , wherein the non-transitory storage medium encodes:
 program code that, when run, causes the one or more data processing apparatus to receive the one or more modelled solids; and   program code that, when run, causes the one or more data processing apparatus to extract, from the one or more modelled solids, at least one of the discrete height layers.   
     
     
         33 . The system of  claim 26 , wherein the series of construction steps represented in the parametric feature history includes adding fillets to concave edges of the solid three-dimensional model of the object. 
     
     
         34 . A system comprising:
 a display device;   one or more data processing apparatus coupled with the display device; and   a non-transitory storage medium coupled with the one or more data processing apparatus, the non-transitory storage medium encoding:
 program code that, when run, causes the one or more data processing apparatus to obtain a design space for an object to be manufactured and one or more design criteria including at least one manufacturability constraint for the object; 
 program code that, when run, causes the one or more data processing apparatus to perform a boundary-based generative design process to produce a generative model for the object using the one or more design criteria, wherein the at least one manufacturability constraint causes at least one shape derivative used during the boundary-based generative design process to guide shape changes for the generative model toward discrete height layers corresponding to a 2.5-axis subtractive manufacturing process; and 
 program code that, when run, causes the one or more data processing apparatus to provide a three-dimensional model in accordance with the generative model, for use in manufacturing a physical structure corresponding to the object using one or more computer-controlled manufacturing systems that employ the 2.5-axis subtractive manufacturing process, wherein the three-dimensional model includes flat areas resulting from the discrete height layers. 
   
     
     
         35 . The system of  claim 34 , wherein the generative model comprises a level-set representation of a three-dimensional topology for the object, and the boundary-based generative design process employs a level-set method of topology optimization. 
     
     
         36 . The system of  claim 34 , wherein the at least one shape derivative used during the boundary-based generative design process guides the shape changes for the generative model toward side walls for the discrete height layers that are parallel to a milling direction of the 2.5-axis subtractive manufacturing process. 
     
     
         37 . The system of  claim 36 , wherein the design space comprises a bounding volume containing an initial specification of one or more outer shapes of the three-dimensional topology for the object, and the program code that, when run, causes the one or more data processing apparatus to perform the boundary-based generative design process comprises program code that, when run, causes the one or more data processing apparatus to extend the one or more outer shapes of the three dimensional topology to fill the bounding volume in the milling direction. 
     
     
         38 . The system of  claim 37 , wherein the milling direction comprises two or more milling directions, and the program code that, when run, causes the one or more data processing apparatus to perform the boundary-based generative design process comprises program code that, when run, causes the one or more data processing apparatus to iteratively modify the one or more outer shapes of the three dimensional topology for the object, wherein each iterative modification comprises:
 performing physical simulation of the object to produce a physical assessment of a current iteration of the one or more outer shapes of the three dimensional topology for the object;   computing shape change velocities for the one or more outer shapes of the three dimensional topology in the current iteration in accordance with the physical assessment and the at least one shape derivative;   updating the one or more outer shapes of the three dimensional topology for the object using the shape change velocities;   extending the one or more outer shapes of the three dimensional topology to fill the bounding volume in each of the two or more milling directions, thereby forming two or more sets of one or more extended shapes; and   changing the one or more outer shapes to be a Boolean intersection of the two or more sets of one or more extended shapes for a next iteration.   
     
     
         39 . The system of  claim 34 , wherein the at least one manufacturability constraint comprises (i) a number of the discrete height layers, the number being determined by user input or by automatic detection, and (ii) two or more available milling directions for the 2.5-axis subtractive manufacturing process, the two or more available milling directions being determined by user input or by automatic detection. 
     
     
         40 . The system of  claim 39 , wherein the two or more available milling directions comprise at least one off-axis milling direction. 
     
     
         41 . The system of  claim 34 , wherein the program code that, when run, causes the one or more data processing apparatus to perform the boundary-based generative design process comprises program code that, when run, causes the one or more data processing apparatus to find a number of and locations for the discrete height layers. 
     
     
         42 . The system of  claim 34 , wherein the at least one manufacturability constraint comprises an internal corner of the generative model having a radius equal to or greater than a tool corner radius of a milling tool used in the 2.5-axis subtractive manufacturing process. 
     
     
         43 . The system of  claim 34 , wherein the program code that, when run, causes the one or more data processing apparatus to perform the boundary-based generative design process comprises program code that, when run, causes the one or more data processing apparatus to produce two or more generative models in accordance with the one or more design criteria and variations in the discrete height layers, milling directions, or both, and the non-transitory storage medium encodes:
 program code that, when run, causes the one or more data processing apparatus to prepare and present an analysis of trade-offs between or among the two or more generative models based at least in part on the variations in the discrete height layers, the milling directions, or both.   
     
     
         44 . The system of  claim 43 , wherein the 2.5-axis subtractive manufacturing process is used to manufacture the physical structure directly, the three-dimensional model being a model of the object.

Join the waitlist — get patent alerts

Track US2023056614A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.