KQ(r) surface - Customizable OpenSCAD 3D Printer File Image 1
KQ(r) surface - Customizable OpenSCAD 3D Printer File Image 2
KQ(r) surface - Customizable OpenSCAD 3D Printer File Image 3
KQ(r) surface - Customizable OpenSCAD 3D Printer File Image 4
KQ(r) surface - Customizable OpenSCAD 3D Printer File Image 5
KQ(r) surface - Customizable OpenSCAD 3D Printer File Thumbnail 1
KQ(r) surface - Customizable OpenSCAD 3D Printer File Thumbnail 2
KQ(r) surface - Customizable OpenSCAD 3D Printer File Thumbnail 3
KQ(r) surface - Customizable OpenSCAD 3D Printer File Thumbnail 4
KQ(r) surface - Customizable OpenSCAD 3D Printer File Thumbnail 5

KQ(r) surface - Customizable OpenSCAD

Xavier Faraudo avatarXavier Faraudo

April 21, 2024

printables-icon

Description

Another of my surface texture patterns, this one somewhat resembling the newer “PEO” sheets and their irregular triangle pattern. The name KQ(r) stands for KisQuadrille (Randomized); if you're curious, see what this means below.

There are two main ways to use this tool: to either create a modifier or set of modifiers for a surface (not only the base, but also top surfaces as well), or to make a multi-color object, which works nicely when printed in translucent filaments. You can make thin, stained-glass-like patterns that can be set on a wall with just double-sided tape, framed and/or used as a lithophane screen.

Creating a set

This applies to both a set of modifiers or the set of objects for a multicolor print. You'll need to decide whether you'll be wanting the grid or not, and how many colors/variations you'll want. (If you're new to OpenSCAD customizer, please read the enclosed “Using OpenSCAD customizer” PDF.)

If you want the grid, set its values (egr., thickness), choose “Negative volume (grid)” as the Modifier type, check that it's OK and render with F6.

Next, see what kind of selection fits you the most, taking care to generate all the parts required to fill the plane. Set “Modifier type” as “Positive modifier (triangle/square)”, and the selection to what you want. I suggest you start by “Triangle group modifier” and then go through all the values in “Triangle index”: Top, Right, Left and Bottom.

The selection parameters may look daunting and complicated, but they're easier if you take into account that “index” and “group size” mean “the nth out of X”, where nth is the “index” and X is the “group size”. Sometimes there are several ways to get the same selection; for instance, to get the 4 groups of top, right, left and bottom triangles above, you can choose a “Triangle cell group” with a “Cell group size” of 4, and iterating from 1 to 4 the “Cell group index”.

Whenever you create a selection that's not the full grid or triangle set, an auto-centering non-printable fillet will also be created. This will help you position easily the modifiers at their right place.

Using as a modifier (PEO-like)

Once you have your set generated, you can set them as modifiers. Well, that, or you can use some of the 250x250 modifiers that I've already included for your convenience (that's not cheating!). I have several methods that I like, but there are plenty of possibilities, and this is not an exhaustive list.

Simple negative grid

You don't need to generate (or use) a full set; you'll only need a grid, and a very thin one; like 0.2mm or even less. 

You add it as a negative modifier to your model at the right height, and set the infill type for the surface as “concentric”; if it's not the top or bottom layer, you'll likely need to add a slab  or box modifier(s) for the layer(s).

Shifting angle mod

Use a full set for this. Set the grid as “Concentric” infill type; make sure that it is at least two extrusions wide.

Add all the 4 modifiers for top, right, left and bottom triangles. Set to each of them a infill angle increasing by 45 degrees, starting from 0. So, set them at 0, 45, 90 and 135 infill angle.

Triangle concentric

Use a full set. Set the grid as “Monotonic” or line infill type, and each of the triangle modifiers to “concentric”.

Generating (tileable) tiles

You can make different patterns that nonetheless tile together seamlessly. For two borders to tile nicely, they need to have:

  1. The same number of divisions (columns for top/bottom borders, rows for left/right borders).
  2. The same seed. Go to the “Sides tiling and randomization” section of the parameters, and make sure that “Border seed type” is set to “Specific seed per border”, and set the seed number that you need.
  3. The same vertex displacement ratio for the matching borders. Go to the “Sides tiling and randomization” section of the parameters, and make sure that “Border vertex displacement ratio type” parameter is set to “Specific ratio per border”.

This way, you can set a different seed and ratio for the (inner) vertices and centers, without them modifying the borders in any way.

Geometry and gory details

The basis for this is a kisquadrille (or tetrakis square) grid, which is a grid of squares where all squares are divided into 4 triangles with a new vertex at the center of the square; that's the “kis” operator. (FWIW, if I'm not wrong the PEO sheets are more like a randomized kisdeltille, that is a triangular grid with the kis operator applied.)

The vertices are then displaced “randomly” on X and Y, or only one axis if they're border vertices. Center of the resulting quadrilateral is found (by averaging) and displaced.