python老司机带你玩玩炫酷的3D渲染,酷毙了!

自从学会了turtle模块后,画了不少简笔画。像小猪佩奇、哆啦A梦等等,但是这些依然不能让身边人感受到python的强大,依然是每次装逼必被打脸。就像你用turtle画了这个

别人拿出了这个

怎么办?面对函数库如此丰富的python,一库不行,我们还有另一库。那就是pyray库。

pyray库介绍

pyray库创建于2018年1月,虽然目前渲染3D场景的最佳工具仍然是POV ray.但是为什么我们不能在Python中使用这种功能(渲染2D、3D和更高维的对象和场景),这是一种可能已经被广泛使用的语言,并且只会越来越流行。于是通过pyray库这个代码实现迈向这个目标的第一步,我们能通过简洁的python语言来做POV ray所做的一切—渲染复杂的3D对象、场景以及动画等等,而且这会在视频、视频游戏、物理模拟或者漂亮的图片中得到应用。最重要的是,这个库使用起来非常简单,尽量减少对外部库的依赖,以便更多的人能够用它来运行。

pyray安装

pyray库已经上传至pypi,通过pip命令安装

或者,您可以下载代码并从主文件夹运行安装

这里建议还是用pip安装比较方便。

安装第三方依赖库

需要PIL、numpy和scipy等,如果使用WriteOnImage.py中的方法编写数学方程图像时,需要matptlib和Syry。

使用示例

1、立方体

效果

2、平面

效果

3、球形

效果

效果

4、抛物面

效果

5、多面体

效果

6、散点

效果

看到这里,是不是感觉python很强大,是不是有种想试一试的冲动。但是目前pyray库只支持python2,在python3中只有部分功能。python3的小伙伴还要再等上一段时间。

我有一个微信公众号,经常会分享一些python技术相关的干货;如果你喜欢我的分享,可以用微信搜索“python语言学习”
关注

欢迎大家加入千人交流答疑裙:699+749+852

原文地址:https://www.cnblogs.com/pythonyezi/p/9374929.html

时间: 2024-10-11 18:26:59

python老司机带你玩玩炫酷的3D渲染,酷毙了!的相关文章

万字长文带你成为Python老司机

万字长文带你成为Python老司机 前言: 本文主要总结项目开发中和面试中的Python高级知识点,是进阶Python高级工程师必备要点. 主要内容: No.1 一切皆对象 众所周知,Java中强调"一切皆对象",但是Python中的面向对象比Java更加彻底,因为Python中的类(class)也是对象,函数(function)也是对象,而且Python的代码和模块也都是对象. Python中函数和类可以赋值给一个变量 Python中函数和类可以存放到集合对象中 Python中函数和

24、Cocos2dx 3.0游戏开发找小三之网格动作:高炫酷的3D动作

重开发者的劳动成果,转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/37596763 网格动作类似于动作特效,可以实现翻转.震荡.抖动.水的波纹等效果. 网格的基类: GridBase* Grid 获取或设置该节点的网格特效状态.网格应用于绘图平面上,可以实现水纹等 3D 特效: 基类定义:cocos2d/2d/CCGrid.h中: 基于这个基类有两个子类: Grid3D TiledGrid3D 这两个子类的共同点是:网格

初级开发者也能码出专业炫酷的3D地图吗?

好看的3D地图搭建出来,一定是要能为开发者所用与业务系统开发中才能真正地体现价值.基因于此,CityBuilder建立了与ThingJS的通道——直转ThingJS代码,支持将配置完成的3D地图一键转为代码,不仅减少开发者的工作量,还能作为非GISer开发者的地图教学工具,使一般开发者也能码出专业.炫酷的3D地图. 上节说到如何使用GeoJSON.QGIS编辑地图数据,使用CItyBuilder搭建一键城市模型,并且转入到ThingJS开发,以免大家遗忘,我将步骤再次贴出来,然后告诉大家如何使用

老司机带你用vagrant打造一站式python开发测试环境

前言 作为一个学习和使用Python的老司机,好像应该经常总结一点东西的,让新司机尽快上路,少走弯路,然后大家一起愉快的玩耍. 今天,咱们就使用vagrant配合xshell打造一站式Python开发测试环境. 目的 让你在Windows下,也能愉快的使用Linux环境调试Python. 适用人群:Python新手和希望在Windows下使用Linux环境调试Python的小伙伴们. 难度:super easy 最终效果:只用一个xshell终端(其他类似的都可以),启动ubuntu虚拟机,py

十年建站老司机带你十分钟搭建网站

本文概要: 1. 域名 + 域名注册 + 域名备案 + 域名解析绑定 2. 服务器 + 虚拟主机 + windows服务器 + linux服务器 3. CMS建站系统 4. 总结 在如今互联网发展迅速猛进的大环境下,网站已经成为一个企业不可缺少的网络媒介.但网站开发行业鱼龙混杂,质量参差不齐,价格更是跨越区间大.尤其对于那些在建站方面不懂的小白来说,很容易被人坑,所以作为在网站开发行业摸爬滚打多年的草根老司机,通过本文向大家分享建站的经验与心得,避免不必要的弯路和成本损耗. Come on! 小

神奇的Python,一行代码能做哪些炫酷的事情?

可能大家在网上已经看过类似的python单行代码可以实现的功能,比如: 九九乘法表: print(' '.join([' '.join(['%s*%s=%-2s'%(y,x,x*y)for y in range(1,x+1)]) for x in range(1,10)])) 或者输出前100项斐波那契数列的值: print([x[0] for x in [ (a[i][0], a.append((a[i][1], a[i][0]+a[i][1]))) for a in ([[1,1]], )

N年Python老司机,血泪总结新手常见10大错误

作为python的新手,大家在上手python的时候都会或多或少的接触到一些rookie mistake,也就是菜鸟级别的错误.小编作为一个老司机也是从这些错误中一点一点的积累经验,才慢慢的能够熟练的使用python. 遇到错误不可怕,关键是要学会如何去避免犯这些错误.今天小编就带领大家看一下作为python新手最常见的几个错误,希望大家能够在学习的过程中,尽量的去避免这些错误. 1.默认可变对象 上图中,我们定义了addElement函数,在函数的形参中,我们默认使用了可变对象list.当我们

初窥wordcloud之老司机带你定制词云图片

抓紧上车啦 #-*-coding:utf-8 -*- from os import path from wordcloud import WordCloud, STOPWORDS, ImageColorGenerator #用来画词云的. import matplotlib.pyplot as plt #用来解析特殊的图片模板,numpy也可以的. from scipy.misc import imread #第一步读你要制作成词云的源文件,少年记得用'r'去读,手抖用了次'w+'结果文件让我清

canvas - 炫酷的3D星空

1.国际惯例,先上效果 (⊙o⊙)- 效果图看上去效果并不很炫酷啊,直接戳 这里 看效果吧! 2代码部分 html: <canvas id="canvas" width="1920" height="1080"></canvas> css: *{margin: 0;padding: 0;} /*没啥必须的css*/ js:(这个博主也是够了,那么多的js代码,一点注释都没有,差评!)公子莫慌,由于代码比较多,注释部分就不在