JSisyphus is licensed with the quite permissive MIT license:Ĭopyright 2017 Tom Dilatush (aka "SlightlyLoony") Please feel free to fill in this gap! You may contact the author at How is JSisyphus licensed? The author is a retired software and hardware engineer who did this just for fun, and who (so far, anyway) has no code reviewers to upbraid him. Here's a very simple example of what a Sisyphus table DSL might look like: If such a DSL would interest you, please let the author know! Such a DSL would allow programmers who don't know Java, and even clever non-programmers, to create new tracks without having to program in Java at all. You would create a text file with the Sisyphus table "program", then run it through the DSL to produce the same outputs that JSisyphus does today. This would be a textual programming language that's specific to the problem of generating tracks for the Sisyphus table. If enough people are interested, the author might be persuaded to add a domain-specific language (DSL) as a front end for JSisyphus. That Main class is something you can run yourself, and if you do you'll see all the example tracks generated on your system, with the. Within that package you'll find the examples package, which has several sample track generating classes, and a Main class that runs them. The easiest way for a developer to use JSisyphus is to clone this repository locally, then use a suitable IDE (the author uses "IDEA" by JetBrains, but any other modern IDE should do) to fool around with it. To make new tracks, you must be able to write (fairly simple) Java programs. Getting started.Īt least for now, JSisyphus is suitable only for a developer to use. There are no external libraries required. The only dependency JSisyphus has is on Java 1.8 or higher. These are generated much faster than the table can play them, and are therefore quite useful when developing an algorithmic track. png files that each contain an emulated run of a track on the Sisyphus table. thr files that each contain a generated Sisyphus table track that can be uploaded directly to the Sisphus table for playback. When used as in the examples, JSisyphus has two outputs: The Main class in the examples package is a good starting point to explore how you might use JSisyphus to create Sisyphus table tracks of your own. Fundamentally JSisyphus is a library, not a standalone program. There are many deviations from that model to accommodate the polar coordinate system used by the Sisyphus table, as well as some peculiarities that arise from the fact that to the Sisyphus table, a "straight" line is actually an arithmetic (or Archimedian) spiral. The model for JSisyphus is the standard Java graphics subsystem, specifically the Graphics2D class and all the other classes that work with it. Well, probably the world doesn't actually need JSisyphus - it's mainly here for the author's personal enjoyment, but with some faintish hope that someone else interested in creating Sisyphus table tracks will also find it useful. Some examples of such classes are included in the "examples" package: classes that use JSisyphus to create actual tracks that are playable on the Sisyphus table. The algorithms themselves are defined by classes that the user of JSisyphus writes. Most of JSisyphus consists of classes and functions to make algorithmic creation of tracks for the Sisyphus table easier. This table is made with 70x70cm base, but you can make any size you want.JSisyphus is a command line utility program that creates tracks algorithmically for a Sisyphus table, and also creates PNG files with emulations of those tracks' playback on the actual Sisyphus table. I made sisyphus table, using some 20x20 extrusions,
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |