createdepth.htm

来自「电脑图学(Computer Graphics)是资料结构、演算法与数学的应用」· HTM 代码 · 共 114 行

HTM
114
字号
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>






  
  
  
  
  
  
  <link rel="stylesheet" href="css/stdlayout.css" type="text/css">






  
  
  
  
  
  
  <link rel="stylesheet" href="css/print.css" type="text/css">






  
  
  
  
  
  
  <meta content="text/html; charset=gb2312" http-equiv="content-type">






  
  
  
  
  
  
  <title>创造物体的远近感(透视)</title>
</head>


<body>






<h3><a href="http://caterpillar.onlyfun.net/GossipCN/index.html">From
Gossip@caterpillar</a></h3>






<h1><a href="ComputerGraphics.htm">Computer Graphics:&nbsp;创造物体的远近感(透视)</a></h1>






想像将一个物体以平行光线照射,此时投影在XY平面上的座标点是没有远近感的,简单的说,就是将座标的Z分量省略,如下图所示:<br>
<img style="width: 314px; height: 204px;" alt="" src="images/createDepth-1.jpg"><br>
<br>
<br>
如果想要创造物体的远近感,必须使用非平行光来照射物体,此时投射在XY平面的点会因比例的关系,而使得每一个点在XY平面上投影时彼此靠近,因而造成具有远近的感觉:<br>
<img style="width: 382px; height: 176px;" alt="" src="images/createDepth-2.jpg"><br>
<br>
<br>
<br>
这种方法称之为透视法,您的投影点设的越远,远近感就越显著,而您观察物体的位置(相当于此例中的光源位置,或反过来说是投影点的位置)也会影响透视的结果,为了导证公式方便,将投影点设定在Z轴上,若空间中有一点(x,y,z),则先看看XZ平面上的座标变化:<br>
<img style="width: 396px; height: 186px;" alt="" src="images/createDepth-3.jpg"><br>
<br>
<br>
公式的导证只使用简单的相似三角形关系就可以得到,同样的,可以看看YZ平面上的座标变化:<br>
<img style="width: 392px; height: 158px;" alt="" src="images/createDepth-4.jpg"><br>
<br>
使用以上的公式,再配合座标旋转公式,您就可以对立体物件的顶点作各种转换的动作,当然物件的顶点就决定了3D图的基本,这意味了您可以藉此创造一些简单的3D图形。<br>






<br>
<br>






</body>
</html>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?