Graphics Programs Reference
In-Depth Information
such that all its sides seem to have the same length. This type of axonometric projection
is called
isometric
.
Matrix
T
of Equation (2.2) can be used to calculate the special rotations that
produce a dimetric projection. Consider the product of a unit vector in the
x
direction
and
T
:
⎛
⎞
cos
φ
sin
φ
sin
θ
0
⎝
⎠
=(cos
φ,
sin
φ
sin
θ,
0)
.
(1
,
0
,
0)
0
cos
θ
0
(2.3)
sin
φ
−
cos
φ
sin
θ
0
This product shows that any vector in the
x
direction shrinks, after being rotated by
matrix
T
,byafactor
s
x
given by Equation (2.4). The same equation also produces the
shrink factors
s
y
and
s
z
of any vector in the
y
and
z
directions.
s
x
=
cos
2
φ
+sin
2
φ
sin
2
θ,
s
z
=
sin
2
φ
+cos
2
φ
sin
2
θ.
s
y
=
√
cos
2
θ,
(2.4)
If we want a dimetric projection where equal-size segments in the
x
and
y
directions
will have equal sizes after the projection, we set
s
x
=
s
y
or, equivalently,
cos
2
φ
+sin
2
φ
sin
2
θ
=cos
2
θ,
which produces the relation
sin
2
θ
1
−
sin
2
θ
.
sin
2
φ
=
(2.5)
Equation (2.5) together with the expression for
s
z
yields
s
z
=sin
2
φ
+cos
2
φ
sin
2
θ
=sin
2
φ
+(1
sin
2
φ
)sin
2
θ
−
=sin
2
φ
(1
−
sin
2
θ
)+sin
2
θ
sin
2
θ
sin
2
θ
)+sin
2
θ,
=
sin
2
θ
(1
−
1
−
or 2 sin
4
θ
(2 +
s
z
)sin
2
θ
+
s
z
= 0, a quadratic equation in sin
2
θ
whose solutions are
sin
2
θ
=
s
z
/
2andsin
2
θ
= 1. The second solution cannot be used in Equation (2.5) and
has to be discarded. The first solution produces
−
φ
=sin
−
1
.
θ
=sin
−
1
s
z
√
2
s
z
2
±
and
±
(2.6)
−
s
z
1
,
1], the arg
u
ment of sin
−
1
must
Since the sine function has values
in
the range [
−
be in this range. T
he expr
ession
s
z
/
√
2isinthisrangewhen
−
√
2
+
√
2, and
≤
s
z
≤
the expression
s
z
/
2
+1. Since
s
z
is a shrinking
factor, it is nonnegative, which implies that it must be in the interval [0
,
1]. Also, since
Equation (2.6) contains a
−
s
z
is in this range when
−
1
≤
s
z
≤
±
,anyvalueof
s
z
produces four solutions.
Search WWH ::
Custom Search