So I created a gyroid (or another structure according to the equation
…) Everything is fine until the moment when I want to set the wall thickness, e.g. 1. If the wall thickness is low (eg 0.106) everything is ok. As soon as I increase the thickness of the wall, the wall starts to come out (as on the screen)
As for thickening extending it beyond the unit cube - that’s to be expected since the surface is not perpendicular to the cube faces.
If you want a repeating unit with thickness and meeting the faces of a cube you’ll need to take a larger patch and thicken that, then cut out a unit cube from the middle of it.
Offsetting to both sides is good idea to help maintain the form but I’d also suggest looking at using Dendro in Grasshopper to convert to voxels. You could difference off the portions outside the bounding box this way and also heal any self intersections.
and could you please help me with that? I’m lost, I don’t understand because I’m just a beginner. If you would help me, and it would work, I have no problem paying you for your time.
1 cell has the dimensions 10 x 10 x 10 mm. The volume is 1000 m3. (full volume) I need to create gyroid, schwarz p, neovius etc. That the cell has dimensions of 10 x 10 x 10 mm (as in the case of full volume), but that the volume is 30% compared to full volume. So I need 30% gyroid, neovius, etc. This can be set with that thick wall, but the result must be symmetrical and have the correct dimensions.
I recall there being a manual in the download too. Essentially you make a volume with some settings and create a mesh from that to bake it out once you’re done. Try a few things on simple objects first to get the hang of it.
I think using Millipede then feeding that dense mesh into Dendro would be rather heavy, and also wouldn’t give you the sharp edges where it meets the cube.
Dendro unfortunately doesn’t support custom mathematical implicit functions, only the predefined distance functions from input geometry so you’d be going from scalar function>level set mesh>distance function from millions of vertices>mesh.
However, there is a way to take the different iso values of the implicit form of these mathematical surfaces to create thickened versions directly without these intermediate steps.
Isosurfacer_solid2.gh (17.9 KB)
Here’s an example not using any plugins like Millipede or Dendro, but a version of the script previously posted here.
I included examples of a few well known implicit surfaces, but there’s also a space where you can add custom ones.
To make the solid it uses a mesh boolean, but I think it should be possible with a bit more work to modify the level set code to make these faces directly for the regions on the boundary cube which are below the iso value, which would be quicker.
I’m also working on a new approach to isosurfacing with a different meshing algorithm and allowing scalar functions to be passed around, modified and combined with either components or scripts. It’s not ready yet though, so I thought I’d share this earlier version for now.
The unit cell goes from -pi to pi in x y and z, because that is the period over which these functions repeat.
If you want to change the scale you need to do it at the end, after generating the isosurfaces.
Is there a difference in the end if the individual cells are combined into one?
I need to arbitrarily set the size to the size of one cell. And then copy the cell in the X, Y, Z axes. For example: In the X axis: 20mm (2cells), Z: 20mm (2cells) Y: 30mm (3 cells). But in the end, the cells must be weldted.
I think that this is good. But now I need to move one cell from the other by 10mm as the cells pass through each other