Perforated Sheet Slotted Holes Staggered Tile Covering

Perforated Sheet Slotted Holes Staggered Tile Covering

A tile covering laid on the face you give it, with grout between the tiles. The face the tiles cover, Tiles cut at the edge, whole inside, or overlapping, Pattern size, tile thickness and edge bevel, Joint widths and joint depth, Pattern rotation and offset from the face center, Tile and grout colour

Details

Category: Tiles › Perforation

By Huu Khanh Nguyen · Updated November 8, 2026

Parameters

NameDefaultUnit
Object On Boundariestrim
Pattern rotation0°
Pattern offset X0mm
Pattern offset Y0mm
Slot length18mm
Slot width3.5mm
Slot pitch along21.5mm
Slot pitch across7mm
Thickness10mm
Edge bevel radius0.237mm
Edge bevel segments5
Horizontal joint0.8mm
Vertical joint0.8mm
Joint depth5mm
Generate surfacetrue
Tile colour#b8b5ae
Tile roughness0.5
Tile metalness0
Joint colour#d0d0d0
patternX(rings[0].map((p) => p[0]).reduce((m, x) => Math.min(m, x)) + rings[0].map((p) => p[0]).reduce((m, x) => Math.max(m, x))) / 2 + offsetXmm
patternY(rings[0].map((p) => p[1]).reduce((m, x) => Math.min(m, x)) + rings[0].map((p) => p[1]).reduce((m, x) => Math.max(m, x))) / 2 + offsetYmm
wallAMath.sqrt(((sq) => ((R) => R.reduce((m, A, i) => R.reduce((n, B, k) => (k <= i) ? n : A.reduce((q, p) => B.slice(1).reduce((s, b, j) => Math.min(s, sq(p, B[j], b)), q), n), m), 1e300))(tile))((p, a, b) => ((dx, dy) => ((t) => (p[0] - a[0] - t * dx) ** 2 + (p[1] - a[1] - t * dy) ** 2)(Math.max(0, Math.min(1, ((p[0] - a[0]) * dx + (p[1] - a[1]) * dy) / (dx * dx + dy * dy)))))(b[0] - a[0], b[1] - a[1])))mm
wallBMath.sqrt(((sq) => ((R) => R.reduce((m, A, i) => R.reduce((n, B, k) => (k >= i) ? n : A.reduce((q, p) => B.slice(1).reduce((s, b, j) => Math.min(s, sq(p, B[j], b)), q), n), m), 1e300))(tile))((p, a, b) => ((dx, dy) => ((t) => (p[0] - a[0] - t * dx) ** 2 + (p[1] - a[1] - t * dy) ** 2)(Math.max(0, Math.min(1, ((p[0] - a[0]) * dx + (p[1] - a[1]) * dy) / (dx * dx + dy * dy)))))(b[0] - a[0], b[1] - a[1])))mm