Open techninja opened 9 years ago
http://www.princeton.edu/~aatishb/processing/tree_noleaves/ I know there's about a million of these around, but this one has a fun exploratory interface and the code is quite small.
Work/Changes required:
http://simplify.thatsh.it/ and code @ https://github.com/jpag/simplify.thatsh.it This is a very cool little app that takes a photo and creates an artistic impression of it with simple shapes and lines.
Work/Changes required:
http://nathanfriend.io/inspirograph/ with code @ https://github.com/nfriend/inspirograph Incredible and well thought out spirograph like toy. Use D3.js SVG library and TypeScript. Quite fun!
Work/Changes required:
http://scratch.mit.edu -- http://snap.berkeley.edu/ This would allow for a far more direct web based interface than the external application integration, but would rely on existing integration. Though @oskay has suggested against this method, I see some benefits:
Pros:
Cons:
Work/Changes required:
As a general caution, adding additional third-party modules like these introduces additional places for bugs-not-under-our-control to sneak in. We have already had some issues from bugs deep within the serial or method draw code causing problems. One possible approach would be to label all of these as "Experimental Modes" and leave them in permanent beta status.
Fractal trees are good. They will only look good with pens, however.
Simplify is pretty neat. I worry that it's too simple. What everyone wants is a program that will take an image and output a representational watercolor. Simplify almost promises that, but it's so absurdly simplified that it almost over-promises. (Is there an approach that will do that?)
Inspirograph has an awesome interface. Again, will look best with pens. Would be best with multiple pen colors.
Direct Scratch sounds like a huge chunk to bite off. And a screen size issue. Also, a huge amount of the success of a given programming language/environment pair (see Arduino, Scratch, etc) is the consistent interface. I think that the cost/benefit ratio of this is likely too high.
More modes:
These modes don't fit into the core model, and the idea of adding more modes to the list of "Experimental" doesn't fit either (figuratively in the sense of the program's ideals, and literally in the actual settings menu).
These would work better as some kind of "third party extension", selected from a list that users could select from to download and use in their application. Building them out as modes right now is out of scope/priority, but if they're documented here as possibilities for a time when such a 3rd party extension browser is properly thought out, they would "work" then and could be integrated by us or other interested parties. I've done nothing right now to define that or how it would even work, though I suspect it could be done entirely on Github infrastructure. Again, the point here is just to talk about options. I don't want to support these within RoboPaint any more than you.
I'll take your word on the Scratch/Snap complications. I do like the possible Pros and am glad to have documented the possibility.
I've already put quite a bit of proof-of-concept work into a fast C++ stipple/generalized raster-to-vector mode to handle the 99% of photo to watercolor conversion use cases. It has not been a priority though and I have yet to commit any code for it. If we want to prioritize that out for v1 I think it would be great, but it wouldn't really be third party, and would likely be a core mode somewhat similar to auto-paint with more dropdown options.
More modes feedback:
Understood, on the scope of the project.
http://www.i-programmer.info/news/167-javascript/7528-a-double-pendulum-in-100-lines-of-javascript.html Code @ https://github.com/micaeloliveira/physics-sandbox/blob/master/assets/javascripts/pendulum.js
I've had this one on the list for a long time, as being able to trace and make art out of physical simulations has always been something I've loved. There's quite a few different ways this could go as well.
Work/Changes required:
Design and customize a celtic knot: http://w-shadow.com/celtic-knots/ (Also usable now with SVG export from http://sourceforge.net/projects/knotter/)
Work/Changes required:
Input via photo or webcam: http://face.haluska.sk/. Output to images or SVG! Has a BUNCH of options.
Work/Changes required:
Draws polygons rotated and aligned to give the impression of a curve: http://jlchapa.azurewebsites.net/math/pursuitcurves.html
Work/Changes required:
Draws Piet-Mondrian Style images in a random yet interesting fashion. http://jefworks.github.io/mondrian-generator/
Work/Changes required:
I made this JS live coding turtle graphics editor a while ago... http://meemoo.org/blog/2013-02-11-live-code-editor-javascript-to-svg ... With a couple tweaks I think it could be a good mode.
With pen (and brush) choosing different fills and angles in the creation view, and seeing a preview, would be great.
http://kevinhou.wix.com/projects#!handwriting-font-app/cbfk
This could be integrated with robopaint-mode-example
.
Work/Changes required:
robopaint-mode-example
to specify your own font.Makes a drawing of a birthday cake with an adjustable number of candles. This would take care of #136
AUTOCAD MODE
Could be fun to be able to produce robot drawn versions of AutoCad or Sketch-Up Drawings with nuanced line-weight and stroke-weight.
Creates mazes! Found a little code here, uses paperjs already. Unicursal maze generator.
Work/Changes required:
@techninja that's my labyrinth! Will help test. https://github.com/forresto/sketch/blob/master/labyrinth-01.paper.js
I have the start of an interactive one (mouse can be wonky).
@techninja That's a gray path drawn over a thicker black path. Is there something in paper or robopaint that could approximate that (stroke the inside and outside of one path)?
Sure. Just differentiate what gets created as the "movement path" vs the path shown on screen. In the latest RoboPaint we draw to the paper.js "Action" layer the polygons that will become the x/y coordinate movements for the robot. You can also do path manual offsetting to take a given shape and trace an inset version of it.
From @RI0 in #255:
Could we look at adding a Serendipity Button in the Print Mode that would render the current print absolutely unique?
The button could open a window to generate the Serendipity Seed based on a set of variables such as :
Time of Day, Current Cloud Cover, Current Temperature, or some other system based or human entered variable related to the artist's mood.
Some of the variables could come from an online service such as Wolfram Alpha
https://www.wolframalpha.com/input/?i=weather+in+san+francisco
Serendipity could play out by adding some error to the brush height, the overshoot, the speed, precision, etc. in a manner that would make it very difficult to produce two prints that are exactly the same... and some might actually be better than the vector drawing source.
This issue is meant to be a catch-all for interesting projects that would be fun/interesting to have as a mode to drive RoboPaint. I see these kinds of things all the time but have no centralized location to store them (or time to work on them directly) so I figure they should just show up here as a single comment. Format should be: