PDA

View Full Version : Stippling (a.k.a. Pointillism) Program - Adoption needed



HayTay
09-02-2006, 04:57 PM
While searching for something else a while ago I ran across a "Weighted Voronoi Stippling (http://www.mrl.nyu.edu/~ajsecord/stipples.html)" program. The program is way cool (see screen captures below) but seems to have a bunch of programmatical issues. All or parts of the program appear to be in the "public domain" so I was wondering if any of the programming guru's would like to take a crack at spiffing up the Stippling application? All, or parts, of the program(s) code are done using C++ according to one reference. Nothing appears to have been updated with this application for almost a year (since 09/20/2005).

Does this interest any hot-shot programmer or anyone else??? Maybe someone could propose some sort of collaboration with the original programmer, Adrian Secord. A White Paper by Adrian can be found here (http://www.mrl.nyu.edu/~ajsecord/npar2002/npar2002_ajsecord_preprint.pdf).

Several points (pun intended) that need to be addressed:
1. After performing some operations the program refuses to close
2. The increase/decrease points hot keys do not seem to work
3. Manually entering the number of points sometimes doesn't work, the value is not retained after clicking OK
4. When changing parameters the display is often not updated
5. You can save the Stippled graphic as an EPS file but so far I haven't been able to open the saved EPS file with any other application due to file errors.
6. It would be nice to be able to save the Stippled picture in other raster/vector formats
7. The set radii function would benefit from an increase/decrease hotkey combination
8. Etcetera...

klick0
09-06-2006, 02:46 PM
What do you plan to do with this? create g-code to machine dot patterns?

I kind of like the idea of dots as opposed to v-carve type situations where it's a line streaking through the image, probably make a better output. Granted the disavantage being that it would take a long time to machine I would think.

What is an EPS file? if you could output that, could you then machine that? I could think with a few parameters it would be easiest to just output the g-code.

ross

Switcher
09-06-2006, 10:41 PM
HayTay,

I wrote a generic program that will do the same thing. My program will take any bitmap and scan the "X & Y-axis".
In my sample I chose to use black and white for simplicity. The program will not cut in the "X & Y-axis" it will only infeed in the "Z-axis" (Endmill).

I made the bitmap in MS-Paint, that I used in my program. So that means you could use any Font on your PC.

Also, the sample program is slow on large bmp's.




I attached 3 screenshots:
( Infeed in white "G01", Rapid in blue "G00" )



(1) "Switcher" inside an oval.
(2) Zoom of #1.
(3) My sample program.





Jerry







.

HayTay
09-06-2006, 11:02 PM
I wrote a generic program that will do the same thing. My program will take any bitmap and scan the "X & Y-axis".
Jerry
Switcher,

Is that part of the Sketch2Code (http://www.cnczone.com/forums/showthread.php?t=19294) application you've been working on, or some other project? I've been following that post for some time now and have enjoyed seeing your progress. I have to admit, though, that I have not tried it... yet.

If this is a different programming app. is it anywhere near ready for the CNCZoner's to play with??? Um, uh, I mean:cheers: Beta test it!

Keep up the good work, I think you're on to something.

Switcher
09-06-2006, 11:36 PM
HayTay,

This is a new program, just messing around. :)

I thought about adding something like this into "Sketch2Code". It's not ready yet.

Whats really cool about this code I started is, the scanning of the "X & Y-axis" is looking for a certain color (black). So that means code could be wrote to add as many colors that I add to my MS-Paint bitmap, and use each color as a sub program (g-code).





Jerry



.

HayTay
09-06-2006, 11:39 PM
Let me reemphasize that this is NOT my program, all credit goes to the original programmer, Adrian Secord and any associates that may have helped him.


What do you plan to do with this? create g-code to machine dot patterns?
Yeah, I thought that would give a rather unique effect when cut convex into an acrylic sheet and illuminated. For added effect, a clear piece of acrylic could be painted an opaque color (or colors) on one side, then the dots would be cut into the surface. Frame and backlight the result and you would have an effect similar to a Lite Brite (http://www.hasbro.com/common/images/products/072672272b44_Main400.jpg) (Why wait? For web based Lite-Brite fun check out http://www.sfpg.com/animation/liteBrite.html#). It would also be an unusually nifty effect with the dots cut concave into (out of?) a piece of wood, foam, plastic, metal, etc. You could clear the area around the dots leaving either dots or small posts of varying height. The effect this would give is sort of like jamming your face into one of those pin things (http://www.spencersonline.com/index.cfm/fuseaction/products.detail/categoryID/99cecfe9-e9ff-49b0-b901-1cc272c0e364/productID/f7ff1568-522b-4532-aee3-fb0492aa1d6f/) they have at Spencer's Gifts only with a larger gap between the dots.


Granted the disavantage being that it would take a long time to machine I would think.
That would be a definite!


What is an EPS file? if you could output that, could you then machine that? I could think with a few parameters it would be easiest to just output the g-code.
EPS stands for Encapsulated PostScript. You can read about the EPS file format here on Wikipedia (http://en.wikipedia.org/wiki/Encapsulated_PostScript). Yes, the EPS file would have to be converted to G-code using some other application.

Switcher
09-07-2006, 12:13 AM
Originally Posted by klick0
Granted the disavantage being that it would take a long time to machine I would think.

It would all depend on how fast you could rapid (G00) your cnc machine (without lost steps), the depth in "Z", and the clearance height from the work material in "Z".

If you kept the "Z" clearance/depth real shallow, I think the cycle time would be ok.


Jerry


.

HayTay
09-07-2006, 12:19 AM
OH, NO, it's peck drilling on steroids!!!

Switcher
09-07-2006, 12:33 AM
.

Another screenshot = "CNC zone.com" :banana:


The g-code isn't exactly efficient.

Jerry

.

HayTay
09-07-2006, 12:53 AM
The g-code isn't exactly efficient.
Like everything, that comes later.

To quote HuFlungDung, "First you get good, then you get fast."

rweatherly
09-09-2006, 09:35 AM
It looks like the original program used the same size "dot" and increased the dot density for dark colors. You could also use a process similar to VCarve, but without the line that connects the dots (use a V shaped tool, and vary the depth of cut to change the dot size according to the shade of the pixel in the original image).

rweatherly
09-09-2006, 09:53 AM
.

Another screenshot = "CNC zone.com" :banana:


The g-code isn't exactly efficient.

Jerry

.

Making the code more efficient would be an intesting math problem, but since the move from point to point is always at clearance height, it might not be too difficult to solve.

HayTay
09-09-2006, 10:50 AM
(use a V shaped tool, and vary the depth of cut to change the dot size according to the shade of the pixel in the original image).
YES! That's what I was imagining, also. Now if we could only interest a programmer that could take the current concept and update it to a viable CNC program/application.

Unfortunately, I am not a programmer.

Hopefully, if we keep this thread active, we may pique a "code jockey's" interest and they can ride it to the finish line.

rweatherly
09-09-2006, 02:35 PM
I could create the code, but I think Mach3 already does this. There is an image import, and various ways of machining it. The one that looks like what you want is "Dot Diffusion Rendering".

HayTay
09-09-2006, 03:01 PM
I could create the code, but I think Mach3 already does this.
I was thinking more of a stand-alone application that corrected the issues (there may be more) noted in the first post and would output the Stipple files in multiple formats (BMP, JPG. GIF, PNG, CDR, DXF and/or others). The application would/could also produce a G-code file ready to run in MACH3 or similar CNC controller software similar to SPALM's SpiroCNC (Thread1 (http://www.cnczone.com/forums/showthread.php?t=13277) and Thread2 (http://www.cnczone.com/forums/showthread.php?t=14861)) and Switcher's Sketch2Code (http://www.cnczone.com/forums/showthread.php?t=19294) and "Generic" applications.

The program could be made to produce "center points" of several different colors depending on the "dot diameter". Your V shaped tool could then, in G-code" be made to "peck drill" the center points to a depth determined by the points color (orig. dot diameter). Did I convey that concept correctly? Or... Is it only something that sounds good in my mind and needs further clarification?

What'cha think?

Switcher
12-23-2006, 02:55 PM
Has anyone worked on this?


.

HayTay
12-23-2006, 04:10 PM
Has anyone worked on this?

.

Unfortunately, no, since my programming skills are limited to none. Realistically, they are more towards the none side. I still think it is a cool little project that would produce some nifty effects/projects if it could be made to work.

What do you think, Switcher? Is this of any interest to you? I'm still impressed with your Sketch2Code and Table Leveling (.NET?) apps.

Switcher
03-30-2008, 06:56 PM
I started another "Stippling" post over at the Vectric forum here (http://www.cnczone.com/forums/showthread.php?p=432673#post432673).


.

Chris2001
03-28-2014, 02:42 AM
Couldn't you just use the pointalism filter in photoshop then import as a jpeg into your design program?