evil-mad / stipplegen Goto Github PK
View Code? Open in Web Editor NEWSoftware that can create stipple drawings and “TSP art,” from image files
License: GNU Lesser General Public License v2.1
Software that can create stipple drawings and “TSP art,” from image files
License: GNU Lesser General Public License v2.1
It would be also usable, to be able to export the voronoi cells as a svg.
Best regards
Hi there,
I wanted to play around with the lowest number of stipples possible, but can only access the following ranges at the bottom end of the scale as the app doesn’t give fine enough control / offer a way of inputting numbers manually.
I can only access:
10, 76, 143, 209, 276, 343 etc.
Thank You,
Simon
Hello, sometimes I find that the UI becomes unresponsive after moving the controls around. Is there a way to run the application via command line with inputs and a file to simply get an output? That would be awesome and I think many other users would benefit as well.
Is it possible to uprise the max stipple count of 10000 to much more for example 100K or more?! In a lot of cases much more are needed.
It would be also nice, if we could export the voronoi net also beside the tsp and stipple svg export.
I played the whole night with it and it makes so much fun :)
Best regards! Tungee
This is more of a generalized question about controlP5. I've forked the repo and I'm working on a project which depends on stipplegen, so I'll be giving this some attention but most of that will be learning the processing environment and community.
It seems from the surface that the UI is refreshed at the same frame rate as the canvas. On my target hardware (which is not cutting edge) one iteration with 4000 dots takes about 45 seconds. If I attempt to change the GUI controls for dot size or white point during that 45 seconds, there is no response.
If I hold down the mouse pointer for 45 seconds on the slider, it will "grab" eventually. It would be a nice feature to decouple the controls from the dot rendering.
It's awesome that you can export the TSP path in addition to the stippling, but the Voronoi cells themselves can look pretty cool too! Would it be possible to add an export option for these as well?
I use Processing 3.0b5 and ControlP5 2.2.5.
The size() method doesn't support variables as input anymore. Solution for that is the hardcode the numbers: size(800, 710, JAVA2D);
Apart from that I get an error with ControlP5.
The function "controller(String)" does not exist.
For example with this line: cp5.controller("SAVE_STIPPLES").setCaptionLabel("Save Stipple File (.SVG format)");
I can't find a solution for that.
I have a reqeust regarding the max stipple count of 10000.
I would propagate a much higher max. stipple count, 100000 perhaps?!
Best Regards
I was wondering if some of the calculations could run in shaders on the GPU to speed up the process?
Thanks.
Several improvements made by @ShelMi http://forum.evilmadscientist.com/discussion/comment/2206#Comment_2206
gerv@wolf:~/Download/StippleGen2$ application.linux64/StippleGen2
Exception in thread "main" java.lang.ExceptionInInitializerError
Caused by: java.lang.NumberFormatException: For input string: "9-i"
at jdk.internal.math.FloatingDecimal.readJavaFormatString(java.base@9-internal/FloatingDecimal.java:2054)
at jdk.internal.math.FloatingDecimal.parseFloat(java.base@9-internal/FloatingDecimal.java:122)
at java.lang.Float.parseFloat(java.base@9-internal/Float.java:451)
at java.lang.Float.<init>(java.base@9-internal/Float.java:532)
at processing.core.PApplet.<clinit>(PApplet.java:182)
and:
gerv@wolf:~/Download/StippleGen2$ java -version
openjdk version "9-internal"
OpenJDK Runtime Environment (build 9-internal+0-2016-04-14-195246.buildd.src)
OpenJDK 64-Bit Server VM (build 9-internal+0-2016-04-14-195246.buildd.src, mixed mode)
gerv@wolf:~/Download/StippleGen2$
As you can see, it seems like it's trying to parse the Java version number and failing.
This is the version of OpenJDK which comes with Ubuntu 16.04. This may be a bug in the copy of Processing which is embedded in it, I don't know. I tried to get it working from source using the latest Processing - it does - and then generate a newer version using Export Application but I haven't got that working yet - my exported application crashes for a different reason.
https://github.com/evil-mad/stipplegen/blob/master/StippleGen/StippleGen.pde#L838
What is going on with the scale factor and the maxSize here? The sample rate across a cell greatly affects the change to the voronoi... but I don't get why, it's not intuitive. None of the papers I've found discuss the tweaking you're doing here. Please break it down for me coz I'm lost and I'd really like to improve my weighting results.
I get that the rate is higher for smaller cells, and I have played with different rates. Bad scaling makes points jump around like crazy or settle into a nearly even grid. The sweet spot is hard to find!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.