万万没想到Python 竟能绘制出如此酷炫的三维图.docx

上传人:b****0 文档编号:10080492 上传时间:2023-05-23 格式:DOCX 页数:11 大小:512.58KB
下载 相关 举报
万万没想到Python 竟能绘制出如此酷炫的三维图.docx_第1页
第1页 / 共11页
万万没想到Python 竟能绘制出如此酷炫的三维图.docx_第2页
第2页 / 共11页
万万没想到Python 竟能绘制出如此酷炫的三维图.docx_第3页
第3页 / 共11页
万万没想到Python 竟能绘制出如此酷炫的三维图.docx_第4页
第4页 / 共11页
万万没想到Python 竟能绘制出如此酷炫的三维图.docx_第5页
第5页 / 共11页
万万没想到Python 竟能绘制出如此酷炫的三维图.docx_第6页
第6页 / 共11页
万万没想到Python 竟能绘制出如此酷炫的三维图.docx_第7页
第7页 / 共11页
万万没想到Python 竟能绘制出如此酷炫的三维图.docx_第8页
第8页 / 共11页
万万没想到Python 竟能绘制出如此酷炫的三维图.docx_第9页
第9页 / 共11页
万万没想到Python 竟能绘制出如此酷炫的三维图.docx_第10页
第10页 / 共11页
万万没想到Python 竟能绘制出如此酷炫的三维图.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

万万没想到Python 竟能绘制出如此酷炫的三维图.docx

《万万没想到Python 竟能绘制出如此酷炫的三维图.docx》由会员分享,可在线阅读,更多相关《万万没想到Python 竟能绘制出如此酷炫的三维图.docx(11页珍藏版)》请在冰点文库上搜索。

万万没想到Python 竟能绘制出如此酷炫的三维图.docx

万万没想到Python竟能绘制出如此酷炫的三维图

作者|JayAlammar

转载自|高级农民工

原文|

通常我们用Python绘制的都是二维平面图,但有时也需要绘制三维场景图,比如像下面这样的:

这些图怎么做出来呢?

今天就来分享下如何一步步绘制出三维矢量(SVG)图。

八面体

我们先以下面这个八面体为例。

1安装相关包

首先安装两个必备包:

importpyrr#NumPy的3D函数库importsvgwrite#svg图形处理库

2定义3D图生成环境

接下来定义几个类设置好3维图基础环境:

viewport:

矩形图范围

camera:

包括视图矩阵和投影矩阵

mesh:

svg矢量图所需的网格表面矩阵、着色器和样式字典

3生成八面体数据

然后生成八面体每个定点的数据:

defoctahedron():

"""Constructaneight-sidedpolyhedron"""f=sqrt(2.0)/2.0verts=numpy.float32([(0-10)(-f0f)(f0f)(f0-f)(-f0-f)(010)])triangles=numpy.int32([(021)(032)(043)(014)(512)(523)(534)(541)])returnverts[triangles]

4pyrr包渲染

接下来利用pyrr3维库渲染上面的原始数据,最后生成svg矢量图。

5生成svg

上面最后一步生成svg图形,需要调用下面的Engine函数,略微有些复杂:

以上代码全部封装到类中调用,就可以生成八面体图形了。

除了八面体还可以生成很多其他图形。

球体和Klein瓶

代码如下:

多面球体

代码如下:

发光的球体

代码实现:

还可以绘制这种曲面体

代码实现如下:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2