Module com.marginallyclever.ro3
Class MarlinSimulation
java.lang.Object
com.marginallyclever.ro3.node.nodes.marlinrobot.marlinrobotarm.marlinsimulation.MarlinSimulation
MarlinSimulation is meant to be a 1:1 Java replica of Marlin's 'Planner' and 'Motor' classes.
It is used to estimate the time to draw a set of gcode commands by a robot running Marlin 3D printer firmware.
Users should call bufferLine(MarlinCoordinate, double, double), which will add to the queue. The queue
must not exceed MarlinSettings#getInteger(MarlinSettings.BLOCK_BUFFER_SIZE) items in length. Consuming
items from the head of the queue
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidbufferLine(MarlinCoordinate destination) Add this destination to the queue and attempt to optimize travel between destinations.voidbufferLine(MarlinCoordinate destination, double feedrate) Add this destination to the queue and attempt to optimize travel between destinations.voidbufferLine(MarlinCoordinate destination, double feedrate, double acceleration) Add this destination to the queue and attempt to optimize travel between destinations.getQueue()return the queue of blocks.voidupdate(double dt)
-
Constructor Details
-
MarlinSimulation
-
-
Method Details
-
bufferLine
Add this destination to the queue and attempt to optimize travel between destinations.- Parameters:
destination- destination (mm)
-
bufferLine
Add this destination to the queue and attempt to optimize travel between destinations.- Parameters:
destination- destination (mm)feedrate- (mm/s)
-
bufferLine
Add this destination to the queue and attempt to optimize travel between destinations.- Parameters:
destination- destination (mm)feedrate- (mm/s)acceleration- (mm/s/s)
-
getQueue
return the queue of blocks.- Returns:
- the queue of blocks.
-
update
public void update(double dt) -
getCurrentPosition
-