I am trying to map the image "Angels and Devils" by M.C. Escher onto a cigar-like shape. The code I have now is
With[
{
img = Import[
"https://upload.wikimedia.org/wikipedia/en/b/bf/Escher_circlelimit_iv-with_overlay.png"
]
}
,
RevolutionPlot3D[
{Sqrt[1 + t^2/10 - 1/t^2], t}
, {t, 0.957122, 7.5}
, Mesh -> None
, Axes -> False
, PlotStyle -> Texture[img]
, TextureCoordinateFunction -> ({#1, #2} &)
]
]
Where circle-limit-iv.jpg is the image file.
The problem is that this image has some white space around the circle, since the image is actually a rectangle.
I would like to have it so that the edge of the circle is mapped to the edge of the surface. Is there any way to do this?