kopia lustrzana https://github.com/carson-katri/geometry-script
Enhance repeat_grid function: add spacing parameters for customizable grid spacing
rodzic
08c3cd5d67
commit
24d9930ce0
|
@ -1,20 +1,26 @@
|
|||
from geometry_script import *
|
||||
|
||||
@tree("Repeat Grid")
|
||||
def repeat_grid(geometry: Geometry, columns: Int, rows: Int):
|
||||
def repeat_grid(
|
||||
geometry: Geometry,
|
||||
columns: Int,
|
||||
rows: Int,
|
||||
spacing_x: Float = 0.0,
|
||||
spacing_y: Float = 0.0
|
||||
):
|
||||
# measure your geometry’s bounds
|
||||
bbox = geometry.bounding_box()
|
||||
span_x = bbox.max.x - bbox.min.x
|
||||
span_y = bbox.max.y - bbox.min.y
|
||||
|
||||
# total grid size = N * object size
|
||||
total_x = columns * span_x
|
||||
total_y = rows * span_y
|
||||
total_x = columns * span_x + (columns - 1) * spacing_x
|
||||
total_y = rows * span_y + (rows - 1) * spacing_y
|
||||
|
||||
# one extra vertex gives N cells
|
||||
g = grid(
|
||||
size_x=total_x, size_y=total_y,
|
||||
vertices_x=columns+1, vertices_y=rows+1
|
||||
vertices_x=columns + 1, vertices_y=rows + 1
|
||||
).mesh.mesh_to_points()
|
||||
|
||||
return g.instance_on_points(instance=geometry)
|
Ładowanie…
Reference in New Issue