Jump to content

Component: 3D Printer (Scenarios): Difference between revisions

From Flowcode Help
No edit summary
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder""
 
(11 intermediate revisions by 2 users not shown)
Line 22: Line 22:


==Detailed description==
==Detailed description==




Line 38: Line 42:


==Examples==
==Examples==




Line 67: Line 75:
[[File:Print2.jpg]]
[[File:Print2.jpg]]


==Macro reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ClearPrevPrint'''
|-
| colspan="2" | Clears all of the content from any previous print cycles. 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ControlPrintHead'''
|-
| colspan="2" | Controls the print extruder which plots the location of the print head as the head moves. If Enable = 0 then the extruder is disabled If Enable != 0 then the extruder is enabled 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Enable
|-
| colspan="2" | Controls if the extruder is active or not 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveByXYZ'''
|-
| colspan="2" | Moves the print head by the amount specified in the axis variables using linear interpolation. 
|-
|-
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | X
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Y
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Z
|-
| colspan="2" |  
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetMovementSpeed'''
|-
| colspan="2" | Allows the movement speed to be set progmatically. Range 0 - 100 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Speed
|-
| colspan="2" | Speed control (0 - 100) 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveToHome'''
|-
| colspan="2" | Returns the print head to the start position (0,0,0) 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


==Macro reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ClearPrevPrint===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveToXYZ'''
| width="90%" class="mtx-class-macrohead" | '''ClearPrevPrint'''
|-
|-
| colspan="2" | Moves the print head to the specific location specified in the axis variables using linear interpolation. 
| colspan="2" | Clears all of the content from any previous print cycles. 
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | X
|-
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Y
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Z
|-
| colspan="2" |  
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 187: Line 101:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ControlPrintHead===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveByXYZReal'''
| width="90%" class="mtx-class-macrohead" | '''ControlPrintHead'''
|-
|-
| colspan="2" | Moves the print head by the amount specified in the axis variables using linear interpolation. 
| colspan="2" | Controls the print extruder which plots the location of the print head as the head moves. If Enable = 0 then the extruder is disabled If Enable != 0 then the extruder is enabled 
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | X
| width="90%" | Enable
|-
|-
| colspan="2" |  
| colspan="2" | Controls if the extruder is active or not 
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Y
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Z
|-
| colspan="2" |  
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 215: Line 120:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===Initialise===
|-
{| class="mtx-class-macrotable wikitable"
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetMovementSpeedReal'''
|-
| colspan="2" | Allows the movement speed to be set progmatically. Range 0.0 - 100.0 
|-
|-
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" class="mtx-class-macrohead" | '''Initialise'''
| width="90%" | Speed
|-
| colspan="2" | Speed control (0 - 100) 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveToXYZReal'''
|-
| colspan="2" | Moves the print head to the specific location specified in the axis variables using linear interpolation. 
|-
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | X
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Y
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Z
|-
| colspan="2" |  
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
|-
|-
| colspan="2" | Sets up the 3D printer component by homing, clearing old print data and assigning the movement speed. 
| colspan="2" | Sets up the 3D printer component by homing, clearing old print data and assigning the movement speed. 
Line 274: Line 134:




 
===MoveByXYZ===
 
{| class="mtx-class-macrotable wikitable"
==Property reference==
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''
| width="90%" class="mtx-class-macrohead" | '''MoveByXYZ'''
|-
|-
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]]
| width="90%" | Bed Colour
|-
| colspan="2" | Specifies the colour of the print bed. 
|-
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]]
| width="90%" | Print Colour
|-
| colspan="2" | Specifies the colour of the print output. 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Print Speed (0-100)
|-
| colspan="2" | Specifies the speed of the printer movements. 100 = as fast as possible. 
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | Print Type
|-
| colspan="2" | Specifies how the print is drawn. Object based - uses panel primitives to build up the 3D object, useful for simulated interaction e.g. the formula flowcode and the maze solving example. Point cloud based - uses the point cloud interface to allow complex objects to be built without slowing down the panel interface. 
|-
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
| width="90%" | Print Size
|-
| colspan="2" | Specifies the size of a single print object. 
|-
| width="10%" align="center" | [[File:Fc9-type-12-icon.png]]
| width="90%" | Print Shape
|-
| colspan="2" | Specifies the shape of the print object. 
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Max Print Dimensions
|-
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | X Width
|-
| colspan="2" | Printer dimensions X axis 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Y Length
|-
| colspan="2" | Printer dimensions Y axis 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Z Height
|-
| colspan="2" | Printer dimensions Z axis 
|}==Macro reference==
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ClearPrevPrint'''
|-
| colspan="2" | Clears all of the content from any previous print cycles. 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ControlPrintHead'''
|-
| colspan="2" | Controls the print extruder which plots the location of the print head as the head moves. If Enable = 0 then the extruder is disabled If Enable != 0 then the extruder is enabled 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Enable
|-
| colspan="2" | Controls if the extruder is active or not 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveByXYZ'''
|-
|-
| colspan="2" | Moves the print head by the amount specified in the axis variables using linear interpolation. 
| colspan="2" | Moves the print head by the amount specified in the axis variables using linear interpolation. 
Line 393: Line 163:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===MoveByXYZReal===
|-
{| class="mtx-class-macrotable wikitable"
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetMovementSpeed'''
|-
| colspan="2" | Allows the movement speed to be set progmatically. Range 0 - 100 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Speed
|-
| colspan="2" | Speed control (0 - 100) 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveToHome'''
|-
| colspan="2" | Returns the print head to the start position (0,0,0) 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveToXYZ'''
|-
| colspan="2" | Moves the print head to the specific location specified in the axis variables using linear interpolation. 
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | X
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Y
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Z
|-
| colspan="2" |  
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveByXYZReal'''
| width="90%" class="mtx-class-macrohead" | '''MoveByXYZReal'''
|-
|-
| colspan="2" | Moves the print head by the amount specified in the axis variables using linear interpolation. 
| colspan="2" | Moves the print head by the amount specified in the axis variables using linear interpolation. 
Line 480: Line 192:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===MoveToHome===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetMovementSpeedReal'''
| width="90%" class="mtx-class-macrohead" | '''MoveToHome'''
|-
| colspan="2" | Allows the movement speed to be set progmatically. Range 0.0 - 100.0 
|-
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Speed
|-
| colspan="2" | Speed control (0 - 100) 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveToXYZReal'''
|-
| colspan="2" | Moves the print head to the specific location specified in the axis variables using linear interpolation. 
|-
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | X
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Y
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Z
|-
| colspan="2" |  
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
|-
| colspan="2" | Sets up the 3D printer component by homing, clearing old print data and assigning the movement speed. 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
 
 
==Property reference==
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''
|-
|-
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]]
| width="90%" | Bed Colour
|-
| colspan="2" | Specifies the colour of the print bed. 
|-
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]]
| width="90%" | Print Colour
|-
| colspan="2" | Specifies the colour of the print output. 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Print Speed (0-100)
|-
| colspan="2" | Specifies the speed of the printer movements. 100 = as fast as possible. 
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | Print Type
|-
| colspan="2" | Specifies how the print is drawn. Object based - uses panel primitives to build up the 3D object, useful for simulated interaction e.g. the formula flowcode and the maze solving example. Point cloud based - uses the point cloud interface to allow complex objects to be built without slowing down the panel interface. 
|-
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
| width="90%" | Print Size
|-
| colspan="2" | Specifies the size of a single print object. 
|-
| width="10%" align="center" | [[File:Fc9-type-12-icon.png]]
| width="90%" | Print Shape
|-
| colspan="2" | Specifies the shape of the print object. 
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Max Print Dimensions
|-
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | X Width
|-
| colspan="2" | Printer dimensions X axis 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Y Length
|-
| colspan="2" | Printer dimensions Y axis 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Z Height
|-
| colspan="2" | Printer dimensions Z axis 
|}==Macro reference==
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ClearPrevPrint'''
|-
| colspan="2" | Clears all of the content from any previous print cycles. 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ControlPrintHead'''
|-
| colspan="2" | Controls the print extruder which plots the location of the print head as the head moves. If Enable = 0 then the extruder is disabled If Enable != 0 then the extruder is enabled 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Enable
|-
| colspan="2" | Controls if the extruder is active or not 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveByXYZ'''
|-
| colspan="2" | Moves the print head by the amount specified in the axis variables using linear interpolation. 
|-
|-
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | X
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Y
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Z
|-
| colspan="2" |  
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetMovementSpeed'''
|-
| colspan="2" | Allows the movement speed to be set progmatically. Range 0 - 100 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Speed
|-
| colspan="2" | Speed control (0 - 100) 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveToHome'''
|-
|-
| colspan="2" | Returns the print head to the start position (0,0,0) 
| colspan="2" | Returns the print head to the start position (0,0,0) 
Line 689: Line 206:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===MoveToXYZ===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveToXYZ'''
| width="90%" class="mtx-class-macrohead" | '''MoveToXYZ'''
|-
|-
| colspan="2" | Moves the print head to the specific location specified in the axis variables using linear interpolation. 
| colspan="2" | Moves the print head to the specific location specified in the axis variables using linear interpolation. 
Line 717: Line 235:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===MoveToXYZReal===
|-
{| class="mtx-class-macrotable wikitable"
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveByXYZReal'''
|-
| colspan="2" | Moves the print head by the amount specified in the axis variables using linear interpolation. 
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" | X
| width="90%" class="mtx-class-macrohead" | '''MoveToXYZReal'''
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Y
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Z
|-
| colspan="2" |  
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetMovementSpeedReal'''
|-
| colspan="2" | Allows the movement speed to be set progmatically. Range 0.0 - 100.0 
|-
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Speed
|-
| colspan="2" | Speed control (0 - 100) 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveToXYZReal'''
|-
|-
| colspan="2" | Moves the print head to the specific location specified in the axis variables using linear interpolation. 
| colspan="2" | Moves the print head to the specific location specified in the axis variables using linear interpolation. 
Line 791: Line 264:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===SetMovementSpeed===
|-
{| class="mtx-class-macrotable wikitable"
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
|-
| colspan="2" | Sets up the 3D printer component by homing, clearing old print data and assigning the movement speed. 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
 
 
==Property reference==
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''
|-
|-
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]]
| width="90%" | Bed Colour
|-
| colspan="2" | Specifies the colour of the print bed. 
|-
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]]
| width="90%" | Print Colour
|-
| colspan="2" | Specifies the colour of the print output. 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Print Speed (0-100)
|-
| colspan="2" | Specifies the speed of the printer movements. 100 = as fast as possible. 
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| width="90%" | Print Type
|-
| colspan="2" | Specifies how the print is drawn. Object based - uses panel primitives to build up the 3D object, useful for simulated interaction e.g. the formula flowcode and the maze solving example. Point cloud based - uses the point cloud interface to allow complex objects to be built without slowing down the panel interface. 
|-
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
| width="90%" | Print Size
|-
| colspan="2" | Specifies the size of a single print object. 
|-
| width="10%" align="center" | [[File:Fc9-type-12-icon.png]]
| width="90%" | Print Shape
|-
| colspan="2" | Specifies the shape of the print object. 
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Max Print Dimensions
|-
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | X Width
|-
| colspan="2" | Printer dimensions X axis 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Y Length
|-
| colspan="2" | Printer dimensions Y axis 
|-
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
| width="90%" | Z Height
|-
| colspan="2" | Printer dimensions Z axis 
|}==Macro reference==
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ClearPrevPrint'''
|-
| colspan="2" | Clears all of the content from any previous print cycles. 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ControlPrintHead'''
|-
| colspan="2" | Controls the print extruder which plots the location of the print head as the head moves. If Enable = 0 then the extruder is disabled If Enable != 0 then the extruder is enabled 
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Enable
|-
| colspan="2" | Controls if the extruder is active or not 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveByXYZ'''
|-
| colspan="2" | Moves the print head by the amount specified in the axis variables using linear interpolation. 
|-
|-
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | X
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Y
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Z
|-
| colspan="2" |  
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetMovementSpeed'''
| width="90%" class="mtx-class-macrohead" | '''SetMovementSpeed'''
|-
|-
| colspan="2" | Allows the movement speed to be set progmatically. Range 0 - 100 
| colspan="2" | Allows the movement speed to be set progmatically. Range 0 - 100 
Line 941: Line 283:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===SetMovementSpeedReal===
|-
{| class="mtx-class-macrotable wikitable"
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveToHome'''
|-
| colspan="2" | Returns the print head to the start position (0,0,0) 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveToXYZ'''
|-
| colspan="2" | Moves the print head to the specific location specified in the axis variables using linear interpolation. 
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | X
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Y
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Z
|-
| colspan="2" |  
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveByXYZReal'''
|-
| colspan="2" | Moves the print head by the amount specified in the axis variables using linear interpolation. 
|-
|-
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" class="mtx-class-macrohead" | '''SetMovementSpeedReal'''
| width="90%" | X
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Y
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Z
|-
| colspan="2" |  
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetMovementSpeedReal'''
|-
|-
| colspan="2" | Allows the movement speed to be set progmatically. Range 0.0 - 100.0 
| colspan="2" | Allows the movement speed to be set progmatically. Range 0.0 - 100.0 
Line 1,026: Line 300:
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveToXYZReal'''
|-
| colspan="2" | Moves the print head to the specific location specified in the axis variables using linear interpolation. 
|-
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | X
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Y
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Z
|-
| colspan="2" |  
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
|-
| colspan="2" | Sets up the 3D printer component by homing, clearing old print data and assigning the movement speed. 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




==Property reference==
==Property reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''  
| width="90%" class="mtx-class-macrohead" | '''Properties'''  
|-
|-
|-
|-
Line 1,109: Line 340:
| colspan="2" | Specifies the shape of the print object. 
| colspan="2" | Specifies the shape of the print object. 
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Max Print Dimensions
| width="90%" class="mtx-class-propfolder" | Max Print Dimensions
|-
|-
|-
|-

Latest revision as of 14:37, 13 July 2026

Author Matrix Ltd
Version 1.4
Category Scenarios


3D Printer component

A simulation only version of a very basic 3D printer such as a standard RepRap.

Component Source Code

Please click here to download the component source project: FC_Comp_Source_3D_Printer.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_3D_Printer.fcfx

Detailed description

No detailed description exists yet for this component

Examples

3D Print Using Standard 3D Printer CAD file

A simulated 3D print using an external G code file from an actual 3D printer. The G code file must be placed into the same directory as the Flowcode project to work correctly. G-Code_Parser File:Batman.G


3D Maze Generator

A simple 3D maze generator using the 3D printer component to draw the maze. Maze_Builder_3DP






Macro reference

ClearPrevPrint

ClearPrevPrint
Clears all of the content from any previous print cycles. 
- VOID Return


ControlPrintHead

ControlPrintHead
Controls the print extruder which plots the location of the print head as the head moves. If Enable = 0 then the extruder is disabled If Enable != 0 then the extruder is enabled 
- BYTE Enable
Controls if the extruder is active or not 
- VOID Return


Initialise

Initialise
Sets up the 3D printer component by homing, clearing old print data and assigning the movement speed. 
- VOID Return


MoveByXYZ

MoveByXYZ
Moves the print head by the amount specified in the axis variables using linear interpolation. 
- INT X
 
- INT Y
 
- INT Z
 
- VOID Return


MoveByXYZReal

MoveByXYZReal
Moves the print head by the amount specified in the axis variables using linear interpolation. 
- FLOAT X
 
- FLOAT Y
 
- FLOAT Z
 
- VOID Return


MoveToHome

MoveToHome
Returns the print head to the start position (0,0,0) 
- VOID Return


MoveToXYZ

MoveToXYZ
Moves the print head to the specific location specified in the axis variables using linear interpolation. 
- UINT X
 
- UINT Y
 
- UINT Z
 
- VOID Return


MoveToXYZReal

MoveToXYZReal
Moves the print head to the specific location specified in the axis variables using linear interpolation. 
- FLOAT X
 
- FLOAT Y
 
- FLOAT Z
 
- VOID Return


SetMovementSpeed

SetMovementSpeed
Allows the movement speed to be set progmatically. Range 0 - 100 
- BYTE Speed
Speed control (0 - 100) 
- VOID Return


SetMovementSpeedReal

SetMovementSpeedReal
Allows the movement speed to be set progmatically. Range 0.0 - 100.0 
- FLOAT Speed
Speed control (0 - 100) 
- VOID Return


Property reference

Properties
Bed Colour
Specifies the colour of the print bed. 
Print Colour
Specifies the colour of the print output. 
Print Speed (0-100)
Specifies the speed of the printer movements. 100 = as fast as possible. 
Print Type
Specifies how the print is drawn. Object based - uses panel primitives to build up the 3D object, useful for simulated interaction e.g. the formula flowcode and the maze solving example. Point cloud based - uses the point cloud interface to allow complex objects to be built without slowing down the panel interface. 
Print Size
Specifies the size of a single print object. 
Print Shape
Specifies the shape of the print object. 
Max Print Dimensions
X Width
Printer dimensions X axis 
Y Length
Printer dimensions Y axis 
Z Height
Printer dimensions Z axis