Skip to content

Instantly share code, notes, and snippets.

@andybak
Last active September 17, 2020 10:37
Show Gist options
  • Save andybak/69cfbb7f237e72e9bcbd21744278a5f8 to your computer and use it in GitHub Desktop.
Save andybak/69cfbb7f237e72e9bcbd21744278a5f8 to your computer and use it in GitHub Desktop.
var grid = Grids.Grids.MakeGrid(GridType, GridShape, width, depth);
grid = grid.VertexRotate(new OpParams(Jitter, randomize = true));
var houses = grid.FaceKeep(new OpParams(randomPerFace, .1f));
houses = houses.Loft(new OpParams(funcB=x=>Random.Range(.5f, 1.5f)));
var (walls, domes) = houses.Split(new OpParams(FaceSelections.Existing));
walls = walls.Loft(new OpParams (FaceSelections.AllNew, 0.75f));
walls = walls.FaceSlide(new OpParams (0.15f, FaceSelections.Existing));
walls = walls.FaceRemove(new OpParams (FaceSelections.Existing));
walls = walls.Shell(0.025f);
domes = domes.Dome(FaceSelections.All, DomeHeight, DomeSegments, DomeCurve1, DomeCurve2);
var ground = grid.Dual();
ground = ground.Bevel(new OpParams (0.25f));
ground = ground.Medial(new OpParams (3f));
walls.Append(ground);
walls.Append(domes);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment