POV-Ray笔记_基础知识_实例详细注释

6 篇文章 0 订阅
订阅专栏
2 篇文章 0 订阅
订阅专栏

一. 基础知识链接

官方文档http://www.povray.org/documentation/3.7.0/t2_0.html

POV-Ray简单上手教程——坐标系统: https://blog.csdn.net/zhr_hadoop/article/details/51819337

X轴的正方向指向右边,Y轴正方向指向上,Z轴指向屏幕里

变形的关键字:

rotate:变形物体和纹理

scale:处理大小物体和纹理

translate:移动物体和纹理,相对于目前位置,要移动的变化量。

transformation标识符:一组变形操作可以融合在一起,存储到一个transformation标识符里,

matrix :一个转化矩阵可以用来完成更复杂的变化操作。

POV-Ray简单上手教程(学习笔记):  https://blog.csdn.net/zhr_hadoop/article/details/51289804

POV-Ray简单上手教程——摄像机的使用:  https://blog.csdn.net/zhr_hadoop/article/details/51763300

相机光圈的作用和应用: https://baijiahao.baidu.com/s?id=1606019929191876904&wfr=spider&for=pc

[CG编程] 基本光照模型: http://www.cnblogs.com/QG-whz/p/5189831.html?utm_source=tuicool&utm_medium=referral

图形学理论 光照模型: http://www.cnblogs.com/mengdd/archive/2013/08/05/3238123.html

POV-Ray简单上手教程-简单贴图/纹理设置: https://blog.csdn.net/zhr_hadoop/article/details/51706558

二. 一个例子及注释

1. 代码

#include "colors.inc"       //..\Documents\POV-Ray\v3.7\include
#include "shapes.inc"
#include "textures.inc"
#include "stones.inc" 
   
camera
{
   location <0,1.0,-10.0>   //决定相机位置:物体始终在屏幕中心,相机对着物体,沿着xyz方向平移
   look_at < 0.0,0,0.0>     //决定相机朝向:相机位置不动,屏幕中心移动
                            //(有相机绕一个支点,沿着xyz轴方向转动的感觉)
   //angle 90               //距离物体的远近(放大缩小的感觉,范围0-180)
   focal_point <-7,0,13>    //焦点所落在的位置
   aperture   0.01          //小光圈大光图,即获得不同的聚焦效果;
                            //值越小,关注的区域就越大(各个远近层次的物体都很清楚),反之,则小.
   blur_samples 20          //采样设置,值越大,采样点数越多,质量/分辨率越高的图像,
                            //但相应的渲染时间就会长.
}
light_source { <5, 30, -30>  color White }    定义两个光源;关于x轴对称
light_source { <-5, 30, -30> color White }
  
plane {                     定义一个平面
    y, -1.5                 //平面方程:y=-1.5
    pigment {               //着色;使用棋盘格
        checker color Gray65 color Gray30
    }
} 
  
sphere {
    <0,-0.3,-6>, 0.5        定义一个球体: 圆心+半径
    translate <0,0.5,-1>    //移动:相对于目前位置,要移动的变化量
    finish {
    ambient 0.1             //环境光
    diffuse 0.7             //物体漫反射光
    }
    pigment { LimeGreen }
    //texture { PinkAlabaster }
    finish  { phong 0.3}    //添加Phong光照模型,来产生高亮效果
}

#declare my_box_transform = //自定义一个变换集合
    transform {
        rotate <40, 20, 20> //旋转: 绕xyz轴分别旋转40/20/30度
        translate <0.2,-2,0>
        scale 1.5           //缩放: 大小*1.1倍; 相当于向量<1.1, 1.1, 1.1>
    }  
 
box {
    <2,1,-1>, <3,2,0>       定义一个立方体: 两个对角顶点
    //texture {				    //Method 1.棋盘格纹理模型
    // pigment {
    //    checker Red, White
    //    scale 0.25            //这个scale只影响texture
    //    }
    //}
    transform my_box_transform  
    finish {
        ambient 0.4
        diffuse 0.6
    }
    pigment {                   //Method 2.木质纹理模型
        wood                    //确定上色模式,这里是木制
        color_map {             //确定颜色向量是如何来安排颜色值
          [0.0 color DarkTan]   //从DarkTan到DarkBrown占据脉络的90%,
          [0.9 color DarkBrown] //而从DarkBrown到VeryDarkBrown占据了10%
          [1.0 color VeryDarkBrown]
        }
        turbulence 0.07         //调节模式的条纹脉络,褶皱强度
        scale <0.25,0.1,1>      //调节模式的大小,此处值越小纹理越密集
    } 
    //pigment {DMFWood4 }       //Method 3.使用预定义的木质纹理
}  

cylinder {                  定义一个圆柱体: 两个底面圆心+圆柱半径
    <-7, 0, 10>, <-7, 4, 10>, 3 
    rotate <10, 0, -10>
    translate <0,0,3>
    finish {
		ambient 1.9
		diffuse 0.1
    }
    //pigment {NeonBlue}
	texture {
    	T_Stone24          //预定义纹理: 添加大理石纹理
    	scale 0.9          //这个scale只影响纹理
	} 
	normal {
	    bumps 1.1          // 指定凸起的表观高度
	    scale 0.03         // 指定直径大小(凸起间隔/高度).对颜色图案没有影响
    }
}

2.效果图

三. CSG Objects(构造立体几何)

(union 并集, intersection 交集, difference 差集, merge 融合的使用)

1.代码

#include "colors.inc"

camera{
	location <0,1,-10>
	look_at 0
	angle 36
	rotate <0,20,0> //改变y的值,类似于相机绕着物体水平旋转一周
}
light_source{ <500,500,-1000> White }
plane{ 
	y, -1.5
	pigment { checker Green White }
} 

//********************************************
#declare my_union = union{		            //两个物体的并集
    sphere{
        <0,0,0>, 1
        translate -0.5*x
    }
    sphere{
        <0,0,0>, 1
        translate 0.5*x
    }
    pigment { Blue }
    //scale  <1,0.25,1>
    //rotate <90,0,45>
    //translate 1.4*y
}

#declare my_intersection = intersection{    //两个物体的交集(此处未着色一片黑)
    sphere{
        <0,0,0>, 1
        translate -0.5*x
    }
    sphere{
        <0,0,0>, 1
        translate 0.5*x
    }
}
#declare my_intersection_1 = intersection{  //两个物体的交集(此处着色后可见效果)
    object { my_intersection }
    pigment { Red }    //此处使用pigment 下面引用该object时,pigment中的filter(透明效果)将不起作用
}
 
//-------------------------------
#declare my_differ = difference{
    object{
        my_intersection
        rotate 90*y
    }
    cylinder{
        <0,0,-1>, <0,0,1>, 0.35
    }    
}
 
#declare my_differ_1 = difference{
    object{my_differ}    
    pigment {Red}
}
//********************************************
//object {my_union} 
//object {my_intersection_1} 
//object {my_differ_1}  

//union{
//    object {my_differ translate <-0.7, 0.7, 0>}
//    object {my_differ translate <0.7, 0.7, 0>}
//    object {my_differ translate <-0.7, -0.7, 0>}
//    object {my_differ translate <0.7, -0.7, 0>}
//    pigment {Red filter 0.5}
//}
merge{ //对比上面的union,类似但内部的融合去除了,多用在透明物体上 
    object {my_differ translate <-1.7, 0.5, 0>}
    object {my_differ translate <1.7, 0.5, 0>}
    object {my_differ translate <-0.7, -0.7, 0>}
    object {my_differ translate <0.7, -0.7, 0>}
    pigment {Red filter 0.5}
}

2.效果

POV-Ray简单上手教程——坐标系统
Dirt Zhang的博客
07-04 3553
物体、灯光和摄像机的位子都是使用的典型的3D坐标系统。之前,我们讲解过POV-Ray的坐标系统。这里我们在回顾一下,X轴的正方向指向右边,Y轴正方向指向上,Z轴指向屏幕里。 坐标系统的位置经常用三个元素来表示(x,y,z),这是很容易理解的。 向量也不总是来表示指示方向的。他们也涉及一些对物体移动、旋转和大小控制的操作。 大小,位置,方向和变形的坐标操作,与一个叫做transformation
POV-Ray简单上手教程(学习笔记)(一)
热门推荐
Dirt Zhang的博客
05-01 1万+
最近在研究模拟流体方面的时候,遇到了渲染图像的问题。偶然间发现了POV-Ray这一软件,而目前网上关于这个软件的教程很少,所以就萌发了记录学习过程的想法。目前主要的学习资料是官网的教程文档。地址在这里:http://www.povray.org/documentation/3.7.0/t2_0.html 。英文基础好的同学建议直接参考官网教程。
POV-Ray 开源项目使用教程
最新发布
gitblog_00815的博客
08-15 258
POV-Ray 开源项目使用教程 povrayThe Persistence of Vision Raytracer: http://www.povray.org/项目地址:https://gitcode.com/gh_mirrors/po/povray 1. 项目的目录结构及介绍 POV-Ray 项目的目录结构如下: povray/ ├── AUTHORS ├── CMakeLists.txt...
POV-RAY基础教程 - 基本SDL(2)
亨利王的博客
04-10 8068
本片介绍POV-RAY基本元素,同时编写基本的SDL文件并运行,由于POV-RAY是基于POV场景描述文进行图形渲染的,所以,首先需要了解和掌握POV文件的编写。 点击这里回到上一篇 POV-RAY教程系列 - 介绍(1) 第一副图像 了解POV-Ray的坐标系 首先,我们必须告诉POV-Ray我们的相机的位置以及它的方向。为此,我们使用3D坐标。POV-Ray的常用坐标系统是正y轴朝上,正x轴指...
POV-RAY教程系列 - 介绍(1)
亨利王的博客
04-10 1万+
最近在学习神经网络维度方面的介绍时,接触到多维几何模型的可视化描述。偶然间发现了POV-Ray这一软件,觉得很有意思,所以决定研究一下,写个教程,供大家参考。 POV-RAY介绍 (The Persistence of Vision Ray Tracer, or POV-RayPOV视觉光线追踪器是一个光线跟踪程序,它是从基于文本的场景描述文件生成图像,可在各种计算机平台上使用。它最初基于DKB...
POV-RAY基础教程 - CSG(3)
亨利王的博客
04-10 2382
构造型实体几何体(CSG)是一种可以组合原始对象以创建更复杂的对象的手段或者说方式,在上一篇介绍黄金链就已经用到了CSG方法。 回到上一篇 POV-RAY基础教程 - 基本SDL(2) 什么是CSG? POV-Ray的CSG(Constructive Solid Geometry)允许我们通过以四种不同的方式组合原始形状来构造复杂的实体。它们是: 使用union声明,将两个或多个形状合并在一起;...
POV-RAY基础教程 - 光源(4)
亨利王的博客
04-10 3771
在任何光线追踪场景中,照亮物体及其表面所需的光线必须来自光源。POV-Ray中有多种光源,仔细使用正确的光源可以产生非常令人印象深刻的结果。我们花一点时间来探索一些不同类型的光源及其各种参数。 Pointlight(点光源) 点光源正是名称所指示的。点光源没有大小,是不可见的,无论距离光源有多远,都可以均匀地照亮场景中的所有物体(这种行为可以改变)。这是最简单和最基本的光源。只有两个重要参数,位置...
pov-ray-tracing:使用POV-Ray在25天内跟踪25个场景
05-14
使用POV-Ray进行光线追踪 四年前,我用Java编写,以渲染用源代码硬编码的场景。 编写完此光线跟踪器之后,我开始了解可以在Internet上免费使用的复杂的光线跟踪引擎。 POV-Ray似乎是最受欢迎的引擎之一,我决定学习...
POV-Ray 3.6.2.dmg
05-04
POV-Ray,全名是Persistence of Vision Raytracer,是一个使用光线跟踪绘制三维图像的开放源代码免费软件。
POV-Ray:POV-Ray 磁共振动画
06-30
标题 "POV-Ray: POVRay 磁共振动画" 提到的是使用POV-Ray这款免费的光线追踪软件创建磁共振动画的过程。光线追踪是一种计算机图形学技术,它模拟光在现实世界中的行为,用于产生高真实感的图像。POV-Ray是这种技术的...
pov-ray实现光照效果,阴影效果,镜面效果,透明效果,
11-15
pov-ray实现光照效果,阴影效果,镜面效果,透明效果,
基于POVRAY的三维全景图像的计算机生成方法
09-04
基于POVRAY的三维全景图像的计算机生成方法
POV.rar_c#光线跟踪_pov_pov ray_光线_追踪算法
09-21
8. **POV-Ray语法**:虽然这个程序是用C#编写的,但可能参考了POV-Ray的语法,以便用户能编写类似于POV-Ray的场景描述文件,描述场景的布局和物体属性。 9. **优化策略**:光线追踪往往需要大量计算,因此,有效的...
pov-ray使用手册_使用POV-Ray的3D图形代码
cumj63710的博客
06-16 2773
pov-ray使用手册 3D对象的逼真的图像(可以从任何角度在各种照明条件下查看)对于艺术家,设计师,建筑师,科学家以及许多其他人来说都具有巨大的价值。 问题在于它们通常缺乏生产它们的设备,技能或两者。 输入POV-Ray开源3D图像渲染软件。 几个冬天之前,我躲避了天气,但我决定(不是第一次)学习生成3D图像的知识。 尽管我在高中时涂鸦并参加了美术课,但我的绘画并没有什么特别的,而且我...
POV-Ray简单案例
牵LV小猪精的博客
09-16 1099
POV-Ray,全名是Persistence of Vision Raytracer,是一个使用光线跟踪绘制三维图像的开放源代码免费软件。 按照3.7版本给的参考,写的代码,以下为部分源码 #version 3.7; global_settings { assumed_gamma 0.8 } //设置全局亮度 #include "colors.inc" #include "textures.inc" #include "shapes.inc" #include "metals.inc" #includ
Povray简介
韩小咪的专栏
07-08 3754
Povray:Persistence of vision raytracer (3D renderer).          povray是一款用来创建高质量三维图形的免费开源软件。可用于Windows 、Mac OS/Mac OS X和i86  Linux。你可以下载源代码,来
POV-Ray简单上手教程——光源的分类与使用
Dirt Zhang的博客
05-22 4313
在本篇中,我们将会接触到POV-Ray中的光源信息,这是非常重要的。因为要想获得一个真实的场景,对光源的设置就不可避免。在POV-Ray中,有许多光源,每个光源都具有一些属性的设置,正确的使用这些光源,能够更好的渲染出一幅精彩的画面。下面就让我们开始吧! 1.Pointlight(点光源) 为了很好的展示不同光源的效果,我们首先创建一个场景,在里面加入不同的物体。我们将通过光源对这些物体的效果
写文章

热门文章

  • KITTI数据集解读 42783
  • 矩阵运算_反对称矩阵性质_axb = [a]xb 30907
  • 矩阵运算_迹的相关性质 25721
  • Git创建本地分支并关联远程分支 25213
  • 树的存储_ 双亲表示法 及 双亲孩子表示法 25198

分类专栏

  • SLAM 付费 225篇
  • 读书笔记 8篇
  • linux 6篇
  • 计算机视觉算法 97篇
  • 编程相关 25篇
  • python 26篇
  • 自动驾驶 49篇
  • CMake 4篇
  • CUDA 1篇
  • 机器学习 4篇
  • 深度学习 96篇
  • 数学 36篇
  • 系统安装 16篇
  • 随手记 47篇
  • 三维重建 123篇
  • 职场技能 6篇
  • PCL 13篇
  • 项目管理 2篇
  • 算法面试题 30篇
  • 行业动态 3篇
  • 面试题 9篇
  • 可视化 6篇
  • Java 6篇
  • 设计模式 2篇
  • 绘图 2篇
  • English 2篇
  • 数据库 1篇
  • OpenGL 3篇
  • perl 2篇
  • OpenCV 24篇
  • c++ 62篇
  • Debug 5篇
  • 数据结构与算法 25篇
  • 多线程编程 3篇
  • 三维技术 6篇
  • javascript 2篇
  • GIS 13篇

最新评论

  • c_各个unsigned int 和 int的取值范围

    梵星...: 谢谢,有帮助

  • python_根据时间戳对坐标进行线性插值

    CSDN-Ada助手: 推荐 Python入门 技能树:https://edu.csdn.net/skill/python?utm_source=AI_act_python

  • linux_top命令打印结果_PID USER PR NI VIRT RES SHR S 什么意思

    ha_lydms: 博文细致入微,感谢博主的分享

  • 向量和矩阵的各种范数比较(1范数、2范数、无穷范数等等)

    技术卷: 你忽略了一个前提:X是mxn的矩阵,这是matlab帮助说明默认的,如果X是nxm,那么行和列的描述就要反过来

  • 论文笔记_RSS_2014_激光SLAM_LOAM_实时LIDAR定位与建图

    惊鸿一博: Robotics: Science and Systems. 期刊名称

大家在看

  • C++ 多态
  • Acwing DFS 630
  • 文字版格斗游戏
  • IT人必备摸鱼脚本 266
  • 【PyTorch】Tensor(张量)介绍 866

最新文章

  • linux_终端输入_几个提高效率的超有用配置
  • linux_ps命令的详细说明(man ps)_全网最全解释
  • SLAM_极线搜索最佳匹配特征点_NCC
2024
09月 2篇
08月 7篇
07月 5篇
06月 4篇
05月 3篇
04月 8篇
03月 4篇
02月 4篇
01月 9篇
2023年43篇
2022年54篇
2021年145篇
2020年292篇
2019年16篇
2017年34篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

惊鸿一博

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值

天下网标王山东智能网站优化哪家好北海优化网站排名简化优化后的win10镜像网站奎文网站优化推广外包网站排名优化公司软件网站优化方案定制龙口行业网站优化网站代码优化手写漳州外贸网站google优化厦门网站优化多少钱优化网站皆选大将军20平湖综合网站优化小型门户网站优化方案潜江工厂网站优化上海网站优化网络推广价格镇海区网站优化企业营销型网站优化难点是什么城阳网站关键词优化有效的网站优化个人和企业网站优化三山区网站优化多少钱郑州网站优化外包怎么收费的新网站做优化的历程天空之大网站seo优化新网站如何优化seo网站优化师 职位保定网站优化托管怎么收费呼市网站优化哪家好邓州网站优化乐至网站制作优化公司香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

天下网标王 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化