Hey paint.net people.
I'm interested in writing some image distorting plugins for personal use. I'm a capable programmer, I have already written the effect that I want using CodeLab. The problem is that I don't want an effect -- my distortions require image resizing and some pretty serious remapping of the source data. For instance, if I had a 10x10 source image, the pixel at 8,8 could well end up at 2,90 in a resulting image that is 100x100.
So, one thing I need to be able to do is resize. I've written this logic in a couple languages now, but I have had some problems with memory. I'm not worried about speed, if it takes a week for this to run, I am okay with that. But I'm running this on images that are...well, my source image right now is a 500mb image, and the result is likely to be a couple gigs. So I either need Surface/Rectangle/image access code that deals with memory for me, or I need to work in some kind of tiled system... I was about to start trying to do this in GIMP when someone said Paint.NET is completely awesome, and it does seem so, so I've looked around the forums and tutorials, but everything seems to talk about effects, which are limited to a certain size/area/etc, so I figured I'd post:
1. Does Paint.NET support resizing effect-like-things via a customizable plugin system? If so, can you point me toward info on it?
2. Does Paint.NET provide an API for tiling, or very well managed (with respect to memory) image access classes such that I could load a couple gigs of imagery and not have it crash? Again, if so, can you either let me know how it does it, or point me toward info on it?
I'm sorry if I missed posts about these things, I am often surprised at how bad I am at searching for things.
Thanks in advance,
-xelepart