Jump to content

Possible plugins


davidf

Recommended Posts

Just wondering if anything like the following plugins already exist (or are in development) ...

1) Watercolor fill

Shading that is kind of "splodgy", like watercolor painting.

DSC01581.jpg

2) Object fill

Given a set of objects (surrounded by transparency) -- either from a file or the clipboard -- fill the current selection with non-overlapping (or overlapping if a box is checked) copies of randomly selected objects, possibly with random scaling or rotation.

Not the same thing as "pattern fill"!

white-eggs.jpg

(Couldn't find a perfect image to fit this -- close enough!)

3) Crystal growth

(Diffusion limited aggregation).

Grow a fractal-looking structure outwards from a point (or adjacent to a particular color).

BigDLA2.gif

4) Skeleton

Find the skeleton (medial axes) of a shape:

http://www.voronoi.c...st_and_Skeleton

(Which could lead to other interesting effects, like shading the different regions in particular ways, or even warping based on adjustments to the skeleton -- just dreaming! I have no idea how to do that).

a1447a41c6c4d0b25b72b75b1cd37f95d8b61fe1_m.png

5) Texture synthesis

Photoshop CS6 has a "content aware fill" ... the following does something like it, but might take too long to run:

http://graphics.cs.c...EfrosLeung.html

bread_w7.gif

6) Stippling

Edit: Done now ... http://forums.getpaint.net/index.php?/topic/25637-stipple-plugin-21st-nov-2012

Weighted Voronoi stippling, described here:

http://mrl.nyu.edu/~...ples-node1.html

stipples-Timg39.png

7) Search and replace

I know it might sound weird, but it could be handy to be able to erase or modify repeating patterns in an image -- for example, artifacts in a scanned image, or an unwanted background pattern.

Coming up with an interface could be tricky. I am imagining a small grid (16x16?) where each pixel in the target pattern can either be "this color" (with a tolerance?), "anything but this color" or "ignore". It would also be handy to be able to fill the pattern from the clipboard or a file. There would also be an operation for each pixel: "change to this other color", "leave unchanged" and maybe some other unary operation (invert, brighten / darken ...)

Not sure what to do about overlapping matches in the image. Maybe the top / left has priority, and pixels involved in a previous match cannot be involved in second one.

Edit: Maybe not such a weird idea after all - Andrew Glassner designed a (very!) advanced "image search and replace" in 2003 that could change the first image below into the second one:

F-May03a.jpg

F-May03b.jpg

Edited by davidf
Link to comment
Share on other sites

The Object Fill reminds of this:

But to me is not user friendly, I like something simpler

And a closer to Stippling is the Halftone?

The Crystal growth and the skeleton are great ideas, especially the Skeleton for text effect, I don't remember we have something similar to both.

Edited by yellowman
Link to comment
Share on other sites

The Object Fill reminds of this:

http://forums.getpai...e-paint-plugin/

But to me is not user friendly, I like something simpler

Yeah, that's a slightly different idea.

This is the kind of interface I was thinking of:

ObjectFillDialog.png

The input file (or clipboard contents) is assumed to contain one or more objects surrounded by fully transparent pixels.

"Tiled" means that objects can be partially drawn on one edge and continued on the opposite edge.

(Maybe there should also be a checkbox called "avoid edges" to forbid partially drawn objects when it isn't tiled).

A spacing of zero means "touching", negative means overlapping, positive means far apart (1.0 = the width of the object).

The Crystal growth and the skeleton are great ideas, especially the Skeleton for text effect, I don't remember we have something similar to both.

Looking through the list of existing plugins, the only one I can see that does text effects (other than drawing along a spiral etc.) is this one:

Text Pro - http://forums.getpai...showtopic=17056

Have I missed any other plugins that change the appearance of text?

By the way, these are all just ideas -- I'm not "reserving" any of them, so feel free to implement if they inspire anyone.

Edited by davidf
Link to comment
Share on other sites

If you can read a bitmap off the clipboard with transparent pixels, I'd be impressed.

I can't seem to figure out how to do it.

When you figure this out, I'd love it if you could correct the code listed on this page:

http://boltbait.com/pdn/CodeLab/help/tutorial4.php

...under the "Clipboard" heading.

Link to comment
Share on other sites

If you can read a bitmap off the clipboard with transparent pixels, I'd be impressed.

I can't seem to figure out how to do it.

Eek. Thanks for the warning!

The following page looks potentially useful, but I haven't tried anything out from it yet:

http://stackoverflow...lpha-channel-in

It does get me wondering how Paint.net itself handles the alpha channel when you copy and paste a selection ...

Edited by davidf
Link to comment
Share on other sites

If you search around the web, I'm sure you can find the source code to Paint.NET... an older version, but it should still have all the clipboard stuff in it.

6) Stippling

Weighted voronoi stippling, described here:

http://mrl.nyu.edu/~...ples-node1.html

stipples-Timg39.png

I would love to see this.

Link to comment
Share on other sites

I think we have something very similar...

Link to comment
Share on other sites

I believe stippling uses fixed sized dots.

Good point (and the original image I showed had fixed size dots) -- though I like the look of the variable sized dots too.

Link to comment
Share on other sites

It does get me wondering how Paint.net itself handles the alpha channel when you copy and paste a selection ...

It uses an internal format (MaskedSurface), the remaining formats on the clipboard do not have transparency.

PdnSig.png

Plugin Pack | PSFilterPdn | Content Aware Fill | G'MICPaint Shop Pro Filetype | RAW Filetype | WebP Filetype

The small increase in performance you get coding in C++ over C# is hardly enough to offset the headache of coding in the C++ language. ~BoltBait

 

Link to comment
Share on other sites

There are DIB formats which allow transparency but they are not really supported by applications.

As I understood, Rick may add the PNG clipboard format in the future. Means good packing rate and support for transparency.

Regarding possible plugins. I did once a plugin which calculates and marks the balance point of a shape. I'm not sure if the method to do this kind of calculation is simular to Skeleton.

midoras signature.gif

Link to comment
Share on other sites

OK, I've implemented Stipple now (using fixed sized dots, to make boltbait happy!) ...

http://forums.getpai...n-21st-nov-2012

It doesn't use quite the same algorithm as in the document mentioned in this thread, though (Weighted Voronoi Stippling) -- instead, it uses something like the COFI (Circle of Influence) algorithm, starting with the darkest areas & excluding an increasingly large circle around it as it continues to the lighter pixels.

stipple.jpg

Edited by davidf
Link to comment
Share on other sites

If you can create a plug-in that can add text to an image something like this:

1stsun-Textifyit.png

That would be nice.

Online Mac app: http://textify.it/

********************************************

This was done with a Java applet downloaded from here: http://lapin-bleu.ne...textorizer-old/

Source code available.

letthesunshine-Textorizer.png

Please forgive if this isn't posted in the right place. :biggrin:

Edited by doughty

 



 

SloppySig.png

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...