Texture transformation
It is easy to create a 3D model of a room from it's floor-plan by creating simple white walls. To make the model more realistic the textures of the walls are taken from the panoramic image. Unfortunately, the wall textures in the panoramic image are trapezoidal, a projective transformation is applied get a rectangular texture.
This does not work for walls that are represented by a wide angle. Such long walls are broken into several trapezoids by the user, each trapezoid is treated like a short wall.