-
-
Notifications
You must be signed in to change notification settings - Fork 38
Home
Sandify is working on a solution to turn your cold, empty hearted, emotionless sand tables into cold, empty hearted emotionless sand table robots with enchanting patterns.
Sandify is a labor of love, but if you'd like to support me financially, I do have a Donation system set up. Or just PayPal
Part of the fun of Sandify is playing it like you would a xylophone.
The goal is to make it easy to make your first pattern by just clicking and scrolling, finding something you like.
Here are some features that you might miss the first time through
You can import thr files or gcode files to use in sandify. Sandify can't lift the pen, so only XY moves are considered from gcode files, not Z lifts.
Sandify can create complex patterns by running one shape after another. You can add a wipe at the beginning, or carefully combine shapes to make interesting art.
Pay close attention to the "Point" shape, which is really useful when combining shapes to make the connecting lines go exactly where you want.
Shapes also allow reversing, which will help you avoid clobbering the shapes after they are done.
In the Spin and Grow options, you can opt to use a function instead of a constant. This can make
some really neat patterns. Most basic math functions are available. Currently, the only variable I
provide is i
, which is the number of the loop (and it is a decimal, so i
might be 1.5 halfway
through the second loop).
Tracks are a bit abstract, so we draw a green line indicating where the track is. The basic idea is that you can control where the center of the shape is, and how it moves around each loop. The rest of the shape drawing is then based on the location of the track during that loop.
The machine tab lets you set options specific to your machine. These settings are kept from session to session (mostly) to save you from having to type them over and over again.
These values affect the limits of the pattern. So they don't have to be the limits on your machine. For example, if you want to just limit a drawing to 1/4 of your machine, you might set the min/max limits to that quadrant of the machine. Or if you want to draw a growing star, limited to inside a circle, you can do that with the Polar limits.
Here is a rundown of the options:
Rectangular Machine: A machine with a min and max width and height.
Polar Machine: A machine with a max radius.
Min/Max X: The minimum and maximum values for the X axis, which is assumed to be the left-right axis.
Min/Max Y: The minimum and maximum values for the Y axis, which is assumed to be the up-down axis.
Max Radius: This is the size of the table from the center to the edge of the circle. On a Sisyphus table, this is really just a guide, because the pattern will get the output normalized. Patterns designed for a 250mm table will just be scaled larger on a 1m table. Setting this to your table will help the preview be more accurate.
Start/End point: This helps polar tables start or end patterns at the center or the perimeter by adding points on the center or perimeter.
Force Origin: Force the first or last point to be at one of the corners. This is useful when combining gcode outside of sandify, to return the machine to a known location.
Try to minimize perimeter moves: This will abandon the original order of the lines, and instead, finish the pattern by reducing the amount of time spent around the edges of the table. This can change the look of the pattern, because it may not draw the line segments in the same order (and sand can compound like that) but it does move in the exact same line segments, and can save on file size and machine time.
The export button opens the export dialog.
The export options will be kept from session to session (mostly) to save you from having to putting in the same options over and over.
GCode will output gcode meant for marlin/grbl type machines. The output is going to be mostly G1 X... Y...
. Even if you selected the polar machine in the machine tab, these values are going to be
x and y. This doesn't have to be a sand table output. You can also attach a pen to a 3D printer and
draw sandify patterns on the bed.
Theta Rho is the format for Sisyphus tables. It is a long list of theta rho
, which is just the
angle from the center (absolute, accumulating with each rotation), and the normalized distance from
the center (0,1). This format can be used with the rectangular limits on the machine tab.
SVG will save the path in an SVG format. You can import that into inkscape, or just use it as an image. The svg format is used for drawing robots like axidraw. Let me know if you use it. I'd love to see it in action.
Anything that uses gcode (or thr files) can be used with sandify. But the machine this was designed for is the ZenXY from V1Engineering.com:
ZenXY was inspired by the awesome Sisyphus Kinetic Art Table by Sisyphus Industries, which is also supported.
Sandify is hosted on github.io
Please post any problems, feature requests or comments in the github issues: Sandify Issue Tracker
Sandify is a community project. If you're interested, join us.
Sandify is licensed under the MIT license.
Patterns that you create and gcode generated with sandify are not covered under the sandify license (they are your work, and are your copyright).