Skip to content

Polar Remap

Node icon
Transform

Wrap a picture into rings, unwrap it back into a strip, or repeat it inside itself as a Droste zoom or spiral.

The Polar Remap node applied to a source image: original (left) and result (right).
Side-by-side comparison: the original image on the left and the same image after the Polar Remap node on the right.

Polar Remap rebuilds a picture around a center point. It has three modes:

  • Rectangular to Polar wraps the picture’s rows into rings around the center.
  • Polar to Rectangular unwraps those rings back into a strip. Each mode undoes the other.
  • Droste repeats the picture inside itself, forever, as a zoom or a spiral.
A sunset panorama of Venice turned into a little planet by Polar Remap's Little Planet preset: the canal and its buildings curled into a small round world with the sky wrapped round it

The Preset menu sets up a common look in one step, and one undo takes it back:

PresetWhat it sets up
Little PlanetRectangular to Polar with Flip Radius on, so a panorama’s ground (its bottom row) sits at the center and the sky wraps around it. Fit: Edges keeps the whole panorama inside the circle, and Clamp fills the corners with the top of the sky.
Rectangular to PolarThe plain wrap. A new node starts here.
Polar to RectangularThe plain unwrap.
Droste ZoomA straight tunnel of copies (Strands 0) at Levels 3.
Droste SpiralA spiral (Strands 1) at Levels 1, so the whole picture spirals and nothing of it stays in front.

A preset resets every row that shapes the result, Center, Interpolation, and Droste’s Scale included, so it gives the same result whatever the node was set to before. Only Show Grid, which never changes the output, is left alone. Change any row afterwards and the menu reads Custom.

On a new node the angle runs across the width of the strip. In a Polar to Rectangular result the top row is the ring closest to the center, the bottom row is the outer edge, and left to right sweeps once around the circle, clockwise from 12 o’clock. That starting point, where angle 0 meets angle 360, is the seam. The picture stays continuous across it in both modes and with any Interpolation.

  • Rotation turns the seam around the circle. In Rectangular to Polar it spins the wrapped result; in Polar to Rectangular it scrolls the strip sideways.
  • Direction flips which way the angle turns, clockwise or counterclockwise.
  • Angle Along normally stays at Width. Height transposes the strip so the angle runs down the rows; it exists mainly so older projects keep their look (see Existing projects).

Fit sets the circle’s starting size:

  • Corners (the default) reaches the farthest corner of the image. Polar to Rectangular samples the whole picture, but the rays aimed at the middle of each edge (12, 3, 6, and 9 o’clock on a centered circle) leave the picture before the outer ring, leaving gaps along the bottom of the strip. Rectangular to Polar fills the result out to its corners.
  • Edges is the largest circle that fits inside the image. Polar to Rectangular never leaves the picture but skips its corners; Rectangular to Polar keeps the strip inside that smaller circle and leaves the result’s corners to Edge Mode.

Radius scales the circle from the Fit size, as a percentage, and Center X and Center Y move it.

Edge Mode fills wherever the result has nothing to sample: the gaps a Corners unwrap leaves, the corners outside an Edges wrap, and anywhere Radius or Center carries the circle past the picture.

  • Clamp (the default) stretches the nearest edge pixel into the gap.
  • Wrap tiles in from the opposite edge.
  • Transparent leaves the gap see-through.

Radial Scale spaces the rings evenly (Linear) or gives the center more of the strip (Logarithmic), and Amount blends from the untouched picture at 0 to the full remap at 100.

Flip Radius runs the strip’s rows the other way. In Rectangular to Polar it puts the picture’s bottom row at the center and its top row on the outer ring, which turns a panorama into a little planet. In Polar to Rectangular it lays the outer ring on the top row, the matching inverse, so a wrap and an unwrap with the same setting undo each other.

In Droste mode the node places a smaller copy of the whole picture inside itself, a copy of the copy inside that, and so on forever. The picture always stays in front: outside the copy the input is unchanged, and the copy shows only where the picture is transparent. Think of a person holding an empty frame, with the whole scene repeating inside the frame’s opening.

  1. Start from a picture whose frame opening is transparent. Cut the middle out in a Layer or with a mask, so the opening has no alpha.
  2. Set Mode to Droste (or pick a Droste preset) and click Fit to Hole. It draws a box around every transparent pixel and sets Center and Scale so the copy covers that box, as small as it can while keeping the picture’s shape.
  3. Adjust from there: drag inside the copy’s rectangle in the Preview to move it, or drag a corner to resize it (see On-canvas controls).

If the box is a different shape from the picture, the copy overflows equally on both sides of the longer axis, and anything opaque there, such as the hand, stays in front of the copy (see Levels below). On a picture with no transparent pixels, the button says so and changes nothing.

The copies follow the edge of what the picture shows, not the edge of the canvas: along each direction out from Center, the repeating band ends at the outermost opaque pixel. An opaque photo is unaffected. A clock face, a planet, or a portrait cut out onto transparency repeats as its own shape, and the transparent area around it fills with ever larger copies. That makes the classic clock spiral:

  1. Cut the subject out onto transparency. A round one works best.
  2. Pick the Droste Spiral preset.
  3. Drag the center handle in the Preview onto the point inside the subject that the spiral should wind toward.
  4. Set Scale so the band between the copy and the outline holds the part you want to spiral, such as the ring of numerals.
  • Scale is the copy’s size as a percentage of the picture. Center X and Center Y set the point it shrinks toward, where every copy of a copy converges.
  • Strands twists the tunnel into a spiral: 0 is straight, and a positive or negative value is how many copies the picture steps through per turn, one way or the other. Angular Repeats copies the picture around the circle.
  • Levels is how many copies deep the picture stays in front of the copies behind it. A hand overlapping the opening stays in front of the first copy from Levels 2, the copy’s own hand stays in front of the next copy from Levels 3, and so on. At Levels 1 each copy is painted over everything it covers, which turns any picture, transparent or not, into a repeating tunnel.
  • Zoom dives into the copy by one step. 100 looks exactly like 0, so a batch of frames sweeping Zoom from 0 to 100 loops with no jump and plays as an infinite zoom on the playback bar.
  • Rotation and Direction turn and mirror a spiral or a set of Angular Repeats.

Fit, Radius, Angle Along, Flip Radius, Radial Scale, and Amount are hidden in Droste. A gap between the copy and a larger opening stays transparent, as it would in a real framed picture. Everything in the result comes from inside the picture, so Edge Mode only matters for the last half pixel along its border.

Searching for “Droste” in the Add Node menu or the Node Library finds Polar Remap.

The Preview with Polar Remap selected on Rectangular to Polar: a street photo wrapped into a circle, with the center handle, the fit ring at its radius and the arrow to the seam drawn over it

Selecting a Polar Remap node draws its controls over the picture in the Preview:

  • A center handle. It snaps to guides and other geometry, and Shift locks it to one axis.
  • A fit ring at the circle’s radius. Drag it to change Radius.
  • In Rectangular to Polar, an arrow from the center to the seam, where the picture’s left and right edges meet on the circle. Drag its tip around the center to set Rotation (0 points to 12 o’clock); hold Shift to snap it to steps of 15 degrees, and double-click the tip to reset it. See Canvas handles.
  • In Droste mode, the copy’s rectangle replaces the fit ring. Drag inside it to move the copy (changing Center), or drag a corner to resize it (changing Scale and Center together, with the opposite corner fixed). The copy always stays inside the picture.
  • A distortion grid showing which source pixels land where, useful for judging how much a Logarithmic Radial Scale or a Droste twist bends things. It is display-only; turn off Show Grid to hide it and keep just the handles.

Setting Manipulators to Never hides the grid and the handles without changing the node. While you drag a handle or scrub a slider, the Preview shows the warp live, and downstream nodes update once when you let go.

Wire in a texture set and every map, plus the set’s Opacity, is remapped together in the chosen mode, with the Normal’s directions re-aimed at each pixel to match (the exact center, which has no direction, passes through unchanged). Edge Mode moves every map and the Opacity identically: a set that ends in Clamp or Wrap stays fully opaque, and one that ends in Transparent has zero Opacity there instead of a border color leaking in.

Lanczos becomes Bilinear where the set carries a Normal or Height map, because Lanczos rings on direction and height fields. The Interpolation row shows Bilinear, with Lanczos grayed and the reason. Nothing is written into the node, so unwiring the set brings your Lanczos back.

Over a set, a drag warps only the map you are looking at (or every map with the All grid open), and the whole set is built on release.

A project saved before this layout shipped looks exactly as it did: its Angle Along reads Height, its Rotation 90, its Edge Mode Transparent (so the gaps past the circle stay see-through), and its Preset Custom. Nothing needs rewiring. Only a newly added node starts on the Width, seam-at-12-o’clock layout described above.

Pins

ImagePixels or Texture
InputRequired
ImagePixels or Texture
Output

Preset

PresetChoice
Default: Rectangular to Polar Range: Custom / Little Planet / Rectangular to Polar / Polar to Rectangular / Droste Zoom / Droste Spiral

Starting points for common looks. A preset resets every other row, so it always gives the same result; editing a row switches to Custom

Polar Remap

ModeChoice
Default: Rectangular to Polar Range: Polar to Rectangular / Rectangular to Polar / Droste
  • Polar to Rectangular: unwraps the circle around the center into a strip.
  • Rectangular to Polar: wraps the picture into a circle, rows into rings.
  • Droste: repeats the picture inside itself, forever, as a zoom or a spiral. A subject on transparency repeats by its own outline.
Center X (%)Number
Default: 50.00 Range: 0.00–100.00

Horizontal center of the polar transformation

Center Y (%)Number
Default: 50.00 Range: 0.00–100.00

Vertical center of the polar transformation

FitChoice
Default: Corners Range: Corners / Edges
Mode ≠ Droste
  • Corners: the circle reaches the farthest corner, so nothing is lost.
  • Edges: the largest circle inside the image, so no corner is sampled.
Radius (%)Number
Default: 100.0 Range: 10.0–400.0
Mode ≠ Droste

Size of the circle as a percentage of the Fit radius

Rotation (deg)Number
Default: 0.0 Range: -180.0–180.0

Turns the seam, which sits at 12 o'clock at 0. In Polar to Rectangular it scrolls the strip sideways

DirectionChoice
Default: Clockwise Range: Clockwise / Counterclockwise

Which way the angle turns around the center

Angle AlongChoice
Default: Width Range: Width / Height
Mode ≠ Droste
  • Width: the angle runs across the strip, the center on its top row.
  • Height: the angle runs down the strip, the center on its left column.
Flip RadiusToggle
Default: false
Mode ≠ Droste

Puts the picture's bottom row at the center instead of its top row, so a panorama wraps into a little planet. Unwrapping with it on is the matching inverse

Radial ScaleChoice
Default: Linear Range: Linear / Logarithmic
Mode ≠ Droste
  • Linear: even spacing from the center out.
  • Logarithmic: gives the center more of the strip, so rings spread out toward the rim.
Amount (%)Number
Default: 100.0 Range: 0.0–100.0
Mode ≠ Droste

Blends from the untouched picture at 0 to the full remap at 100

Droste

Scale (%)Number
Default: 40.0 Range: 5.0–95.0
Mode = Droste

Size of the copy as a percentage of the picture. The copy shrinks toward the center, which should sit inside the subject

StrandsInteger
Default: 0 Range: -6–6
Mode = Droste

How many copies the picture steps through per turn around the center. 0 is a straight tunnel; a negative value spirals the other way

Angular RepeatsInteger
Default: 1 Range: 1–8
Mode = Droste

Copies of the picture around the circle

Zoom (%)Number
Default: 0.0 Range: 0.0–100.0
Mode = Droste

Dives into the copy by one step. 100 looks exactly like 0, so a batch ramp from 0 to 100 loops without a jump

LevelsInteger
Default: 3 Range: 1–8
Mode = Droste

How many copies deep the picture's opaque parts stay in front of the copies behind them. 1 paints each copy over everything it covers

Filter

InterpolationChoice
Default: Bilinear

A texture set with a Normal or Height map uses Bilinear

  • NearestNo interpolation, so hard pixel edges are preserved. Best for pixel art.
  • BilinearSmooth blending between pixels, with good general-purpose quality.
  • LanczosHighest quality with sharp detail preservation, best for final output.
Edge ModeChoice
Default: Clamp Range: Clamp / Wrap / Transparent

What is sampled past the outer ring or the image edge.

  • Clamp: repeat edge pixels.
  • Wrap: tile from the opposite edge.
  • Transparent: fill with transparent black.

Display

Show GridToggle
Default: true

Overlay a distortion grid in the preview showing how the remap bends the image.

Display only. It never affects the output.

  • Unwrap a radial design with Polar to Rectangular to edit it as a flat strip, then wrap it back with Rectangular to Polar and the same settings.
  • Apply Rectangular to Polar to a horizontal stripe pattern to create concentric rings; vertical stripes become radial spokes.
  • Combine with Pattern or Noise for kaleidoscope-like effects, and raise Angular Repeats in Droste for a rotationally symmetric repeat.