two-dimensional geometric transformations

36
Two-Dimensional Geometric Transformations Chapter 5

Upload: sylvie

Post on 11-Jan-2016

100 views

Category:

Documents


1 download

DESCRIPTION

Two-Dimensional Geometric Transformations. Chapter 5. Two-Dimensional Geometric Transformations. Basic Transformations Translation Rotation Scaling Composite Transformations Other transformations Reflection Shear. Translation. Translation transformation - PowerPoint PPT Presentation

TRANSCRIPT

Two-Dimensional Geometric Transformations

Chapter 5

Two-Dimensional Geometric Transformations

bull Basic Transformations bull Translation

bull Rotation

bull Scaling

bull Composite Transformations

bull Other transformations bull Reflection

bull Shear

Translation

bull Translation transformation

bull Translation vector or shift vector T = (tx ty)

bull Rigid-body transformationbull Moves objects without deformation

xtxx ytyy

x

y

p

Prsquo

T

x

y

T

Rotation

Rotation transformation

x

y

P(xy)

Prsquo (xrsquoyrsquo)

r

xrsquo=rcos(+)= rcoscos-rsin sin

yrsquo=rsin(+)= rcossin+rsin cos

x=rcos y=rsin

xrsquo=x cos-ysin

yrsquo=xsin+ycos

Prsquo= R P

cossin

sincosR

Rotation

Pivot point

x

y

P(xy)

Prsquo (xrsquoyrsquo)

r

(xryr)

xrsquo=xr+(x- xr)cos-(y- yr)sin

yrsquo=yr+(x- xr)sin+(y- yr)cos

Scaling

Scaling transformation

Scaling factors sx and sy Uniform scaling

xsxx

ysyy

y

x

s

s

y

x

y

x

0

0

PSP

x

y

x

y2xs1ys

Scaling

Fixed point

xff sxxxx )(

yff syyyy )(

)1(xfx sxsxx

)1(yfy sysyy

Matrix Representations and Homogeneous Coordinates

bull Homogeneous Coordinates

bull Matrix representations bull Translation

)()( hyxyx hh h

xx h

h

yy h

1100

10

01

1

y

x

t

t

y

x

y

x

Matrix Representations

Matrix representations Scaling

Rotation

1100

00

00

1

y

x

s

s

y

x

y

x

1100

0cossin

0sincos

1

y

x

y

x

Composite Transformations

Translations

100

10

01

100

10

01

100

10

01

21

21

1

1

2

2

yy

xx

y

x

y

x

tt

tt

t

t

t

t

)()( 1122 PttTttTP yxyx

PttTttT yxyx )()( 1122

)()()( 21211122 yyxxyxyx ttttTttTttT

Composite Transformations

Scaling

100

00

00

100

00

00

100

00

00

21

21

1

1

2

2

yy

xx

y

x

y

x

ss

ss

s

s

s

s

)()()( 21211122 yyxxyxyx ssssSssSssS

Composite Transformations

Rotations)()( 12

PRRP PRR )()( 12

)()()( 2112 RRR

100

0)cos()sin(

0)sin()cos(

100

0cossin

0sincos

100

0cossin

0sincos

2121

2121

11

11

22

22

General Pivot-Point Rotation

bull Rotations about any selected pivot point (xryr)

bull Translate-rotate-translate

General Pivot-Point Rotation

100

10

01

100

0cossin

0sincos

100

10

01

r

r

r

r

y

x

y

x

100

sin)cos1(cossin

sin)cos1(sincos

rr

rr

xy

yx

)()()()( rrrrrr yxRyxTRyxT

General Fixed-Point Scaling

Scaling with respect to a selected fixed position (xfyf)

General Fixed-Point Scaling

Translate-scale-translate

100

10

01

100

00

00

100

10

01

r

r

y

x

r

r

y

x

s

s

y

x

100

)1(0

)1(0

yfy

xfx

sys

sxs

)()()()( rrffffyxff yxyxSyxTssSyxT

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Two-Dimensional Geometric Transformations

bull Basic Transformations bull Translation

bull Rotation

bull Scaling

bull Composite Transformations

bull Other transformations bull Reflection

bull Shear

Translation

bull Translation transformation

bull Translation vector or shift vector T = (tx ty)

bull Rigid-body transformationbull Moves objects without deformation

xtxx ytyy

x

y

p

Prsquo

T

x

y

T

Rotation

Rotation transformation

x

y

P(xy)

Prsquo (xrsquoyrsquo)

r

xrsquo=rcos(+)= rcoscos-rsin sin

yrsquo=rsin(+)= rcossin+rsin cos

x=rcos y=rsin

xrsquo=x cos-ysin

yrsquo=xsin+ycos

Prsquo= R P

cossin

sincosR

Rotation

Pivot point

x

y

P(xy)

Prsquo (xrsquoyrsquo)

r

(xryr)

xrsquo=xr+(x- xr)cos-(y- yr)sin

yrsquo=yr+(x- xr)sin+(y- yr)cos

Scaling

Scaling transformation

Scaling factors sx and sy Uniform scaling

xsxx

ysyy

y

x

s

s

y

x

y

x

0

0

PSP

x

y

x

y2xs1ys

Scaling

Fixed point

xff sxxxx )(

yff syyyy )(

)1(xfx sxsxx

)1(yfy sysyy

Matrix Representations and Homogeneous Coordinates

bull Homogeneous Coordinates

bull Matrix representations bull Translation

)()( hyxyx hh h

xx h

h

yy h

1100

10

01

1

y

x

t

t

y

x

y

x

Matrix Representations

Matrix representations Scaling

Rotation

1100

00

00

1

y

x

s

s

y

x

y

x

1100

0cossin

0sincos

1

y

x

y

x

Composite Transformations

Translations

100

10

01

100

10

01

100

10

01

21

21

1

1

2

2

yy

xx

y

x

y

x

tt

tt

t

t

t

t

)()( 1122 PttTttTP yxyx

PttTttT yxyx )()( 1122

)()()( 21211122 yyxxyxyx ttttTttTttT

Composite Transformations

Scaling

100

00

00

100

00

00

100

00

00

21

21

1

1

2

2

yy

xx

y

x

y

x

ss

ss

s

s

s

s

)()()( 21211122 yyxxyxyx ssssSssSssS

Composite Transformations

Rotations)()( 12

PRRP PRR )()( 12

)()()( 2112 RRR

100

0)cos()sin(

0)sin()cos(

100

0cossin

0sincos

100

0cossin

0sincos

2121

2121

11

11

22

22

General Pivot-Point Rotation

bull Rotations about any selected pivot point (xryr)

bull Translate-rotate-translate

General Pivot-Point Rotation

100

10

01

100

0cossin

0sincos

100

10

01

r

r

r

r

y

x

y

x

100

sin)cos1(cossin

sin)cos1(sincos

rr

rr

xy

yx

)()()()( rrrrrr yxRyxTRyxT

General Fixed-Point Scaling

Scaling with respect to a selected fixed position (xfyf)

General Fixed-Point Scaling

Translate-scale-translate

100

10

01

100

00

00

100

10

01

r

r

y

x

r

r

y

x

s

s

y

x

100

)1(0

)1(0

yfy

xfx

sys

sxs

)()()()( rrffffyxff yxyxSyxTssSyxT

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Translation

bull Translation transformation

bull Translation vector or shift vector T = (tx ty)

bull Rigid-body transformationbull Moves objects without deformation

xtxx ytyy

x

y

p

Prsquo

T

x

y

T

Rotation

Rotation transformation

x

y

P(xy)

Prsquo (xrsquoyrsquo)

r

xrsquo=rcos(+)= rcoscos-rsin sin

yrsquo=rsin(+)= rcossin+rsin cos

x=rcos y=rsin

xrsquo=x cos-ysin

yrsquo=xsin+ycos

Prsquo= R P

cossin

sincosR

Rotation

Pivot point

x

y

P(xy)

Prsquo (xrsquoyrsquo)

r

(xryr)

xrsquo=xr+(x- xr)cos-(y- yr)sin

yrsquo=yr+(x- xr)sin+(y- yr)cos

Scaling

Scaling transformation

Scaling factors sx and sy Uniform scaling

xsxx

ysyy

y

x

s

s

y

x

y

x

0

0

PSP

x

y

x

y2xs1ys

Scaling

Fixed point

xff sxxxx )(

yff syyyy )(

)1(xfx sxsxx

)1(yfy sysyy

Matrix Representations and Homogeneous Coordinates

bull Homogeneous Coordinates

bull Matrix representations bull Translation

)()( hyxyx hh h

xx h

h

yy h

1100

10

01

1

y

x

t

t

y

x

y

x

Matrix Representations

Matrix representations Scaling

Rotation

1100

00

00

1

y

x

s

s

y

x

y

x

1100

0cossin

0sincos

1

y

x

y

x

Composite Transformations

Translations

100

10

01

100

10

01

100

10

01

21

21

1

1

2

2

yy

xx

y

x

y

x

tt

tt

t

t

t

t

)()( 1122 PttTttTP yxyx

PttTttT yxyx )()( 1122

)()()( 21211122 yyxxyxyx ttttTttTttT

Composite Transformations

Scaling

100

00

00

100

00

00

100

00

00

21

21

1

1

2

2

yy

xx

y

x

y

x

ss

ss

s

s

s

s

)()()( 21211122 yyxxyxyx ssssSssSssS

Composite Transformations

Rotations)()( 12

PRRP PRR )()( 12

)()()( 2112 RRR

100

0)cos()sin(

0)sin()cos(

100

0cossin

0sincos

100

0cossin

0sincos

2121

2121

11

11

22

22

General Pivot-Point Rotation

bull Rotations about any selected pivot point (xryr)

bull Translate-rotate-translate

General Pivot-Point Rotation

100

10

01

100

0cossin

0sincos

100

10

01

r

r

r

r

y

x

y

x

100

sin)cos1(cossin

sin)cos1(sincos

rr

rr

xy

yx

)()()()( rrrrrr yxRyxTRyxT

General Fixed-Point Scaling

Scaling with respect to a selected fixed position (xfyf)

General Fixed-Point Scaling

Translate-scale-translate

100

10

01

100

00

00

100

10

01

r

r

y

x

r

r

y

x

s

s

y

x

100

)1(0

)1(0

yfy

xfx

sys

sxs

)()()()( rrffffyxff yxyxSyxTssSyxT

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Rotation

Rotation transformation

x

y

P(xy)

Prsquo (xrsquoyrsquo)

r

xrsquo=rcos(+)= rcoscos-rsin sin

yrsquo=rsin(+)= rcossin+rsin cos

x=rcos y=rsin

xrsquo=x cos-ysin

yrsquo=xsin+ycos

Prsquo= R P

cossin

sincosR

Rotation

Pivot point

x

y

P(xy)

Prsquo (xrsquoyrsquo)

r

(xryr)

xrsquo=xr+(x- xr)cos-(y- yr)sin

yrsquo=yr+(x- xr)sin+(y- yr)cos

Scaling

Scaling transformation

Scaling factors sx and sy Uniform scaling

xsxx

ysyy

y

x

s

s

y

x

y

x

0

0

PSP

x

y

x

y2xs1ys

Scaling

Fixed point

xff sxxxx )(

yff syyyy )(

)1(xfx sxsxx

)1(yfy sysyy

Matrix Representations and Homogeneous Coordinates

bull Homogeneous Coordinates

bull Matrix representations bull Translation

)()( hyxyx hh h

xx h

h

yy h

1100

10

01

1

y

x

t

t

y

x

y

x

Matrix Representations

Matrix representations Scaling

Rotation

1100

00

00

1

y

x

s

s

y

x

y

x

1100

0cossin

0sincos

1

y

x

y

x

Composite Transformations

Translations

100

10

01

100

10

01

100

10

01

21

21

1

1

2

2

yy

xx

y

x

y

x

tt

tt

t

t

t

t

)()( 1122 PttTttTP yxyx

PttTttT yxyx )()( 1122

)()()( 21211122 yyxxyxyx ttttTttTttT

Composite Transformations

Scaling

100

00

00

100

00

00

100

00

00

21

21

1

1

2

2

yy

xx

y

x

y

x

ss

ss

s

s

s

s

)()()( 21211122 yyxxyxyx ssssSssSssS

Composite Transformations

Rotations)()( 12

PRRP PRR )()( 12

)()()( 2112 RRR

100

0)cos()sin(

0)sin()cos(

100

0cossin

0sincos

100

0cossin

0sincos

2121

2121

11

11

22

22

General Pivot-Point Rotation

bull Rotations about any selected pivot point (xryr)

bull Translate-rotate-translate

General Pivot-Point Rotation

100

10

01

100

0cossin

0sincos

100

10

01

r

r

r

r

y

x

y

x

100

sin)cos1(cossin

sin)cos1(sincos

rr

rr

xy

yx

)()()()( rrrrrr yxRyxTRyxT

General Fixed-Point Scaling

Scaling with respect to a selected fixed position (xfyf)

General Fixed-Point Scaling

Translate-scale-translate

100

10

01

100

00

00

100

10

01

r

r

y

x

r

r

y

x

s

s

y

x

100

)1(0

)1(0

yfy

xfx

sys

sxs

)()()()( rrffffyxff yxyxSyxTssSyxT

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Rotation

Pivot point

x

y

P(xy)

Prsquo (xrsquoyrsquo)

r

(xryr)

xrsquo=xr+(x- xr)cos-(y- yr)sin

yrsquo=yr+(x- xr)sin+(y- yr)cos

Scaling

Scaling transformation

Scaling factors sx and sy Uniform scaling

xsxx

ysyy

y

x

s

s

y

x

y

x

0

0

PSP

x

y

x

y2xs1ys

Scaling

Fixed point

xff sxxxx )(

yff syyyy )(

)1(xfx sxsxx

)1(yfy sysyy

Matrix Representations and Homogeneous Coordinates

bull Homogeneous Coordinates

bull Matrix representations bull Translation

)()( hyxyx hh h

xx h

h

yy h

1100

10

01

1

y

x

t

t

y

x

y

x

Matrix Representations

Matrix representations Scaling

Rotation

1100

00

00

1

y

x

s

s

y

x

y

x

1100

0cossin

0sincos

1

y

x

y

x

Composite Transformations

Translations

100

10

01

100

10

01

100

10

01

21

21

1

1

2

2

yy

xx

y

x

y

x

tt

tt

t

t

t

t

)()( 1122 PttTttTP yxyx

PttTttT yxyx )()( 1122

)()()( 21211122 yyxxyxyx ttttTttTttT

Composite Transformations

Scaling

100

00

00

100

00

00

100

00

00

21

21

1

1

2

2

yy

xx

y

x

y

x

ss

ss

s

s

s

s

)()()( 21211122 yyxxyxyx ssssSssSssS

Composite Transformations

Rotations)()( 12

PRRP PRR )()( 12

)()()( 2112 RRR

100

0)cos()sin(

0)sin()cos(

100

0cossin

0sincos

100

0cossin

0sincos

2121

2121

11

11

22

22

General Pivot-Point Rotation

bull Rotations about any selected pivot point (xryr)

bull Translate-rotate-translate

General Pivot-Point Rotation

100

10

01

100

0cossin

0sincos

100

10

01

r

r

r

r

y

x

y

x

100

sin)cos1(cossin

sin)cos1(sincos

rr

rr

xy

yx

)()()()( rrrrrr yxRyxTRyxT

General Fixed-Point Scaling

Scaling with respect to a selected fixed position (xfyf)

General Fixed-Point Scaling

Translate-scale-translate

100

10

01

100

00

00

100

10

01

r

r

y

x

r

r

y

x

s

s

y

x

100

)1(0

)1(0

yfy

xfx

sys

sxs

)()()()( rrffffyxff yxyxSyxTssSyxT

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Scaling

Scaling transformation

Scaling factors sx and sy Uniform scaling

xsxx

ysyy

y

x

s

s

y

x

y

x

0

0

PSP

x

y

x

y2xs1ys

Scaling

Fixed point

xff sxxxx )(

yff syyyy )(

)1(xfx sxsxx

)1(yfy sysyy

Matrix Representations and Homogeneous Coordinates

bull Homogeneous Coordinates

bull Matrix representations bull Translation

)()( hyxyx hh h

xx h

h

yy h

1100

10

01

1

y

x

t

t

y

x

y

x

Matrix Representations

Matrix representations Scaling

Rotation

1100

00

00

1

y

x

s

s

y

x

y

x

1100

0cossin

0sincos

1

y

x

y

x

Composite Transformations

Translations

100

10

01

100

10

01

100

10

01

21

21

1

1

2

2

yy

xx

y

x

y

x

tt

tt

t

t

t

t

)()( 1122 PttTttTP yxyx

PttTttT yxyx )()( 1122

)()()( 21211122 yyxxyxyx ttttTttTttT

Composite Transformations

Scaling

100

00

00

100

00

00

100

00

00

21

21

1

1

2

2

yy

xx

y

x

y

x

ss

ss

s

s

s

s

)()()( 21211122 yyxxyxyx ssssSssSssS

Composite Transformations

Rotations)()( 12

PRRP PRR )()( 12

)()()( 2112 RRR

100

0)cos()sin(

0)sin()cos(

100

0cossin

0sincos

100

0cossin

0sincos

2121

2121

11

11

22

22

General Pivot-Point Rotation

bull Rotations about any selected pivot point (xryr)

bull Translate-rotate-translate

General Pivot-Point Rotation

100

10

01

100

0cossin

0sincos

100

10

01

r

r

r

r

y

x

y

x

100

sin)cos1(cossin

sin)cos1(sincos

rr

rr

xy

yx

)()()()( rrrrrr yxRyxTRyxT

General Fixed-Point Scaling

Scaling with respect to a selected fixed position (xfyf)

General Fixed-Point Scaling

Translate-scale-translate

100

10

01

100

00

00

100

10

01

r

r

y

x

r

r

y

x

s

s

y

x

100

)1(0

)1(0

yfy

xfx

sys

sxs

)()()()( rrffffyxff yxyxSyxTssSyxT

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Scaling

Fixed point

xff sxxxx )(

yff syyyy )(

)1(xfx sxsxx

)1(yfy sysyy

Matrix Representations and Homogeneous Coordinates

bull Homogeneous Coordinates

bull Matrix representations bull Translation

)()( hyxyx hh h

xx h

h

yy h

1100

10

01

1

y

x

t

t

y

x

y

x

Matrix Representations

Matrix representations Scaling

Rotation

1100

00

00

1

y

x

s

s

y

x

y

x

1100

0cossin

0sincos

1

y

x

y

x

Composite Transformations

Translations

100

10

01

100

10

01

100

10

01

21

21

1

1

2

2

yy

xx

y

x

y

x

tt

tt

t

t

t

t

)()( 1122 PttTttTP yxyx

PttTttT yxyx )()( 1122

)()()( 21211122 yyxxyxyx ttttTttTttT

Composite Transformations

Scaling

100

00

00

100

00

00

100

00

00

21

21

1

1

2

2

yy

xx

y

x

y

x

ss

ss

s

s

s

s

)()()( 21211122 yyxxyxyx ssssSssSssS

Composite Transformations

Rotations)()( 12

PRRP PRR )()( 12

)()()( 2112 RRR

100

0)cos()sin(

0)sin()cos(

100

0cossin

0sincos

100

0cossin

0sincos

2121

2121

11

11

22

22

General Pivot-Point Rotation

bull Rotations about any selected pivot point (xryr)

bull Translate-rotate-translate

General Pivot-Point Rotation

100

10

01

100

0cossin

0sincos

100

10

01

r

r

r

r

y

x

y

x

100

sin)cos1(cossin

sin)cos1(sincos

rr

rr

xy

yx

)()()()( rrrrrr yxRyxTRyxT

General Fixed-Point Scaling

Scaling with respect to a selected fixed position (xfyf)

General Fixed-Point Scaling

Translate-scale-translate

100

10

01

100

00

00

100

10

01

r

r

y

x

r

r

y

x

s

s

y

x

100

)1(0

)1(0

yfy

xfx

sys

sxs

)()()()( rrffffyxff yxyxSyxTssSyxT

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Matrix Representations and Homogeneous Coordinates

bull Homogeneous Coordinates

bull Matrix representations bull Translation

)()( hyxyx hh h

xx h

h

yy h

1100

10

01

1

y

x

t

t

y

x

y

x

Matrix Representations

Matrix representations Scaling

Rotation

1100

00

00

1

y

x

s

s

y

x

y

x

1100

0cossin

0sincos

1

y

x

y

x

Composite Transformations

Translations

100

10

01

100

10

01

100

10

01

21

21

1

1

2

2

yy

xx

y

x

y

x

tt

tt

t

t

t

t

)()( 1122 PttTttTP yxyx

PttTttT yxyx )()( 1122

)()()( 21211122 yyxxyxyx ttttTttTttT

Composite Transformations

Scaling

100

00

00

100

00

00

100

00

00

21

21

1

1

2

2

yy

xx

y

x

y

x

ss

ss

s

s

s

s

)()()( 21211122 yyxxyxyx ssssSssSssS

Composite Transformations

Rotations)()( 12

PRRP PRR )()( 12

)()()( 2112 RRR

100

0)cos()sin(

0)sin()cos(

100

0cossin

0sincos

100

0cossin

0sincos

2121

2121

11

11

22

22

General Pivot-Point Rotation

bull Rotations about any selected pivot point (xryr)

bull Translate-rotate-translate

General Pivot-Point Rotation

100

10

01

100

0cossin

0sincos

100

10

01

r

r

r

r

y

x

y

x

100

sin)cos1(cossin

sin)cos1(sincos

rr

rr

xy

yx

)()()()( rrrrrr yxRyxTRyxT

General Fixed-Point Scaling

Scaling with respect to a selected fixed position (xfyf)

General Fixed-Point Scaling

Translate-scale-translate

100

10

01

100

00

00

100

10

01

r

r

y

x

r

r

y

x

s

s

y

x

100

)1(0

)1(0

yfy

xfx

sys

sxs

)()()()( rrffffyxff yxyxSyxTssSyxT

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Matrix Representations

Matrix representations Scaling

Rotation

1100

00

00

1

y

x

s

s

y

x

y

x

1100

0cossin

0sincos

1

y

x

y

x

Composite Transformations

Translations

100

10

01

100

10

01

100

10

01

21

21

1

1

2

2

yy

xx

y

x

y

x

tt

tt

t

t

t

t

)()( 1122 PttTttTP yxyx

PttTttT yxyx )()( 1122

)()()( 21211122 yyxxyxyx ttttTttTttT

Composite Transformations

Scaling

100

00

00

100

00

00

100

00

00

21

21

1

1

2

2

yy

xx

y

x

y

x

ss

ss

s

s

s

s

)()()( 21211122 yyxxyxyx ssssSssSssS

Composite Transformations

Rotations)()( 12

PRRP PRR )()( 12

)()()( 2112 RRR

100

0)cos()sin(

0)sin()cos(

100

0cossin

0sincos

100

0cossin

0sincos

2121

2121

11

11

22

22

General Pivot-Point Rotation

bull Rotations about any selected pivot point (xryr)

bull Translate-rotate-translate

General Pivot-Point Rotation

100

10

01

100

0cossin

0sincos

100

10

01

r

r

r

r

y

x

y

x

100

sin)cos1(cossin

sin)cos1(sincos

rr

rr

xy

yx

)()()()( rrrrrr yxRyxTRyxT

General Fixed-Point Scaling

Scaling with respect to a selected fixed position (xfyf)

General Fixed-Point Scaling

Translate-scale-translate

100

10

01

100

00

00

100

10

01

r

r

y

x

r

r

y

x

s

s

y

x

100

)1(0

)1(0

yfy

xfx

sys

sxs

)()()()( rrffffyxff yxyxSyxTssSyxT

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Composite Transformations

Translations

100

10

01

100

10

01

100

10

01

21

21

1

1

2

2

yy

xx

y

x

y

x

tt

tt

t

t

t

t

)()( 1122 PttTttTP yxyx

PttTttT yxyx )()( 1122

)()()( 21211122 yyxxyxyx ttttTttTttT

Composite Transformations

Scaling

100

00

00

100

00

00

100

00

00

21

21

1

1

2

2

yy

xx

y

x

y

x

ss

ss

s

s

s

s

)()()( 21211122 yyxxyxyx ssssSssSssS

Composite Transformations

Rotations)()( 12

PRRP PRR )()( 12

)()()( 2112 RRR

100

0)cos()sin(

0)sin()cos(

100

0cossin

0sincos

100

0cossin

0sincos

2121

2121

11

11

22

22

General Pivot-Point Rotation

bull Rotations about any selected pivot point (xryr)

bull Translate-rotate-translate

General Pivot-Point Rotation

100

10

01

100

0cossin

0sincos

100

10

01

r

r

r

r

y

x

y

x

100

sin)cos1(cossin

sin)cos1(sincos

rr

rr

xy

yx

)()()()( rrrrrr yxRyxTRyxT

General Fixed-Point Scaling

Scaling with respect to a selected fixed position (xfyf)

General Fixed-Point Scaling

Translate-scale-translate

100

10

01

100

00

00

100

10

01

r

r

y

x

r

r

y

x

s

s

y

x

100

)1(0

)1(0

yfy

xfx

sys

sxs

)()()()( rrffffyxff yxyxSyxTssSyxT

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Composite Transformations

Scaling

100

00

00

100

00

00

100

00

00

21

21

1

1

2

2

yy

xx

y

x

y

x

ss

ss

s

s

s

s

)()()( 21211122 yyxxyxyx ssssSssSssS

Composite Transformations

Rotations)()( 12

PRRP PRR )()( 12

)()()( 2112 RRR

100

0)cos()sin(

0)sin()cos(

100

0cossin

0sincos

100

0cossin

0sincos

2121

2121

11

11

22

22

General Pivot-Point Rotation

bull Rotations about any selected pivot point (xryr)

bull Translate-rotate-translate

General Pivot-Point Rotation

100

10

01

100

0cossin

0sincos

100

10

01

r

r

r

r

y

x

y

x

100

sin)cos1(cossin

sin)cos1(sincos

rr

rr

xy

yx

)()()()( rrrrrr yxRyxTRyxT

General Fixed-Point Scaling

Scaling with respect to a selected fixed position (xfyf)

General Fixed-Point Scaling

Translate-scale-translate

100

10

01

100

00

00

100

10

01

r

r

y

x

r

r

y

x

s

s

y

x

100

)1(0

)1(0

yfy

xfx

sys

sxs

)()()()( rrffffyxff yxyxSyxTssSyxT

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Composite Transformations

Rotations)()( 12

PRRP PRR )()( 12

)()()( 2112 RRR

100

0)cos()sin(

0)sin()cos(

100

0cossin

0sincos

100

0cossin

0sincos

2121

2121

11

11

22

22

General Pivot-Point Rotation

bull Rotations about any selected pivot point (xryr)

bull Translate-rotate-translate

General Pivot-Point Rotation

100

10

01

100

0cossin

0sincos

100

10

01

r

r

r

r

y

x

y

x

100

sin)cos1(cossin

sin)cos1(sincos

rr

rr

xy

yx

)()()()( rrrrrr yxRyxTRyxT

General Fixed-Point Scaling

Scaling with respect to a selected fixed position (xfyf)

General Fixed-Point Scaling

Translate-scale-translate

100

10

01

100

00

00

100

10

01

r

r

y

x

r

r

y

x

s

s

y

x

100

)1(0

)1(0

yfy

xfx

sys

sxs

)()()()( rrffffyxff yxyxSyxTssSyxT

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

General Pivot-Point Rotation

bull Rotations about any selected pivot point (xryr)

bull Translate-rotate-translate

General Pivot-Point Rotation

100

10

01

100

0cossin

0sincos

100

10

01

r

r

r

r

y

x

y

x

100

sin)cos1(cossin

sin)cos1(sincos

rr

rr

xy

yx

)()()()( rrrrrr yxRyxTRyxT

General Fixed-Point Scaling

Scaling with respect to a selected fixed position (xfyf)

General Fixed-Point Scaling

Translate-scale-translate

100

10

01

100

00

00

100

10

01

r

r

y

x

r

r

y

x

s

s

y

x

100

)1(0

)1(0

yfy

xfx

sys

sxs

)()()()( rrffffyxff yxyxSyxTssSyxT

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

General Pivot-Point Rotation

100

10

01

100

0cossin

0sincos

100

10

01

r

r

r

r

y

x

y

x

100

sin)cos1(cossin

sin)cos1(sincos

rr

rr

xy

yx

)()()()( rrrrrr yxRyxTRyxT

General Fixed-Point Scaling

Scaling with respect to a selected fixed position (xfyf)

General Fixed-Point Scaling

Translate-scale-translate

100

10

01

100

00

00

100

10

01

r

r

y

x

r

r

y

x

s

s

y

x

100

)1(0

)1(0

yfy

xfx

sys

sxs

)()()()( rrffffyxff yxyxSyxTssSyxT

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

General Fixed-Point Scaling

Scaling with respect to a selected fixed position (xfyf)

General Fixed-Point Scaling

Translate-scale-translate

100

10

01

100

00

00

100

10

01

r

r

y

x

r

r

y

x

s

s

y

x

100

)1(0

)1(0

yfy

xfx

sys

sxs

)()()()( rrffffyxff yxyxSyxTssSyxT

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

General Fixed-Point Scaling

Translate-scale-translate

100

10

01

100

00

00

100

10

01

r

r

y

x

r

r

y

x

s

s

y

x

100

)1(0

)1(0

yfy

xfx

sys

sxs

)()()()( rrffffyxff yxyxSyxTssSyxT

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

General Scaling Directions

Scaling factors sx and sy scale objects along the x and y directions

We scale an object in other directions with scaling factors s1 and s2

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

General Scaling Directions

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Concatenation Properties

Matrix multiplication is associative

AmiddotB middotC = (AmiddotB )middotC = Amiddot(B middotC) Transformation products may not be commutative

Be careful about the order in which the composite matrix is evaluated

Except for some special cases Two successive rotations Two successive translations Two successive scalings rotation and uniform scaling

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Concatenation Properties

Reversing the order A sequence of transformations is performed may affect

the transformed position of an object

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

General Composite Transformations and Computer Efficiency

A general two-dimensional transformation

Rotation-scaling terms rsij

Translational terms trsx and trsy

Minimum number of computations Four multiplications Four additions

11001

y

x

trsrsrs

trsrsrs

y

x

yyyyx

xxyxx

xxyxx trsrsyrsxx

yyyyx trsrsyrsxy

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Rigid-Body Transformation

Rigid-body transformation matrix

The upper-left 2-by-2 submatrix is an orthogonal matrix Two vectors (rxx rxy) and (ryx ryy) form an orthogonal set of unit v

ectors

100yyyyx

xxyxx

trrr

trrrMultiplicative rotation terms rij

Translational terms trx and try

12222 yyyxxyxx rrrr

0 yyxyyxxx rrrr

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Rigid-Body Transformation

The orthogonal property of rotation matrices We know the final orientation of an object

Construct the desired transformation by assigning the elements of ursquo to the first row of the rotation matrix and the elements of vrsquo to the second row

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Computational Efficiency

Use approximations and iterative calculations to reduce computations Approximate the trigonometric functions based on the fir

st few terms of their power-series expansions For small enough angles (lt 100) cos is approximately 1

sin is approximately Accumulated error control

Estimate the error in xrsquo and yrsquo at each step Reset object positions when the error accumulation becomes too

great

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Reflection

A transformation produces a mirror image of an object Axis of reflection

A line in the xy plane A line perpendicular to the xy plane The mirror image is obtained by rotating the object 1800 about t

he reflection axis

Rotation path Axis in xy plane in a plane perpendicular to the xy plane Axis perpendicular to xy plane in the xy plane

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Reflection

Reflection about the x axis

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Reflection

Reflection about the y axis

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Reflection

Reflection relative to the coordinate origin

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Reflection

Reflection of an object relative to an axis perpendicular to the xy plane through Prfl

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Reflection

Reflection about the line y = x

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Shear

The x-direction shear relative to x axis

100

010

01 xsh yshxx x

yy

If shx = 2

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Shear

The x-direction shear relative to y = yref

100

010

1 refxx yshsh )(refx yyshxx

yy

If shx = frac12 yref = -1

1 12 32

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Shear

The y-direction shear relative to x = xref

100

1

001

refyy xshshxx

yxxshy refy )(

If shy = frac12 xref = -1

1

12

32

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Transformations between Coordinate Systems

x

yyrsquo

xrsquo

x0

y0θ

x

y

yrsquoxrsquo

θ

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Transformations between Coordinate Systems

100

10

01

)( 0

0

00 y

x

yxT

100

0cossin

0sincos

)(

R

)()( 00 yxTRM yxxy

Method 1

Method 2

)( yx vvV

Vv

)()( yxxy uuvvu

100

0

0

yx

yx

vv

uu

R

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths

Affine Transformations

A coordinate transformation of the form

xrsquo=axxx+axyy+bx yrsquo=ayxx+ayyy+by

xrsquo and yrsquo is a linear function of the original coordinates x and y

aij and bk are constants determined by the transformation type

Translation rotation scaling reflection and shear are two-dimensional affine transformations

An affine transformation involving only rotation translation and reflection preserves angles and lengths