Create an Implicit Stochastic Lattice
Create a randomized strut lattice by defining points, edges between points, filters to remove certain points and/or edges, a method to thicken edges into struts, and outer body treatments such as combining the lattice with an outer body or shell.
A stochastic lattice arises from thickening a wireframe of the underlying structure, which is built up from points that are connected by edges. In Inspire Implicit Modeling, this wireframe structure is called a point-edge set. The general workflow for a stochastic lattice is as follows:
- Construct a set of (possibly random) points that are contained within a user-specified volume.
- Connect these points using one of the available methods to form edges.
- Filter the points and edges of the newly formed point-edge set to leave only the useful points and edges.
- Thicken the lattice according to your specifications for thickness (constant, variable-, or field-driven thickness).
- Apply outer body treatments to place a shell around the lattice, or join the lattice to a pre-existing outer body.
The rest of this topic describes these five steps in detail, explaining the different options for each.
-
Stochastic Lattice Point-Edge Set: Constructing Points
-
Stochastic Lattice Point-Edge Set: Constructing Edges
-
Stochastic Lattice: General Settings
The Stochastic Lattice guide panel matures the wireframe model of the point-edge into an implicit model of the stochastic lattice by applying a default thickness. This model has the signed distance property. This means that any point in the field of this implicit body returns the signed distance to the closest point on the surface of the Stochastic Lattice. To clarify some terminology, an edge in the point-edge set becomes a strut in the stochastic lattice after it has been thickened.
- Choose a setting from the Point-Edge Set dropdown list to define the stochastic lattice structure. In most cases, this will be the point-edge set that has just been developed. However, there are options to choose a different set from the dropdown, make further edits, make a new set, or clear the selection, which will then require a new point-edge set to be created.
- In the Cell section, choose a Type button to specify whether the struts will be solid or hollow. Both types have a circular cross-section. Therefore, a solid strut requires a single strut diameter, and hollow struts require inner and outer diameter values.
- Choose a Solid Region button to control whether the stochastic lattice is defined by the struts themselves (Regular) or by using the struts as tools to cut material out of the axis aligned bounding box of the target body of the Point-Edge set (Inverted). An example of the Inverted case is shown below.
- Use the Sizing Options controls to specify the
inner and outer strut diameters. Strut diameters can be set locally as a
constant, controlled using a variable, or individually set a
field-driven properties, where the local radius at any point along any
strut is defined using a reference field or implicit body.Tip: The Strut Inner Diameter control is displayed only when Hollow is selected.
-
Stochastic Lattice: Point-Edge Set Filters
The methods for creating point-edge sets offer useful but limited flexibility over which points and edges are used in the final stochastic lattice. Much finer control is possible when filters are used. The following Stochastic Lattice guide panel shows an empty table of point edge set filters.
The buttons below the table can create, remove, edit, promote, and demote point-edge set filters.
When thinking about trimming a stochastic lattice to a shape, an important design consideration is whether to rely on a hard trim of a lattice using a Boolean Subtract operation, or whether to define the stochastic lattice so no trimming is necessary. In many cases, the latter is preferable, as it preserves the integrity of the point-edge set data structure. This can be useful when exporting the file to, for example, .3mf format (using the Beam Extension). Point-edge set filters provide facilities to make sure the lattice is nicely contained within a body, among other things.
-
Select the Outer Body tab.
- Select a type of outer body.
- None: Don't create an outer body.
- Shell: Create an offset shell with an optional
trimming body.
Option Description Direction Select an offset direction for the shell. - Outward: Offset the shell outward from the lattice, increasing the size of the overall object.
- Inward: Offset the shell inward, consuming some of the lattice but maintaining the overall dimensions of the lattice.
- Both: Offset the shell both inward and outward.
Symmetry Symmetrically offset the shell inward and outward by the same distance. Outer Thickness Define the outward shell's offset thickness. Thickness can be entered directly, controlled with a variable, or controlled in each position in space using a field (field-driven design).
Inner Thickness Define the inward shell's offset thickness. Thickness can be entered directly, controlled with a variable, or controlled in each position in space using a field (field-driven design).
Trimming Body Select a body that's used to trim the shell. This can be used to trim areas of the shell, which is useful for fitting the lattice and its shell into a predefined volume, or when you want to expose some of the lattice so that it is not covered by a shell. In this example, a BRep body is chosen as the trimming body to expose some of the lattice. This image shows how the outward shell applied to the lattice overlaps with the trimming body.Once the trimming is applied, some of the outward shell is cut away, exposing the lattice wherever the shell protrudes beyond the confines of the trimming body.Transition Choose the type of transition between the outer body and lattice body. - Sharp: The lattice abruptly joins the surrounding shell.
- Fillet: The lattice
blends into the surrounding shell using a fillet.
If you selected this option, define the fillet
Radius.
- Chamfer: The lattice
blends into the surrounding shell using a chamfer.
If you selected this option, define the chamfer
Distance. For
Fillet, the distance is the
radius of the fillet and, for
Chamfer, the distance is
the setback of the chamfer. The distance can be
entered directly, controlled with a variable, or
controlled in each position in space using a field
(field-driven design).
- Combine: Combine the outer body with the lattice
body directly, without creating a shell that surrounds the lattice
Option Description Combine Body Select a body to combine the planar lattice with. This body should be close to or overlap the lattice. Transition Choose the type of transition between the outer body and lattice body. - Sharp: The lattice
abruptly joins the surrounding outer body.
- Fillet: The lattice
blends into the outer body using a fillet. If you
select this option, define the fillet
Radius.
- Chamfer: The lattice
blends into the outer body using a chamfer. If you
select this option, define the chamfer
Distance.
For Fillet, the distance is the radius of the fillet and, for Chamfer, the distance is the setback of the chamfer. You can directly enter the distance, controlled with a variable, or controlled in each position in space using a field (field-driven design).
- Sharp: The lattice
abruptly joins the surrounding outer body.