fischertechnik-box-foundation

OpenSCAD sorting box construction foundation for Fischertechnik parts

View the Project on GitHub proggi64/fischertechnik-box-foundation

DeploySame

Verteilt Kopien des Children-Elements auf die angegebenen Spalten und Zeilen mit gleichem Abstand auf der angegebenen Fläche. Dabei werden auch die Drehungen der einzelnen Elemente berücksichtigt. Es wird nur das erste Children-Element verarbeitet.

Use

use <../Base/Deployment.scad>
include <../Base/PlacementOptions.scad>

Syntax

DeploySame(
  space, 
  elementSpace, 
  columns=2, 
  rows=1, 
  rotation=Rotate0)
  {children}
Parameter Typ Beschreibung
space [x,y] Wertpaar (Liste mit x- und y-Wert) mit der Fläche auf der die columns und rows ds Children-Elements verteilt werden. Wenn keine Abstände zwischen den Elementen erzeugt werden sollen, kann der x- und/oder der y-Wert von space 0 sein.
elementSpace [x,y] Fläche, welche das children-Element einnimmt. Hierfür kann die jeweilige getElementNameSpace()-Funktion als Wert übergeben werden.
columns Integer Anzahl der Elemente pro Zeile (rows). Falls 1, wird das Element in der Zeile zentriert.
rows Integer Anzahl der Elemente pro Spalte (columns).
rotation Integer (Enum) Gibt für das Children-Element an, wie es vor dem Verteilen gedreht werden soll. Mögliche Werte sind Rotate0, Rotate90, Rotate180 und Rotate270. Die Drehung wird für jedes erzeugte Element angewandt.

Beispiele

Gleichmäßge Verteilung

Das Beispiel ist ein Ausschnitt aus der Testdatei Test/Base/DeploymentTestDeploySame.scad:

use <../../Base/Deployment.scad>
use <../../Base/Placement.scad>

include <../../Base/PlacementOptions.scad>

use <../TestHelper.scad>

PlacementBase();

DeploySame(getPlacementBaseSpace(), getCubeSpace(), columns=4, rows=2)
    Cube();

Das Beispiel verteilt das Element Cube auf zwei Zeilen à vier Spalten. Die Abstände sind gleich.

DeploySame_1

Ohne Abstand

use <../../Base/Deployment.scad>
use <../../Base/Placement.scad>

include <../../Base/PlacementOptions.scad>

use <../TestHelper.scad>

PlacementBase();

DeploySame([0,0], getCubeSpace(), columns=4, rows=3)
    Cube();

Das Beispiel verteilt das Element Cube auf drei Zeilen à vier Spalten ohne Abstände.

DeploySame_2