-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
strength_settings_infill_rotation_template_metalanguage
This metalanguage provides a way to define the direction and rotation of patterns in 3D printing.
-
0
- fixed direction at 0° (X-axis) -
0, 90
- alternate 0° and 90° each layer -
0, 15, 30
- alternate 0°, 15° and 30° each layer -
+90
- rotate 90° each layer (sequence 90°, 180°, 270°, 0° ...) -
+45
- rotate 45° each layer for higher dispersion -
+30/50%
- linearly rotate by 30° over the next 50% of model height -
+45/10#
- linearly rotate by 45° across 10 standard layers -
+15#10
- keep the same angle for 10 layers, then rotate +15°; repeats every 10 layers -
B!, +30
- skip the first bottom shell layers from rotation, then rotate 30° per layer -
0, +30, +90
- use a repeating sequence of 0°, +30°, +90°
[±]α[*ℤ or !][joint sign, or its combinations][-][ℕ, B or T][length modifier][* or !]
- full length template instruction for the sparse infill
[±]α*
- just setting an initial rotation angle
Note
[...]
- values in square brackets are optional
[±]α
- command for setting rotation infill angle (for joint infills at some height range, this angle is finite):
-
α:β
- set the angle α value as a percentage of the full 360 degree rotation -
+α
- set positive relative angle CCW -
-α
- set negative relative angle CW
[*, *ℤ or !]
- runtime instructions:
-
*
- the mark of "dummy" instruction. It's needed for setting an initial angle. No further action will be taken -
*ℤ
- repeat the instruction ℤ times -
!
- the one-time running instruction
[joint sign]
- the symbol which determines the method of connection for turning of the infill:
-
/
- linear displacement of the infill. e.g.+22.5/50%
-
#
- infill of multiple layers with vertical displacement at finish angle. e.g.+22.5#50%
-
#-
- infill of multiple layers with vertical displacement at initial angle. e.g.+22.5#-50%
-
|
- infill of multiple layers with vertical displacement at middle angle. e.g.+22.5|50%
-
N
- infill formed by sinus function (vertical connection). e.g.+22.5N50%
-
n
- infill formed by sinus function (vertical connection, lazy). e.g.+22.5n50%
-
Z
- infill formed by sinus function (horizontal connection). e.g.+22.5Z50%
-
z
- infill formed by sinus function (horizontal connection, lazy). e.g.+22.5z50%
-
L
- infill formed by quarter of circle (horizontal to vertical connection). e.g.+22.5L50%
-
l
- infill formed by quarter of circle (vertical to horizontal connection). e.g.+22.5l50%
-
U
- infill formed by squared function. e.g.+22.5U50%
-
u-
- infill formed by squared function (inverse). e.g.+22.5u-50%
-
Q
- infill formed by cubic function. e.g.+22.5Q50%
-
q-
- infill formed by cubic function (inverse). e.g.+22.5q-50%
-
$
- infill formed by arcsinus method. e.g.+22.5$50%
-
~
- infill formed with random angle. e.g.+22.5~50%
-
^
- infill formed with pseudorandom angle. e.g.+22.5^50%
[-]ℕ
- counting the distance at which the turn will take place:
-
ℕ
- the count will take place by ℕ layers. e.g.+22.5/50%
-
-ℕ
- indicates that the joint form will be flipped upward. e.g.+22.5/-50%
-
B
- the count will take place over the next layers equal to the bottom_shell_layers parameter -
T
- the count will take place over the next layers equal to the top_shell_layers parameter
ℕ[length modifier]
- the distance at which the specified turn will take place:
-
ℕmm
- the distance in millimeters -
ℕcm
- the distance in centimeters -
ℕm
- the distance in meters -
ℕ'
- the distance in feet -
ℕ"
- the distance in inches -
ℕ#
- the distance in range of standard height of ℕ layers -
ℕ%
- the distance as a percentage of model height
Each instruction is written by a combination of symbols and numbers and separated by a comma or a space. For more complex instructions, autoformatting is used to make the template easier to read.
Note
All examples are shown with a 5% density rectilinear infill on a model of a cube 20x20x20mm which has 100 layers of 0.2mm thickness. Without walls and upper and lower shells. Initial angle is 0.
They include a simple definition of the angle for each layer. Note that the initial setting of this angle is also affected by the value in the infill angle field.
-
0
,15
,45.5
,256.5605
... - just fill at the existing angle. The initial direction starts at the X-axis, and the acceptable range of values is from 0 to 360-
0
as well as+0
,-0
or just empty template
-
45
-
0, 30
- is a simple alternation through each layer in the direction of 0 and 30 degrees.
-
-
0%
,10%
,25%
,100%
... - infill angle determined from relative terms from a full turn of 360 degree rotation. Rotate by 0, 36, 90, and 0 degrees.-
25%
- the equivalent of90
instruction.
-
-
30, 60, 90, 120, 150, 0
- a more complex command defines a turn every layer at 30 degrees. At the end of the template line, the next instruction is read first, and this process continues until the entire height of the model is filled.
-
+30
- this is a short instruction for counterclockwise rotation. The equivalent of30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 0
or30, 60, 90, 120, 150, 0
instruction.
-
-30
- this is the same instruction, but with clockwise rotation. The equivalent of330, 300, 270, 240, 210, 180, 150, 120, 90, 60, 30, 0
or330, 300, 270, 240, 210, 0
instruction. -
+150
- you can specify a different multiple of the irrational angle for better fill dispersion =150, 300, 90, 240, 30, 180, 330, 120, 270, 60, 210, 0
... -
+45
- The equivalent of45, 90, 135, 180, 225, 270, 315, 0
or45, 90, 135, 0
instruction.
-
+90
- The equivalent of90, 180, 270, 0
or90, 0
instruction.
-
+15%
- useful for dividing angles on a decimal basis =54, 108, 162, 270, 324, 18, 72, 126, 180, 234, 288, 342, 36, 90, 144, 196, 252, 306, 0
... -
+30, +90
- a complex instruction setting the rotation of each layer in these positions =30, 120, 150, 240, 270, 0
...
-
0, +30, +90
- a complex instruction setting the rotation of each layer in these positions =0, 30, 120
...
-
5, 10, +20
- simple instructions without modifiers. Sets the angles in sequence = 5, 10, 30, 5, 10, 30, 5, 10 ... -
5, 10*, +20
- the*
sign sets the initial angle without quantitative designation and without layer processing. It is useful for setting the orientation of a group of layers, which will be described below. Sets the angles in sequence = 5, 30, 5, 30, 5, 30, 5 ... -
5, 10!, +20
- the!
sign indicates that the instruction will be executed only once for the entire height of the model. Sets the angles in sequence = 5, 10, 30, 5, 25, 5, 25, 5 ... -
5, 10*!, +20
- the combination of*
and!
signs is also usable = 5, 30, 5, 25, 5, 25, 5, 25 ... -
5, 10*3, +20
- if a number is written after the*
sign, it indicates the number of repetitions of this instruction. Sets the angles in sequence = 5, 10, 10, 10, 30, 5, 10, 10, 10, 30, 5, 10 ...
A combined set of layers will be organized, where the rotation of one layer relative to the other will also be predetermined.
You can specify how many layers will be rotated by a certain angle, and according to which mathematical law this rotation will be performed. This law is determined by writing a certain symbol and specifying a numeric value after it.
The following signs are available that determine the shape of the turn: /
#
#-
|
N
n
Z
z
L
l
U
u
Q
q
$
~
^
. For their purpose, see joint sign.
Also, after the numeric value there is a range modifier, then this rotation will occur according to the described length.
The following modifiers are available that determine the range of turn: mm
cm
m
'
"
#
%
. For their purpose, see length modifier.
If there is a -
sign before the numeric value, then the initial fill angle changes with the final one. This is useful for joining the linear infills in some cases. Absolute values of the rotation angle using the range instructions have no effect.
It is important to know that this will not be the exact length, but will be tied to the nearest layer from below.
-
+45/100
- rotate the next 100 layers linearly at a 45 degree angle. For this model, this instruction is equivalent to+45/100%
as it contains 100 layers.
- When changing the height of the instruction
+45/50
or+45/50%
- the final angle will be 90, as the turn will occur twice.
-
-50%Z1cm
- rotate one centimeter of infill by sinus function at a 180 degree CW.
There are 2 letter signs T
and B
that can determine the number of shell layers on the top and bottom of the model. It is useful for calculating skipping this amount to align the fill.
-
B!, +30
- skip the first shell layers from rotation, then fill with 30 degree turn each layer -
+30/1cm, T
- rotate one centimeter of infill linearly at a 30 degree angle, then skip the number of layers equal to the count of the upper shell layers without rotation.
-
+10L25%, -10l25%, -10L25%, +10l25%
- fill the model with sine period with 10 degree amplitude
-
+30/-10#
- rotate the infill at height of 10 standard layers (or @ standard layer height is 0.2mm x 10 = 2mm) inverse linearly at a 30 degree angle.
-
+360~100%
or+100%~100%
- fill the model with infill with random direction at each layer.
- Feature author: @pi-squared-studio.