User Tools

Site Tools


tamiwiki:projects:drawbot
cat drawbot_skeleton.gcode | llm -m openrouter/anthropic/claude-3.7-sonnet -x - | tee drawbot_claude37.gcode

; drawbot_skeleton.gcode
;extend the following gcode to draw an orthographic view of a rubic cube
; speed is F2200 
; limits are y:60 x:200
; only one color
; do not draw occlude lines

G21 ; Set units to millimeters
G90 ; Set to absolute positioning

M5 ; Pen up
G4 P1 ; always Wait 1 second after pen up
M3 S1000 ; Pen down

we came a long way

cat drawbot_skeleton.gcode | llm -m 3.5 -x - | tee drawbot_gpt35-turbo.gcode

G1 X0 Y0 F2200 ; Move to starting position
G1 X60 Y0 ; Draw first square of the rubic cube
G1 X0 Y60 ; Draw second square of the rubic cube
G1 X60 Y60 ; Draw third square of the rubic cube
G1 X60 Y20 ; Draw fourth square of the rubic cube
G1 X60 Y40 ; Draw fifth square of the rubic cube
G1 X20 Y60 ; Draw sixth square of the rubic cube
G1 X40 Y60 ; Draw seventh square of the rubic cube
G1 X20 Y0 ; Draw eighth square of the rubic cube
G1 X40 Y0 ; Draw ninth square of the rubic cube

M5 ; Pen up
G4 P1 ; Wait 1 second
M2 ; End of program

old

cat drawbot_skeleton.gcode | llm -s "extend this gcode to draw a rubic cube in esometric view , top left.
> " -
To draw a Rubik's Cube in an isometric view, you will need a series of G-code commands that move the pen in a specific pattern to represent the cube's edges and faces. The Rubik's Cube consists of 27 smaller cubes arranged in a 3x3x3 grid. Here is an extended G-code example to create an isometric view of a Rubik's Cube, starting in the upper left.

This code assumes that you'll be using a pen plotter or similar device and will draw on a 2D plane that represents the cube in isometric perspective. 

```gcode
G21 ; Set units to millimeters
G90 ; Set to absolute positioning

M5 ; Pen up
G4 P1 ; Wait 1 second after pen up
M3 S1000 ; Pen down
G0 F2200 ; Set movement speed

; Move to start position for the isometric view
G0 X40 Y40 ; Move to the starting point

; Draw the front face of the Rubik's Cube
G1 X60 Y60 ; Move to front right corner
G1 X40 Y80 ; Move to top left corner
G1 X20 Y60 ; Move to front left corner
G1 X20 Y40 ; Move to bottom left corner
G1 X40 Y20 ; Move to bottom right corner
G1 X60 Y40 ; Move to front right corner
G1 X40 Y40 ; Move to starting point

; Draw the middle layer of the Rubik's Cube (slightly above the first face)
G0 X50 Y50 ; Move to the middle layer starting point
G1 X70 Y70 ; Move to front right corner
G1 X50 Y90 ; Move to top left corner
G1 X30 Y70 ; Move to front left corner
G1 X30 Y50 ; Move to bottom left corner
G1 X50 Y30 ; Move to bottom right corner
G1 X70 Y50 ; Move to front right corner
G1 X50 Y50 ; Move to starting point

; Draw the back face of the Rubik's Cube (further back)
G0 X60 Y60 ; Move to the back face starting position
G1 X80 Y80 ; Move to back right corner
G1 X60 Y100 ; Move to top right corner
G1 X40 Y80 ; Move to back left corner
G1 X40 Y60 ; Move to bottom left corner
G1 X60 Y40 ; Move to bottom right corner
G1 X80 Y60 ; Move to back right corner
G1 X60 Y60 ; Move to starting point

; Draw the edges connecting layers (create depth effect)
G1 X50 Y50 ; Move to middle layer starting point
G1 X40 Y40 ; Draw edge to bottom layer
G1 X40 Y80 ; Draw edge to top layer
G1 X30 Y50 ; Draw edge to furthest left layer

G1 X50 Y50 ; Return to middle layer starting point
G1 X60 Y60 ; Draw edge to back layer
G1 X45 Y55 ; Draw slightly towards the bottom right to create depth

M5 ; Pen up again to end drawing
G4 P1 ; Wait 1 second after pen up
```

### Notes:
1. The coordinates (`X`, `Y`) should be adjusted based on the actual size of your drawing area and the desired size of the Rubik's Cube.
2. This code assumes a basic movement sequence and will plot an isometric view of the cube, but it may require further refinement or more details depending on your exact plotting capabilities and requirements.
3. Adjust the `G0` and `G1` speeds according to your plotter's performance and necessary drawing speed for better clarity.
4. The colors of different squares cannot be represented in G-code directly; thus, this drawing is simplified. Additional coding would be needed if you were using different pen colors to represent different cube colors.
tamiwiki/projects/drawbot.txt · Last modified: 2025/10/20 02:25 by yair