Wrapping (graphics)

del.icio.us del.icio.us
Digg Digg
Furl Furl
Reddit Reddit
Rojo Rojo
Add to OnlyWire

In computer graphics, wrapping is the process of limiting a position to an area. A good example of wrapping is wallpaper, a single pattern repeated indefinitely over a wall. Wrapping is used in 3D computer graphics to repeat a texture over a polygon, eliminating the need for large textures or multiple polygons.

To wrap a position x to an area of width w, calculate the value x' \equiv x \pmod{w}.

Implementation

For computational purposes the wrapped value x' of x can be expressed as

x' = x - \lfloor (x - x_{min}) / (x_{max} - x_{min}) \rfloor * (x_{max} - x_{min})

where xmax is the highest value in the range, and xmin is the lowest value in the range.

Pseudocode for wrapping of a value to a range other than 0-1 is

 function wrap(X, Min, Max: Real): Real;
   X := X - Int((X - Min) / (Max - Min)) * (Max - Min);
   if X < 0 then //This corrects the problem caused by using Int instead of Floor
     X := X + Max - Min;
   return X;

Pseudocode for wrapping of a value to a range of 0-1 is

 function wrap(X: Real): Real;
   X := X - Int(X);
   if X < 0 then
     X := X + 1;
   return X;

See also

This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.


Giant Panda

Mercedes Car
James Bond Guide
This site monitored by SitePinger.net