Search the Community

Showing results for tags 'distort'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Information
    • Forum Rules
    • Paint.NET Search
    • Official Paint.NET website
    • Help Files (the official paint.net documentation)
  • Paint.NET
    • Paint.NET Discussion and Questions
    • The Pictorium
    • Tutorials - Publishing ONLY!
    • Competitions
    • Plugins - Publishing ONLY!
    • Troubleshooting & Bug Reports
  • Off-Topic
    • Grand Theory of Everything
  • Paint.NET Programming / Development
    • Plugin Developer's Central
    • Preview Center
    • Translation and Localization

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Website URL


AIM


MSN


ICQ


Yahoo


Jabber


Skype


Location


Interests

Found 10 results

  1. Distort This! Effects -> Distort-> Distort This! This is an update/fork of TR's Distort This! plugin with some additional features, optimizations, and a ton of bug fixes. Change Log v2.9 (July 3, 2018) Added: Support for the Dark Theme v2.8 (Aug 4, 2017) Improved: Rendering speed is now faster, and uses less memory New: Supersample antialiasing (thanks MJW) Fixed: Clicking the 'OK' button too early no longer breaks rendering Fixed: Nubs can no longer go out of the UI bounds and become inaccessible New: There is now a visual indicator to show area outside of the 'Working Area' New: When setting the 'Working Area', the cursor is changed to a cross-hair New: The nubs can now be reset without also resetting the 'Work Area' Improved: Cleaned up the UI Fixed: Many small and subtle bugs Download DistortThis.zip Source Code https://github.com/toehead2001/pdn-tr-distort-this
  2. Hello this is my first plug-in. This plug-in simply subtracts the red blue green by x+y or x-y or x*y depending on the option you select and then divides it by the amount you specified. It creates a strange tiled gradient. Colour Distort.zip
  3. Melting distortion What's this? This effect is was a bonus in the bottom list of my pack of plugins without its post till now. This effect is a long lasting idea since I've created the gravity (effect...), still popping from time to time till I find a new approach. This effect takes the top of the selection and distort it like a melting candle. Download it! Plugin Melting.dll Here is the DLL http://jcljay.free.fr/pdn/Melting.zip The MadJik's All plugins package is available! http://forums.getpaint.net/index.php?showtopic=7186 How to install Close Paint.net Classic version of Paint.net Unzip and (re)place the DLL in your Effect folder usually: C:/Program Files/Paint.NET/Effects Microsoft Store version of Paint.net Unzip and (re)place the DLL in your Effect folder usually: /My Documents/paint.net App Files/Effects/ You have to adapt for your language My Documents The User interface This plugin is added to the menu Effects, submenu Distort. Range In purcent of the height the length of the melting portion. % Sample length In purcent of the height the length of image used for the melting portion. Softness Lower value for extrem peaks higher values for smooth curves. Distortion / Number of phases Horizontal range/number of distortion/phases (phases are for the sinus curve method). Reseed Zero is for full random effect. 1 and more is the Start value of the random generator. It means you will always have the same result for the same value. Shadow -None -Black -White -White+Black -Black+White Add a vertical gradient at the limit of the range. Shadow length Set the length of the shadow. Both sides If checked apply a distortor below the range limit. Method -Sinus curve -Full random Select the calculation method of the distortion. The Examples: This texture used with Shape3D and some more work: VoilĂ ! Enjoy! Let me see what you could do with it!
  4. Droste This is a update of @PJayTycy's original Droste distortion plugin that was left abandoned in the plugin development section of the forum. See changelog below. Effects -> Distort -> Droste Before After Changelog v1.0 by toe_head2001 (Aug 31, 2015) New: Added a control to adjust the angle of the effect. Changed: Reorganized the code to a CodeLab-like structure/style Changed: Changed plugin icon and shorted title to 'Droste' New: Added metadata for the Plugin Browser pre-v1.0 by @PJayTycy (Dec 5, 2007 - Jan 26, 2008) See thread Download Droste.zip Place both Droste.dll and MathNet.Iridium.dll in the Effects folder. Source Code Source files and Git history
  5. This is a beta version of a perspective transformation plugin. Unfortunately, I can't seem to post images using my flickr account (I get the message, "You are not allowed to use that image extension on this community.") The plugin uses four double-vector controls to place the transformation control points. Due to CodeLab restrictions, the double vectors are all initially at the center of the window, and have to be moved to reasonable positions to produce a picture. It's not too hard to do, but it's very inelegant. Eventually, I'll convert it a Visual Studio project and fix that problem. There are also scale and offset controls to adjust the image size and position. If the scales and offsets are in their default positions, the image is perspectively mapped into the quadrilateral formed by the control points, surrounded by transparency. The image isn't clipped to the quadrilateral, it's just that there's nothing to display. If the scaling factor is greater than 1, the image will extend beyond the control-point quadrilateral. If the control points are moved to invalid positions, such as a non-convex quadrilateral, the entire image will be transparent. The effect is in the Effects>Distort menu. EDIT: New version uploaded 2/8/2015. There are three changes. First, I replaced the X and Y Scale controls with Scale and XY Proportion controls. Second, I added optional anti-aliasing using supersampling. Third, I used floats instead of doubles for almost all the calculations. The source code is also updated. One thing that might be noticed is that if the checkerboard or grid is displayed with the control points in the corners, so the image is undistorted, then the image will appear to be a bit darker when anti-aliasing is enabled. This is an (as far as I know) unavoidable consequence of using supersampling and bilinear interpolation. If you zoom in on the image, you'll see what amounts to a one-pixel blur, so the black-white edge is now dark gray where it was black, and light gray where it was white. If the image is moved or rescaled a bit, all the edges will be shades of gray, and the darkening effect will more or less disappear, as it will for other images that don't have a bunch of black-to-white transitions. So while I wouldn't call it a feature, it's not much of a bug, either. EDIT: Fixed spelling error in plugin name. A checkerboard pattern and a grid pattern to demonstrate anti-aliasing is here: The plugin is here (beta 1.1): PerspectiveTransformation1_1.zip (the old version) This is version Beta 1.2: PerspectiveTransformation1_2.zip (the current version) Here is the source code for the older version: EDIT: Beta version 1.2. Changes include: Control points start in the corners instead of the center of the screen. The corner points can be moved outside the window boundary (the current limit is -1.5 to 1.5). The corner controls, and the other double controls, are 3 decimal places instead of two, for more precise control. The XY Proportion control works differently, increasing one dimension while simultaneous decreasing the other. I thought it would be simpler to use if it only changed one dimension at a time, but found it to be difficult and confusing.. A Help menu is added. Some minor cosmetic changes, such as renaming the "Anti-Alias" control "Antialias." This is a VS project instead of CodeLab. I didn't include the source code, but if anyone wants it I'll post it. I will post the code when I release the non-beta version. I didn't remove either the CodeLab source or the old CodeLab DLL. There are a few enhancements I hope to add to the eventual non-beta plugin, but this version is, I think, a substantial improvement from the previous version. Please let me know what features you'd like to see (though you may not see them). Also, let me know if there are any spelling errors, grammar errors, or improvements I could make to the Help menu. I could gray-out the Antialias Quality when Antialiasing is disabled, but I thought it might be useful to be able to adjust it before enabling it. Opinions about this are welcome.
  6. Here is the plugin you've been waiting for!!! Just kidding. This is a plugin I developed for a specific purpose, that I decided to release in case anyone has a use for it. As the Help menu says: Offset Alternating Stripes offsets alternating stripes of pixels selected distances. Stripe Width is the width of the stripes in pixels. Odd Offset is the number of pixels to offset the first stripe and all other odd numbered stripes. Even Offset is the number of pixels to offset the second stripe and all other even numbered stripes. Stripe Phase moves the point at which the first stripe begins. Stripe Angle rotates the direction of the stripes. Edge Behavior specifies how to handle points that are shifted beyond the edge of the image. The options are None, Wrap, or Clamp. Quality specifies the amount of antialiasing to use. A value of one disables antialiasing. Higher values increase the number of samples per pixel. Generally, no antialiasing is needed when the Width and Offsets are integer values. Here is the user interface: Here is an example of the plugin applied to an image: Here is the CodeLab source: Hidden Content: // Name: Offset Alternating Stripes // Submenu: Distort // Author: MJW // Title: Offset Alternating Stripes // Version: 1.0.* // Desc: Offsets alternating stripes of a selected width by specified amounts // Keywords: offset alternating stripes // URL: // Help: #region UICode DoubleSliderControl Amount1 = 20; // [1,1000] Stripe Width DoubleSliderControl Amount2 = 0; // [-1000,1000] Odd Stripe Offset DoubleSliderControl Amount3 = 20; // [-1000,1000] Even Stripe Offset DoubleSliderControl Amount4 = 0.0; // [-0.5,0.5] Stripe Phase AngleControl Amount5 = 0; // [-180,180] Stripe Angle RadioButtonControl Amount6 = 0; // [1] Edge Behavior|None|Wrap|Clamp IntSliderControl Amount7 = 1; // [1,5] Quality #endregion Surface Src; int edgeBehavior; float Syx, Syy, Syw; float evenX, evenY, oddX, oddY; void Render(Surface dst, Surface src, Rectangle rect) { Src = src; bool antialias = (Amount7 != 1); if (antialias) SetupForSubpixels(Amount7, Amount7); edgeBehavior = Amount6; float width = (float)Amount1; double ang = (Math.PI / 180.0) * Amount5; float Mxx = (float)Math.Cos(ang); float Myx = (float)Math.Sin(ang); float Mxy = -Myx; float Myy = Mxx; // Set up the offset distances. I tend to think of the initial line is even, // but then I can't really call it the first line. oddX = Mxx * (float)Amount2; oddY = Mxy * (float)Amount2; evenX = Mxx * (float)Amount3; evenY = Mxy * (float)Amount3; // Calculate the values used to calculate the stripe number. Only the low bit of the // result matters. It's used to determine if it's and odd or even stripe. float widthRecip = 1.0f / width; Syx = widthRecip * Myx; Syy = widthRecip * Myy; // Calculate the offset. Include the phase. Add a large number to always make // the result positive. Use an odd number so the first line is odd. Add half the // width-scaling value for rounding. Syw = (float)Amount4 + 40001.0f + 0.5f * widthRecip; for (int y = rect.Top; y < rect.Bottom; y++) { if (IsCancelRequested) return; float fy = (float)y; for (int x = rect.Left; x < rect.Right; x++) { float fx = (float)x; if (!antialias) dst[x, y] = GetTransformedPixel(fx, fy); else dst[x, y] = GetTransformedPixelAA(fx, fy); } } } ColorBgra GetTransformedPixel(float fx, float fy) { // Get the rotated, scaled, and offset Y distance as an integer stripe number. int dy = (int)(Syx * fx + Syy * fy + Syw); if ((dy & 1) == 0) { fx -= evenX; fy -= evenY; } else { fx -= oddX; fy -= oddY; } if (edgeBehavior == 0) return Src.GetBilinearSample(fx, fy); else if (edgeBehavior == 1) return Src.GetBilinearSampleWrapped(fx, fy); else return Src.GetBilinearSampleClamped(fx, fy); } ColorBgra GetTransformedPixelAA(float fx, float fy) { int b = 0, g = 0, r = 0, a = 0; fy += ssYStart; float bx = fx + ssXStart; for (int iy = 0; iy < ssYSamples; iy++) { fx = bx; for (int ix = 0; ix < ssXSamples; ix++) { ColorBgra pixel = GetTransformedPixel(fx, fy); int alpha = pixel.A; if (alpha != 0) { b += alpha * pixel.B; g += alpha * pixel.G; r += alpha * pixel.R; a += alpha; } fx += ssXStep; } fy += ssYStep; } if (a == 0) { return ColorBgra.Transparent; } else { // Compute the (rounded) averages. int twiceA = a << 1; b = ((b << 1) + a) / twiceA; g = ((g << 1) + a) / twiceA; r = ((r << 1) + a) / twiceA; a = (twiceA + ssSamples) / ssTwiceSamples; return ColorBgra.FromBgra((byte)b, (byte)g, (byte)r, (byte)a); } } int ssXSamples, ssYSamples, ssSamples, ssTwiceSamples; float ssXStart, ssYStart, ssXStep, ssYStep; void SetupForSubpixels(int xSamples, int ySamples) { ssXSamples = xSamples; ssYSamples = ySamples; ssSamples = xSamples * ySamples; ssTwiceSamples = ssSamples << 1; ssXStep = 1.0f / (float)xSamples; ssYStep = 1.0f / (float)ySamples; ssXStart = -0.5f * (1.0f - ssXStep); ssYStart = -0.5f * (1.0f - ssYStep); } Here is the plugin: OffsetAlternatingStripes.zip Maximilian has a 3.5.11 build. EDIT: Fixed double-stripe-for-negative-angles bug, and a multi-thread bug caused be forgetting to delete a line of code.
  7. Screen Pixel This is an update to @Bleek II's ScreenPixel plugin. See changelog below. Effects -> Distort -> Screen Pixel Features Takes a image and breaks it into RGB components. Control the opacity of the RGB Automatically apply correct (3x) pixelation cell size. (e.g. if your RBG size is 2, a pixelation amount of 6 will be applied) Changelog v1.1 by toe_head2001 (Feb 24, 2015) New: added the ability to reduce the opacity from 255; defaults at 100. New: Pixelation is now built in, and can be toggled. Pixelation size automatically increases with RBG size. New: Metadata was added for the 'Plugin Browser' v1.0 by Bleek II (March 28, 2008) Initial release Download ScreenPixel.zip Source Code https://github.com/toehead2001/pdn-screen-pixel
  8. pyrochild

    Jitter

    Download from my plugin set Effects > Distort > Jitter You absolutely must be using the latest version of Paint.NET (3.10) to use this plugin. This plugin "Jitters" each row of pixels by a random amount. The angle, width of the rows, intensity of the effect, spacing between jittered rows, and edge-behavior are all adjustable. You can also toggle antialiasing. Something interesting you can do with this (very rough; I made it in 5 minutes based on a very old sig of mine): Download from my plugin set
  9. pyrochild

    Stitch

    Download from my plugin set Effects > Distort > Stitch Certain combinations of angles give a less-than-desirable effect, including having no effect at all. I'm aware of the issue, but currently have no plans to fix it. Just try switching the values of the 2 angle controls. Download from my plugin set
  10. Ego Eram Reputo

    Thermal Heat Map

    Thermal Heat Map What's this? This plugin creates a heat map from an input image. Like this: Where do I find it? After installation, this plugin resides in the Effects > Distort submenu. How does it work? The plugin uses the intensity of the source image to create the map. Bright or light regions of the source image are interpreted being more intense, and are rendered in hotter colors. Dim or dark regions are interpreted as less intense, and therefore rendered in cooler colors. Transparent or semi transparent areas of the source image are interpreted as being less intense than the same area if it were fully opaque. Thus the output map will be cooler for these areas. Users should note that I've given the rendering loop a little randomization. This will mean that rendering the effect twice over duplicate images will likely not produce exactly the same effect both times. I've done this to reduce artefacts generated by the circular gradient brush if it's implementation is too regimented. The idea (and much of the code) came from here: http://dylanvester.c...C-Sharp%29.aspx The UI explained: Heatpoint Radius: Determines the size of the area colored by a single 'heat point'. Smaller radii render faster and reveal more detail, but the resultant map is cooler. Larger radii show less detail and render slower (sometimes much slower), the resultant map will be warmer. Thermostat: Used to control the temperature of the output map. Lower values (slide the bar left) lower the output temperatures. Higher values (slide right) create warmer temperatures. Invert Intensity: Think of this as flipping the thermostat (left to right). Cooler areas will now be warmer, and vice versa. Enhance Colors: Not happy with the washed-out look? Check this checkbox to make the colors more vivid. Warm colors will become even warmer, and cool colors colder. How do I install it? 1. Click the link below to download the zip file. 2. Unzip the file and copy or move the *.dll into your Paint.NET/Effects/ folder. 3. Restart Paint.NET. ThermalHeatMapEffect.zip