Warp
back to Index page
Introduction
Warp tools can be used for the following tasks:
- To warp a vector drawing to a georeferenced map
- To georeference a vector drawing with unusual Coordinate reference system
- To move and geo-orient a group of objects on a map.
OpenJUMP provides different tools for warping. All these tools are available on Tools>Warp menu.
- Warping (toolbox): see VIVID SOLUTIONs Jump Workbench User's Guide, page 41 to 43.
- Affine Transformation (from parameters): see for details the Tools page
The following tutorial is adapted from: “JUMP the Unified Mapping Project Workbench User’s Guide” Vivid Solution 2003
Warping
A warp is an algorithm for modifying all of the features in a layer, usually according to some parameters that are easy to specify, such as vectors. This section describes how to warp a layer using various techniques.
- applying an affine transform
- applying a projective transform
- applying a bilinear interpolated transform (rubber-sheet warp)
Applying an affine transform
An affine transform is a linear transformation that is defined by the initial and final positions of three points. Depending to the number of points, the affine transform will translate, rotate, scale, flip, and shear the dataset so that the initial three locations are mapped to the final three locations. The following picture shows how to applyan affine transform, specifying: (A) one point, (B) two points, (C) three points
Applying a projective transform
A projective transformation is defined by the initial and final positions of three points. It can be represented as transformation of an arbitrary quadrangle (i.e. system of four points) into another one.
The projective transformation does not preserve parallelism, length, and angle. But it still preserves collinearity and incidence. The original layer is not modified and a new layer is created. The following picture shows how to apply a projective transform, specifying four points
Applying a bilinear interpolated transform (rubber-sheet warp)
A rubber-sheet warp (or more precisely a bilinear interpolated triangulation warp) is a simple technique for deforming a dataset using a set of control point pairs7. Two triangulations are created: one using the source control points and one using the destination control points. Each source-triangle-destination-triangle pair implicitly defines a linear transform that carries each point on the source triangle to the corresponding point on the destination triangle. The dataset is transformed pointwise using the transform
associated with the source triangle in which each data point falls. Rubber-sheet warp in the following picture: (A) original dataset, (B) warping vectors, (C) warped dataset