Overview
Introduction
This tool applies a Mobius transformation, a classic conformal map from complex analysis, to a PNG's inscribed circle, entirely in your browser.
It's a mathematically rich way to produce swirling, lens-like distortions that stay perfectly contained within a circular region.
What Is PNG Mobius Transform Applier?
A client-side effect that treats the image's inscribed circle as the complex unit disk and warps it using a disk-automorphism Mobius transformation, controlled by a single complex parameter a = ax + ay*i.
Because this family of Mobius maps sends the unit disk to itself, the warp never spills outside the circle, and its inverse has the same closed-form shape (with a negated), which is what makes efficient inverse-sampling possible.
How PNG Mobius Transform Applier Works
For every output pixel inside the inscribed circle, the tool normalizes its position to disk coordinates w, applies the inverse map z = (w + a) / (1 + conj(a) * w) using complex-number arithmetic, and converts the resulting z back to pixel coordinates to sample the source image.
Pixels whose normalized position falls outside the unit disk are copied through unchanged, since the transform is only defined within it.
When To Use PNG Mobius Transform Applier
Use it to create abstract, swirl-like distortions of a photo or texture for artistic or generative-art purposes.
It's also a fun way to explore how conformal maps from complex analysis visually transform an image.
Often used alongside PNG Spherical Effect Adder, PNG Kaleidoscope Effect Adder and PNG Rotator.
Features
Advantages
- Runs entirely client-side; the uploaded image never leaves your device.
- The transform is angle-preserving (conformal), so small shapes retain their local form even as they're globally warped.
- The disk-automorphism property guarantees the distortion never spills outside the inscribed circle.
Limitations
- Only works within the image's inscribed circle; content outside it is unaffected.
- Nearest-neighbor sampling means strong control-point values near the 0.98 magnitude limit can show pixelation or stretching artifacts near the disk's edge.
Examples
Best Practices & Notes
Best Practices
- Keep ax and ay well under the 0.9 range for smooth, predictable results before pushing toward the mathematical limit.
- Experiment with the sign of ax and ay together, since they jointly determine the direction the warp is centered toward.
Developer Notes
The lib function operates on a plain Uint8ClampedArray PixelBuffer with no DOM dependency: it validates ax^2 + ay^2 < 0.98, then for each pixel inside the inscribed unit disk computes the inverse Mobius map z = (w + a) / (1 + conj(a) * w) via explicit complex-number arithmetic (numerator/denominator real and imaginary parts) before inverse-sampling the source image at z.
PNG Mobius Transform Applier Use Cases
- Creating swirling, conformal-map art from a photo
- Exploring complex-analysis transformations visually
- Producing an abstract, lens-warped variant of a logo or texture
Common Mistakes
- Setting ax and ay both close to their limits, which can trigger the 'must be less than ~0.99' validation error since it's their combined magnitude that matters, not each value individually.
- Expecting the warp to affect the whole rectangular image — it's confined to the inscribed circle.
Tips
- Try ax = ay = 0 first to confirm the identity case (no visible change), then increase one axis at a time to see its individual effect.
- Combine with the spherical effect tool for a two-stage distortion pipeline.