幼儿饰品瑜伽美体用品微软
投稿投诉
微软创意
爱情通信
用品婚姻
爱好看病
美体软件
影音星座
瑜伽周边
星座办公
饰品塑形
搞笑减肥
幼儿两性
智家潮品

画正方体,python需要几行代码呢?9种方法实现看看

  1说明:
  1。1画3d正方体cube,用python编程,需要几行代码呢?今天就来看看简洁的python和其强大的库文件。
  1。2相关包安装,建议采用pip法,用国内源安装较好。pipinstallihttps:mirrors。aliyun。compypisimple软件名本机采用sudopip3。8installihttps:mirrors。aliyun。compypisimple软件名
  1。3环境:
  华为笔记本电脑、深度deepinlinux操作系统、python3。8和微软vscode编辑器。
  2示例:
  排行榜
  2。1第9名:
  panda3d法,65行代码,迪士尼公司开源项目。
  2。1。19panda3d法65。py代码:fromdirect。showbase。ShowBaseimportShowBasefromdirect。showbase。DirectObjectimportDirectObjectfrompanda3d。coreimportGeomVertexFormat,GeomVertexDatafrompanda3d。coreimportGeom,GeomTriangles,GeomVertexWriterfrompanda3d。coreimportGeomNode,PerspectiveLens,LVector3baseShowBase()base。disableMouse()base。camera。setPos(0,10,0)defnormalized(args):myVecLVector3(args)myVec。normalize()returnmyVecdefmakeSquare(x1,y1,z1,x2,y2,z2):formatGeomVertexFormat。getV3n3cpt2()vdataGeomVertexData(square,format,Geom。UHDynamic)vertexGeomVertexWriter(vdata,vertex)normalGeomVertexWriter(vdata,normal)colorGeomVertexWriter(vdata,color)texcoordGeomVertexWriter(vdata,texcoord)ifx1!x2:vertex。addData3(x1,y1,z1)vertex。addData3(x2,y1,z1)vertex。addData3(x2,y2,z2)vertex。addData3(x1,y2,z2)normal。addData3(normalized(2x11,2y11,2z11))normal。addData3(normalized(2x21,2y11,2z11))normal。addData3(normalized(2x21,2y21,2z21))normal。addData3(normalized(2x11,2y21,2z21))else:vertex。addData3(x1,y1,z1)vertex。addData3(x2,y2,z1)vertex。addData3(x2,y2,z2)vertex。addData3(x1,y1,z2)normal。addData3(normalized(2x11,2y11,2z11))normal。addData3(normalized(2x21,2y21,2z11))normal。addData3(normalized(2x21,2y21,2z21))normal。addData3(normalized(2x11,2y11,2z21))color。addData4f(1。0,0。0,0。0,1。0)texcoord。addData2f(0。0,1。0)texcoord。addData2f(0。0,0。0)texcoord。addData2f(1。0,0。0)texcoord。addData2f(1。0,1。0)trisGeomTriangles(Geom。UHDynamic)tris。addVertices(0,1,3)tris。addVertices(1,2,3)squareGeom(vdata)square。addPrimitive(tris)returnsquaresquare0makeSquare(1,1,1,1,1,1)square1makeSquare(1,1,1,1,1,1)square2makeSquare(1,1,1,1,1,1)square3makeSquare(1,1,1,1,1,1)square4makeSquare(1,1,1,1,1,1)square5makeSquare(1,1,1,1,1,1)snodeGeomNode(square)snode。addGeom(square0)snode。addGeom(square1)snode。addGeom(square2)snode。addGeom(square3)snode。addGeom(square4)snode。addGeom(square5)cuberender。attachNewNode(snode)cube。hprInterval(1。5,(360,360,360))。loop()cube。setTwoSided(True)base。run()
  2。1。2效果图:
  2。2第8名:
  pygame法,42行代码,配合OpenGL
  2。2。18pygame法42。py代码:importpygamefrompygame。localsimportfromOpenGL。GLimportfromOpenGL。GLUimportpygame。init()pygame。display。setmode((640,480),OPENGLDOUBLEBUF)元组定义定义正方体的xyz坐标点CUBEPOINTS((0。5,0。5,0。5),(0。5,0。5,0。5),(0。5,0。5,0。5),(0。5,0。5,0。5),(0。5,0。5,0。5),(0。5,0。5,0。5),(0。5,0。5,0。5),(0。5,0。5,0。5))定义RGB颜色CUBECOLORS((1,0,0),(1,1,0),(0,1,0),(0,0,0),(1,0,1),(1,1,1),(0,0,1),(0,1,1))定义面,四个点构成一个面CUBEQUADVERTS((0,1,2,3),(3,2,7,6),(6,7,5,4),(4,5,1,0),(1,5,7,2),(4,0,3,6))定义线,两个点构成一个线CUBEEDGES((0,1),(0,3),(0,4),(2,1),(2,3),(2,7),(6,3),(6,4),(6,7),(5,1),(5,4),(5,7),)defdrawcube():allpointslist(zip(CUBEPOINTS,CUBECOLORS))glBegin(GLQUADS)forfaceinCUBEQUADVERTS:forvertinface:pos,colorallpoints〔vert〕glColor3fv(color)glVertex3fv(pos)glEnd()glColor3f(0,0,0)glBegin(GLLINES)forlineinCUBEEDGES:forvertinline:pos,colorallpoints〔vert〕glVertex3fv(pos)glEnd()defmain():glEnable(GLDEPTHTEST)glMatrixMode(GLPROJECTION)gluPerspective(45。0,640480。0,0。1,100。0)glTranslatef(0。0,0。0,3。0)glRotatef(25,1,0,0)whileTrue:eventpygame。event。poll()ifevent。typeQUITor(event。typeKEYDOWNandevent。keyKESCAPE):breakglClear(GLCOLORBUFFERBITGLDEPTHBUFFERBIT)glRotatef(1,0,1,0)drawcube()pygame。display。flip()ifnamemain:main()
  2。2。2效果图:
  2。3第7名:
  vispy法,30行代码。
  2。3。17vispy法30。py代码:fromvispyimportapp,gloo,visualsfromvispy。visuals。transformsimportMatrixTransformclassCanvas(app。Canvas):definit(self):窗口大小app。Canvas。init(self,keysinteractive,size(1300,1200))self。boxvisuals。BoxVisual(width1,height1,depth1,edgecolorb)self。thetaself。phi0self。transformMatrixTransform()self。box。transformself。transformself。show()self。timerapp。Timer(connectself。rotate)self。timer。start(0。016)defrotate(self,event):self。theta。5self。phi。5self。transform。reset()self。transform。rotate(self。theta,(0,0,1))self。transform。rotate(self。phi,(0,1,0))self。transform。scale((100,100,0。001))self。transform。translate((200,200))self。update()defonresize(self,event):vp(0,0,self。physicalsize〔0〕,self。physicalsize〔1〕)self。context。setviewport(vp)self。box。transforms。configure(canvasself,viewportvp)defondraw(self,ev):背景颜色设置gloo。clear(colorblack,depthTrue)self。box。draw()winCanvas()app。run()
  2。3。2效果图:
  2。4第6名:
  vtk法,19行代码。
  2。4。16vtk法19。py代码:importvtk实例化cubecubevtk。vtkCubeSource()定义三边长10,长宽高cube。SetXLength(10)cube。SetZLength(10)cube。SetYLength(10)cubeMappervtk。vtkPolyDataMapper()cubeMapper。SetInputConnection(cube。GetOutputPort())cubeActorvtk。vtkActor()cubeActor。SetMapper(cubeMapper)cube表面为白色1。0,1。0,1。0cubeActor。GetProperty()。SetColor(0。1,0。7,0。1)cube表面为草绿色渲染器设置:实例化renvtk。vtkRenderer()ren。AddActor(cubeActor)将正方体加入渲染器中ren。SetBackground(0。1,0。2,0。4)窗口背景颜色:蓝色定期渲染器窗口renWinvtk。vtkRenderWindow()renWin。AddRenderer(ren)创建窗口交互器irenvtk。vtkRenderWindowInteractor()iren。SetRenderWindow(renWin)iren。Initialize()iren。Start()
  2。4。2效果图:
  2。5第5名
  matplotlib法,16行代码
  2。5。15matplotlib法16。py代码:frommatplotlibimportpyplotaspltfrommpltoolkits。mplot3dimportAxes3Ddefplotlinearcube(x,y,z,dx,dy,dz,colorred):figplt。figure()axAxes3D(fig)xx〔x,x,xdx,xdx,x〕yy〔y,ydy,ydy,y,y〕kwargs{alpha:1,color:color}ax。plot3D(xx,yy,〔z〕5,kwargs)ax。plot3D(xx,yy,〔zdz〕5,kwargs)ax。plot3D(〔x,x〕,〔y,y〕,〔z,zdz〕,kwargs)ax。plot3D(〔x,x〕,〔ydy,ydy〕,〔z,zdz〕,kwargs)ax。plot3D(〔xdx,xdx〕,〔ydy,ydy〕,〔z,zdz〕,kwargs)ax。plot3D(〔xdx,xdx〕,〔y,y〕,〔z,zdz〕,kwargs)plt。show()plotlinearcube(0,0,0,100,100,100)
  2。5。2效果图:
  2。6第4名:
  visvis法,14行代码
  2。6。14visvis法14。py代码:importvisvisasvvclassCustomWobject(vv。Wobject):definit(self,parent):vv。Wobject。init(self,parent)defGetLimits(self):x1,x20,1y1,y20,1z1,z20,1returnvv。Wobject。GetLimits(self,x1,x2,y1,y2,z1,z2)avv。cla()cCustomWobject(a)a。SetLimits()xyz相等appvv。use()app。Run()
  2。6。2效果图:
  10行代码以内的
  3第3名:
  pyqtgraph法,8行代码。
  3。13pyqtgraph法8。py代码:frompyqtgraph。QtimportQtGuiimportpyqtgraph。openglasglappQtGui。QApplication(〔〕)wgl。GLViewWidget()w。show()bgl。GLBoxItem()默认大小w。addItem(b)app。instance()。exec()
  3。2效果图:
  4第2名:
  pyvista法,5行代码。
  4。12pyvista法5。py代码:importpyvistaaspv实例化boxcube正方体boxpv。Box()实例化一个画布ppv。Plotter()将box添加在画布p上进行渲染p。addmesh(box,colortan,showedgesTrue)显示p。show()
  4。2效果图:
  5第1名:
  冠军,vpython法,2行代码搞定。
  5。11vpython法2。py代码:fromvpythonimportbox()
  5。2操作和效果图:
  怎么样?
  python厉害不?
  看似无聊,但是都是在国外大神原创性无聊的基础上无聊的。
  记住,python就是一个无聊的大神无聊时发明的,加油,中国人。
  科技创新,让科技创新的思维进入我们无聊时的大脑。
  自己整理并分享出来
  喜欢的人,请点赞、关注、评论、转发和收藏。

辟谣哺乳期生病不能吃药?乳腺发炎了,医生给我开了抗生素。吃药期间,我还能喂奶吗?哺乳期感冒了咋办,能吃治感冒的药吗?哺乳期生病吃点中药行吗?以上都是我在网上问诊时,经常被哺乳期妈妈们问到的问题。……吃1次等于吃8个塑料袋!9岁男童积食不长个,只因这3种晚餐阳阳今年9岁了,非常的活泼可爱,是楼上邻居家的小孩,平时嘴巴非常甜,见到人就打招呼,周围的邻居都很喜欢他。这一年多时间里,阳阳不见怎么长个,看起来很瘦小,而且还经常生病,……徜徉七彩玉谷(散文)知道七彩玉谷这个名字,是我第二次来到大山王村,听下榻的房东说的。至此,七彩与玉谷这两个概念,就印在我的脑海里了。我经常想,什么样的地方能融入七种色彩,还把一条峡谷变幻成了……小学生读课文总出错,背课文还费劲儿,那是方法没用对谈到语文学习,就不得不说读课文这件事儿了,读课文看似很简单,事实上许多孩子却做不到读文要求,尤其是低年级的小学生。读课文有哪些具体要求?作为低年级的小学生怎样培养其读书方……这些名人的名字都是源于它,既优美又有内涵古人从诗歌中寻找寓意美好的词为自己起名非常常见,而且现代人也有不少,但像南怀瑾、林徽因、梁思成、琼瑶这些好听的名字,却源自最古老的诗歌集《诗经》,民国时期,很多人都从《诗经》中……孩子成绩不好就是笨?脑科学研究笨小孩只是放错位置的天才说起阅读障碍不知道大家对它的了解有多少,是否会认为这是一种残疾或者是缺陷呢?其实在我们的身边有许多这样的孩子,他们也许其他地方都表现得很正常但读书的时候便会稍显逊色,没有办法理……天灸增强体质,防治疾病,三伏贴预约开始啦一场疫情,让人们认识到身体免疫力的重要性。我国特有的传统疗法天灸疗法,通过穴位和药物的双重作用,以达到调整阴阳气血、增强机体免疫力,达到防治疾病的功效。三伏贴适应症……孩子爱趴着睡觉,需要干预吗?有人说孩子总爱趴着睡觉是因为肚子不舒服,有这个说法吗?孩子6个月以后,总是睡着睡着就趴着睡,虽然自己会转头露出鼻子,但还是很担心孩子每天都是撅屁股、青蛙睡,要干预吗……美国这么发达,为什么却没有大力发展高铁?大家好,欢迎观看本期的科普大格局。随着我们现在的经济条件慢慢变好,出门旅游的人也是越来越多,所以在最近这些年里,旅游业的发展势头也是越发的好,尤其是我们国内的旅游地区,更……孩子放假早餐吃什么?10分钟做好,营养又美味,孩子特喜欢每天不知道吃啥可以关注我,带你们做大厨吐司巨好吃做法来咯,吐司玉米烙,香甜可口也泰泰泰好次了,10分钟就能搞定香甜沙拉酱,拉丝芝士,做早餐搭配牛奶都超绝了食材:吐司……宝宝每次喝奶都剩点,哄着喂完还是倒掉?错误做法易积食文福林妈咪无意间刷到一个视频,说是给宝宝喂奶粉时,有一种做法很容易让宝宝积食。那就是当你给宝宝冲了100毫升奶时,宝宝只吃了80毫升,于是你就抱着宝宝躺一躺再拍一拍……小鹿班比丧命的王子,这是危险的开始,来自持枪的猎人《小鹿班比》丧命的王子,这是危险的开始,来自持枪的猎人第七个章节中,我们认识了一王子公鹿,一头小公鹿。但是并没有在我们的记忆里停留太多的时间。就被猎人枪杀了,难道没有一点……
法国爱达力奶粉入华8年,CBME孕婴童展上拿下双料大奖进入中国8年,法国爱达力奶粉就已覆盖中国27个省市自治区,成为进口奶粉的重要一员,这背后离不开倍嘉国际的努力。10月12日,为期三天的第20届CBME中国孕婴童展正式落幕,爱达……年三十生孩子,可没那么美好做好这五点准备,春节也能坐好月子伴着年三十跨年钟声诞生的新年宝宝,总是受到几乎所有新闻媒体的关注,是每年各大电视台的一大重点喜庆新闻。宝爸宝妈和医护人员,面对镜头的那一份灿烂微笑,是新年里感染大家的一份……花孔雀金子轩金子轩是兰陵金氏家主金光善的嫡子,唯一的嫡子,金光善估计是唯一成功的俩,就是有了金子轩和有手段的当家主母。金子轩,相貌出众,正直善良,性格非常高傲,世家公子排名第三,是世……妈妈喊我和她睡一起,把我房间锁起来,原因让我感动哭了!其实从我们开始读书都开始自己单独睡了,因为爸爸妈妈有自己的空间,我也有我的私人空间,大家各自有秘密,但我睡的床总感觉好小,妈妈老是担心我会摔下来,看着他们每天都为我担心,我就想……河南高考生真幸福,125万人中20。4万人被提前录取,有先见众所周知,21年的高考生总人数有突破历史高峰,根据数据统计总高考生人数约1078万人,其中复读生人数占187万人。而高校总数就这样多,恐怕今年考生报考会更加艰难。对于河南……捏捏乐尖叫鸡磁力泥哪种减压玩具真有用?实验见真相生活的琐事、工作的烦恼是不是时常让你感到压力山大?想发泄压力也许你可以了解下玩具市场的新宠解压玩具什么是解压玩具?这类玩具质量怎么样?……在这4种家庭里,孩子将来成才的概率会更高!父母再忙也要读一读中国农民古谚语里曾说:杂草铲除要趁早,孩儿教育要从小。在孩子的教育中,我们常说的两个最大的成分就是家庭的教育和学校的教育;而家庭教育往往优先于学校教育,因为孩子出生后一段……孕早期出现这5种情况,可能会诱发ampampquot胎停am胎儿在妈妈肚子里的时候就深受妈妈的期待,这是一位母亲即将为人母的美好期许。从胎心的第一次跳动到完成跟宝宝的第一次互动,无时不刻不牵绊着妈妈的心。胎儿健康发育是妈妈的……核心教育理念学习即认知世界(这篇文章是再一次把自己的教育理念写出来,让可能成为我的学生的孩子和家长们可以参考。熟悉我的朋友已经知道了,不熟悉的,还是认真看一下,特别是希望获得一种主流的教育理念的时候。)……层次越低的女人,总爱说这些话,容易祸从口出一个层次低的女人,开口闭口总爱说这些话,还是保持距离为好前言:社会上我们每个人都不同,也分三六个等级,有的人接触一下就会发现这个人没有什么内涵,有的女人……缓解宝宝夜奶,多喝优博瑞慕就对了宝宝出生是一件非常开心的事情,毕竟家里多了个小可爱,新手爸妈十分的开心。不过许多新手爸妈在抚育孩子的过程中会遇到很多问题,像是宝宝们经常会要喝夜奶,新手爸妈只好迁就孩子,半夜起……荔枝壳不要扔,放锅里一煮,每周坚持喝3次,很多人不知道有啥用荔枝壳不要扔,放锅里煮一煮,每周坚持喝3次,很多人不知道有啥用!又到了荔枝大量上市的季节了,大街小巷超市随处可见,其甜嫩多汁,是很多人特别喜欢的一款水果,但是大家在吃荔枝……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网