Our Blog: ENLIGHTEN3D.com

Feeling Warp
There is no translation available, please select a different language.

Feeling Warp

 

Table of Contents 

1. Overview
2. Features
3. Screenshots
4. Licensing

 

Overview

 The Warp Technology is a valuable addition to any CAD-oriented software solution. It has two main applications that will be covered in the next section. 

thumb_thumbsup02

Figure 1. A warped image. Click on the thumbnail for a larger view.

 

Features

 The Warp Technology provides two core features for CAD tools: image deformation and reverse image mapping.

 Image deformation consist of transforming an image according to a control grid. Typical examples include an "inflated" image, the "arc" effect, or the "flag" effect.

 Reverse image mapping can be used to isolate any particular region of an image and store it in a square texture for easier manipulation. The modified texture can then be re-mapped to the original image.

 These two core features are based on our implementation of the following elements:

  • Bi-cubic Bézier interpolation. The control grid is maintained as a bi-dimensional array of bi-cubic Bézier patches. The patch evaluation is made using fast Bézier evaluators, optimized for real-time 2D manipulation.

  • Dynamic control grid. The user can obtain any level of control over the target image by specifying the number of patches in both dimensions.

  • Four (4) interpolation modes available. Listed in increasing control level:
  1. Linear Grid. Control the image by moving the grid's four corners. Uses grid-level bi-linear interpolation.
  2. Linear Patch Array. Control the image by moving the corners of each patch. Uses patch-level bi-linear interpolation.
  3. Bézier Patch Outline. An intuitive way of modifying bi-cubic Bézier patches by moving the control points making the patch outline. The inner control points of the outline determine the patch "tangents".
  4. Full Bézier Patch. Give the user full control over the bi-cubic Bézier patches.
  • Smooth warp. A first order continuity constraint can be maintained between two adjacent control points, providing easier manipulation.

Screenshots 

 To illustrate the features mentionned above, here are some screenshots of a Feeling Software application using the Warp Technology. This application uses the Warp module and hardware display acceleration for better performance.

thumb_brick01

Figure 2. Original image before warping. 

 

thumb_brick02

Figure 3. Warped image. By dragging out the inner control point of a single bi-cubic patch, you get an "inflated" look.

 

thumb_rm01

Figure 4. To perform reverse image mapping, the first step is to load a background image. 

 

thumb_rm02

Figure 5. Then, position your control grid over the region you want to map. 

 

thumb_rm03

Figure 6. You can refine the grid by changing the interpolation mode. Notice the smoothed corners used for the pillow corners (they appear in pink, click the image for a larger view). 

 

thumb_rm04

Figure 7. By performing forward image mapping, you generate a square texture with power of 2 dimensions. You can then modify this image using filters. 

 

thumb_rm05

Figure 8. We apply a checkerboard pattern on the texture. 

 

thumb_rm06

Figure 9. By performing inverse image mapping, you get a pillow with a checkerboard pattern on it. You can see how the control grid affected the end result.

 Licensing

For pricing information, contact us directly at info@feelingsoftware.com.