rickc@agora.UUCP (Rick Coates) (04/14/88)
I have received several responses to my original posting, and while
I do appreciate the comments, it has become clear that my first posting
was not specific enough.
My question did not deal with mapping a rectangle into a quadrilateral,
but mapping a rectangle into an arbitrary shape. I was not planning
to do this to bitmaps, but to world space floating point coordinates.
(Not asking for the transformation of anything more complex than
points.)
Example:
/--------------\
/ \
a-----------b a ............ b
| | | . . \
|...........| ----> |. /---------\ ...\
| | | / \ |
c-----------d c--/ \---d
(please forgive the graphics - the dots are an example 'line' that is deformed)
This is more difficult to do than the quadrilateral case. I have heard
that Pixar does something like this, but have not seen it.
Any help out there?
Many thanks for those who have responded to my first posting, and
thanks in advance for others.
Rick Coates
tektronix!sequent!islabs!ateq!rick
OR
tektronix!reed!percival!agora!rickcelf@dgp.toronto.edu (Eugene Fiume) (05/03/88)
As I mentioned in a previous comp.graphics submission that may not have gotten beyond our local net, we developed an approach based on conformal mapping which will allow you to go from an arbitrary simple polygon to another. Mapping from a rectangle to a simple polygon is obviously a subcase. It is also possible to map a simple polygon bijectively to a circle or to a half-plane. A description of the approach can be found in: E. Fiume, A. Fournier, and V. Canale, ``Conformal texture mapping'', Proceedings of Eurographics '87, Elsevier Science Publishers (North Holland), Amsterdam (1987), pp53-64. Our work is partially based on some software written by Lloyd Trefethen that's available from netlib. His software is useful if you just want to map points in one polygon to another conformally. The hard part, graphically speaking, is doing filtering, assuming you are interested in doing something like mapping a texture onto a polygon. -- Eugene Fiume Dynamic Graphics Project University of Toronto elf@dgp.utoronto (BITNET); elf@dgp.toronto.edu (CSNET/UUCP)