POV-Ray简单上手教程——坐标系统

这篇教程介绍了POV-Ray中的坐标变换,包括translate(平移)、scale(缩放)、rotate(旋转)和matrix(矩阵变换)。详细解释了每个变换的用法和注意事项,如变换顺序对结果的影响,以及如何使用变换标识符来组织复杂的场景变换。同时提到了纹理和物体变换的相互关系。
摘要由CSDN通过智能技术生成

物体、灯光和摄像机的位子都是使用的典型的3D坐标系统。之前,我们讲解过POV-Ray的坐标系统。这里我们在回顾一下,X轴的正方向指向右边,Y轴正方向指向上,Z轴指向屏幕里。
坐标系统的位置经常用三个元素来表示(x,y,z),这是很容易理解的。
向量也不总是来表示指示方向的。他们也涉及一些对物体移动、旋转和大小控制的操作。
大小,位置,方向和变形的坐标操作,与一个叫做transformations的标识符有关。接下里我们就阐述一下transformations和他们的使用。

变化

支持变形的关键字有rotate,scale,translate。他们用来变形,处理大小或者移动物体和纹理。一个转化矩阵可以用来完成更复杂的变化操作。一组变形操作可以融合在一起,存储到一个transformation标识符里。transformations的语法如下所示

TRANSFORMATION:
    rotate <Rotate_Amt> | scale <Scale_Amt> | 
    translate <Translate_Amt> | transform TRANSFORM_IDENTIFIER | 
    transform { TRANSFORMATION_BLOCK...} |
    matrix <Val00, Val01, Val02,
        Val10, Val11, Val12,
        Val20, Val21, Val22,
        Val30, Val31, Val32>
TRANSFORMATION_BLOCK:
    TRANSFORM_IDENTIFIER | TRANSFORMATION | inverse
TRANSFORM_DECLARATION:
    #declare IDENTIFIER = transform { TRANSFORMATION_BLOCK...} |
    #local IDENTIFIER = transform { TRANSFORMATION_BLOCK...}

translate

translate关键经常后面跟着一个向量,这个向量用来确定相对于目前位置,要移动的变化量。

 sphere { <10, 10, 10>, 1
  pigment { Green }
  translate <-5, 2, 1>
 }

上面的代码将会把球体,从<10,10,10>移动到<5,12,11>,而不是<-5,2,1>。另外translate后面的如果有的元素为0,那么就是没有变化。

Scale

你可以通过使用scale标识符来改变物体或者贴图模式的大小。同样的,关键字后面也是一个向量。
scale可以用来拉伸或者压扁元素。大于1拉伸,小于1压扁。
多个scale可以用使用。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值