本文实例讲述了Python3使用turtle绘制超立方体图形。分享给大家供大家参考,具体如下:

利用Python3中turtle的绘制超立方体。

绘图思路:

1)求出边长100的超立方体的点坐标;

以竖直线为依据,将点分为上下两组:

a为上边点列表,b为下边点列表:

a = [[120.71, 50], [50, 120.71], [-50, 120.71], [-120.71, 50], [-50, -20.71], [50, -20.71], [20.71, 50],[-20.71, 50]]

b = [[120.71, -50], [50, 20.71], [-50, 20.71], [-120.71, -50], [-50, -120.71], [50, -120.71], [20.71, -50],[-20.71, -50]]

2)编写绘制直线函数;

3)编写主程序:绘制点,绘制六角形直线,绘制竖直直线,绘制斜线

代码片段如下,可能不是最简洁的,如有好的建议,请不吝指正。

import turtle

# 创建绘制直线函数

def drawLine(p1, p2, size=3, color="black"):

turtle.penup()

turtle.goto(p1)

turtle.pensize(size)

turtle.pencolor(color)

turtle.pendown()

turtle.goto(p2)

def main():

# 求取点后,将超立方体点分为上下两个部分,两个列表

a = [[120.71, 50], [50, 120.71], [-50, 120.71], [-120.71, 50], [-50, -20.71], [50, -20.71], [20.71, 50],

[-20.71, 50]]

b = [[120.71, -50], [50, 20.71], [-50, 20.71], [-120.71, -50], [-50, -120.71], [50, -120.71], [20.71, -50],

[-20.71, -50]]

# 绘制点

turtle.pencolor("red")

turtle.penup()

for i in range(len(a)):

turtle.goto(a[i])

turtle.down()

turtle.dot(10, "red")

turtle.penup()

for i in range(len(b)):

turtle.goto(b[i])

turtle.down()

turtle.dot(10, "red")

turtle.penup()

# 绘制六边形直线

for i in range(6):

if i <= 4:

drawLine(a[i], a[i + 1])

drawLine(b[i], b[i + 1])

else:

drawLine(a[i], a[0])

drawLine(b[i], b[0])

# 绘制竖直线

for i in range(len(a)):

drawLine(a[i], b[i])

# 绘制斜线

drawLine(a[6], a[0])

drawLine(a[6], a[2])

drawLine(a[6], a[4])

drawLine(a[7], a[1])

drawLine(a[7], a[3])

drawLine(a[7], a[5])

drawLine(b[6], b[0])

drawLine(b[6], b[2])

drawLine(b[6], b[4])

drawLine(b[7], b[1])

drawLine(b[7], b[3])

drawLine(b[7], b[5])

turtle.done()

if __name__ == '__main__':

main()

pass

运行结果:

注:使用eclipse+pyDev结合Python3环境开发时,会提示:Undefined variable from import: penup及Undefined variable from import: goto等错误,无需理会直接运行仍可绘制出该图形。

希望本文所述对大家Python程序设计有所帮助。

python 3d绘图立方体_Python3使用turtle绘制超立方体图形示例相关推荐

  1. python 3d绘图立方体_python绘制3D立方体

    我想绘制一个平行六面体.其实我从python脚本开始画立方体为:python绘制3D立方体 import numpy as np from mpl_toolkits.mplot3d import Ax ...

  2. python 3d绘图立方体_PythonOCC 3D图形库学习—创建立方体模型

    Open CASCADE(简称OCC)平台是是一个开源的C++类库,OCC主要用于开发二维和三维几何建模应用程序,包括通用的或专业的计算机辅助设计CAD系统.制造或分析领域的应用程序.仿真应用程序或图 ...

  3. python 3d绘图立方体_用代码实现三维画图正方体的思路是什么?

    引入 在下面几种情况,你会用三维绘图工具还是二维绘图工具?机械设计师要设计一种齿轮组合机械,要看到多个面的效果 电影大片场景渲染 要想知道如何画出三维图像,首先要了解几个知识点通常我们说的三维是指在平 ...

  4. Python使用turtle绘制简单图形-设置绝对坐标setpos(), 抬起画笔penup(),放下画笔pendown()

    [小白从小学Python.C.Java] [Python-计算机等级考试二级] [Python-数据分析] Python使用turtle绘制简单图形 [太阳]选择题 以下Python代码中的penup ...

  5. python代码示例图形-Python使用matplotlib绘制三维图形示例

    本文实例讲述了Python使用matplotlib绘制三维图形.分享给大家供大家参考,具体如下: 用二维泡泡图表示三维数据 泡泡的坐标2维,泡泡的大小三维,使用到的函数 plt.scatter(P[: ...

  6. python画三维图-Python使用matplotlib绘制三维图形示例

    本文实例讲述了Python使用matplotlib绘制三维图形.分享给大家供大家参考,具体如下: 用二维泡泡图表示三维数据 泡泡的坐标2维,泡泡的大小三维,使用到的函数 plt.scatter(P[: ...

  7. python画圆形螺旋线-Python使用matplotlib绘制三维图形示例

    本文实例讲述了Python使用matplotlib绘制三维图形.分享给大家供大家参考,具体如下: 用二维泡泡图表示三维数据 泡泡的坐标2维,泡泡的大小三维,使用到的函数 plt.scatter(P[: ...

  8. python 3d绘图模块_Python绘制3D图形

    3D图形在数据分析.数据建模.图形和图像处理等领域中都有着广泛的应用,下面将给大家介绍一下如何使用python进行3D图形的绘制,包括3D散点.3D表面.3D轮廓.3D直线(曲线)以及3D文字等的绘制 ...

  9. 30.32.33.词云图、3D绘图、矩阵可视化、绘制混淆矩阵

    30.词云图(Word cloud) 30.1.Example 1: Basic word cloud 31.3D绘图 31.1.在3D图上绘制2D数据 31.2.3D 散点图 (scatterplo ...

  10. python 3d绘图-python - 轻松学会Matplotlib 3D绘图

    大多数数据可视化教程都给出了大致相同的基本内容:散点图,折线图,箱形图,条形图和热图等,一般都是2D平面图. 但是,如果我们希望跟进一步,该怎么办? 2D图只能显示一对x--y轴之间的关系;而3D图可 ...

最新文章

  1. build.xml java打包_配置pom.xml用maven打包java工程的方法(推荐)
  2. java基础系列:集合基础(3)
  3. java项目嗖嗖移动业务大厅项目报告_晋江市撰写节能评估报告的报告机构立项范本-文瑞...
  4. Zabbix 3.2.6通过SNMP和iDRAC监控DELL服务器
  5. 真实HDFS集群启动后master的jps没有DataNode
  6. 在SAP C4C TI(Thing Inspector)页面里添加自定义UI
  7. 第二次打开不是最大_第二次约会男生该干嘛,才能让关系更进一步?
  8. C# HttpWebRequest 填充IP代理
  9. paip.Log4j配置不起作用的解决
  10. rs485如何使用_气体检测仪rs485和4-20ma接线方式有什么区别,该如何选择最优的接线方式...
  11. python数据标注工具_使用Python实现简易的数据标注工具
  12. adobe官方卸载工具:Creative Cloud Cleaner Tool Mac版
  13. 【嵌入式面试题】C++经典面试题总结
  14. 电脑和打印机怎么连接
  15. 基于java+ssm的家庭理财系统
  16. HTML5如何与老师剑指天涯【三】
  17. 浙江大学计算机学院足球队,男足校队|浙大男子普通生足球队荣获2020年浙江省青少年校园足球联赛(大学男子校园A组)冠军...
  18. CNCC2020_胡振江_从芯片定制到语言定制:程序设计语言的系统化定制及其支撑环境
  19. oracle程序窗口,oracle窗口函数的使用
  20. [文摘20071019]九九重阳节的来历 重阳节传说故事 重阳节的活动习俗 重阳节诗篇...

热门文章

  1. 微信小程序搜索wifi列表
  2. 天肌处理器天梯排行榜2022 2022天玑处理器天梯图
  3. 面试珠玑 嵌入式C程序员经典笔试题一
  4. 深耕一线14年,见证云计算风起云涌
  5. 如何成为一流的「匠人」?
  6. echarts异步数据加载(在下拉框选择事件中异步更新数据)
  7. Vue-电子签名(E-Signature)
  8. TLC5615 产生频率可变的正弦波
  9. 润乾报表设计器——预览报表问题解决
  10. MT7921方案WIFI6无线网卡驱动编译方法