Chemistry Reference and  Research
           
 
Periodic Table
- standard table
- large table
 
Chemical Elements
- by name
- by symbol
- by atomic number
 
Chemical Properties
 
Chemical Reactions
 
Organic Chemistry
 
Branches of Chemistry
Analytical chemistry
Biochemistry
Computational Chemistry
Electrochemistry
Environmental chemistry
Geochemistry
Inorganic chemistry
Materials science
Medicinal chemistry
Nuclear chemistry
Organic chemistry
Pharmacology
Physical chemistry
Polymer chemistry
Supramolecular Chemistry
Thermochemistry

Scaling (geometry)

In Euclidean geometry, scaling is an affine, linear transformation that can enlarge or diminish an object by certain factors. See also homothety.

A scaling can be represented by a scaling matrix. To scale an object by a vector v = (vx, vy, vz), each point p = (px, py, pz) would need to be multiplied with this scaling matrix:

S_v = 
 \begin{bmatrix}
 v_x & 0 & 0  \\
 0 & v_y & 0  \\
 0 & 0 & v_z  \\
 \end{bmatrix}

As shown below, the multiplication will give the expected result:

S_vp =
 \begin{bmatrix}
 v_x & 0 & 0  \\
 0 & v_y & 0  \\
 0 & 0 & v_z  \\
 \end{bmatrix}
 \begin{bmatrix}
 p_x \\ p_y \\ p_z 
 \end{bmatrix}
 =
 \begin{bmatrix}
 v_xp_x \\ v_yp_y \\ v_zp_z
 \end{bmatrix}

Often, it is more useful to use homogeneous coordinates, since translation cannot be accomplished with a 3-by-3 matrix. To scale an object by a vector v = (vx, vy, vz), each homogeneous vector p = (px, py, pz, 1) would need to be multiplied with this scaling matrix:

S_v = 
 \begin{bmatrix}
 v_x & 0 & 0 & 0 \\
 0 & v_y & 0 & 0 \\
 0 & 0 & v_z & 0 \\
 0 & 0 & 0 & 1 
 \end{bmatrix}

As shown below, the multiplication will give the expected result:

S_vp =
 \begin{bmatrix}
 v_x & 0 & 0 & 0 \\
 0 & v_y & 0 & 0 \\
 0 & 0 & v_z & 0 \\
 0 & 0 & 0 & 1 
 \end{bmatrix}
 \begin{bmatrix}
 p_x \\ p_y \\ p_z \\ 1 
 \end{bmatrix}
 =
 \begin{bmatrix}
 v_xp_x \\ v_yp_y \\ v_zp_z \\ 1 
 \end{bmatrix}

Since the last component of a homogeneous coordinate can be viewed as the denominator of the other three components, a scaling by a common factor s can be accomplished by using this scaling matrix:

S_v = 
 \begin{bmatrix}
 1 & 0 & 0 & 0 \\
 0 & 1 & 0 & 0 \\
 0 & 0 & 1 & 0 \\
 0 & 0 & 0 & \frac{1}{s} 
 \end{bmatrix}

For each homogeneous vector p = (px, py, pz, 1) we would have

S_vp =
 \begin{bmatrix}
 1 & 0 & 0 & 0 \\
 0 & 1 & 0 & 0 \\
 0 & 0 & 1 & 0 \\
 0 & 0 & 0 & \frac{1}{s}  
 \end{bmatrix}
 \begin{bmatrix}
 p_x \\ p_y \\ p_z \\ 1 
 \end{bmatrix}
 =
 \begin{bmatrix}
 p_x \\ p_y \\ p_z \\ \frac{1}{s} 
 \end{bmatrix}

which would be homogenized to

\begin{bmatrix}
 sp_x \\ sp_y \\ sp_z \\ 1 
 \end{bmatrix}
01-04-2007 01:16:19
The contents of this article are licensed from Wikipedia.org under the GNU Free Documentation License. How to see transparent copy