婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 使用Python制作一盞 3D 花燈喜迎元宵佳節

使用Python制作一盞 3D 花燈喜迎元宵佳節

熱門標簽:正安縣地圖標注app qt百度地圖標注 電銷機器人系統廠家鄭州 地圖地圖標注有嘆號 舉辦過冬奧會的城市地圖標注 螳螂科技外呼系統怎么用 400電話申請資格 遼寧智能外呼系統需要多少錢 阿里電話機器人對話

說起元宵節,各位有沒有覺得這是咱們中國人最浪漫的節日呢?國人向來拘謹古板,一年到頭都是小心謹慎地過日子,唯有元宵節這天可以縱情豪放一把。東風夜放花千樹,寶馬雕車香滿路,火樹銀花霓虹閃爍,豪車遍地美女如云。細品,你甚至都能嗅到香奈兒的味道!月上柳梢頭,人約黃昏后,這又是何等的浪漫!比起燭光晚宴、鮮花加持,這份浪漫更顯純真。晚至明清,民間元宵節的喜慶氣氛,堪比西班牙的奔牛節、巴西的狂歡節、泰國的潑水節。

由于眾所周知的原因,估計今年的趵突泉元宵節燈會又要黃了。去哪兒體驗“花市燈如晝”的節日氣氛呢?Don't worry,沒有什么事能夠難倒程序員——用3D技術也可以做出下圖這樣的走馬燈,算是聊勝于無吧。

1.原材料

花燈紙

如下所示,還可以加上自己喜歡的圖案、文字等。

Python環境和模塊

一臺安裝了Python環境的電腦,Python環境需要安裝以下模塊。

  • numpy
  • pillow
  • wxgl

如果沒有上述模塊,請參考下面的命令安裝。

pip install numpy
pip install pillow
pip install wxgl

NumPy和 pillow 是 Python 旗下最常用的科學計算庫和圖像處理庫,屬于常用模塊。WxGL 是一個基于 PyOpenGL 的三維數據可視化庫,以 wx 為顯示后端,提供 Matplotlib 風格的交互式應用模式,同時,也可以和 wxPython 無縫結合,在wx的窗體上繪制三維模型。

2.制作工序

花燈制作工序非常簡單,只需要三十行代碼,可以直接在Python IDLE中以交互方式逐行執行。

導入模塊

>>> import numpy as np
>>> from PIL import Image
>>> import wxgl.wxplot as plt

打開花燈紙圖像

>>> fn = r'D:\temp\light0115\res\paper.png'
>>> im = np.array(Image.open(fn))/255
>>> im.shape
(400, 942, 3)

fn定義的是圖像存儲路徑,請據實修改。Image.open(fn)打開文件,返回一個PIL對象,np.array()將PIL對象轉成numpy.ndarray數組對象。除以255,將圖像數據從0到255的值域范圍變成0到1,適應WxGL的接口要求。查看數組的shape,顯示圖像分辨率為400像素高、942像素寬,每個像素有三種顏色(此處為RGB)。

根據花燈紙的大小制作龍骨

紙長942像素,卷成圓筒,半徑就是149.9像素,如果把半徑視為1個單位,則高度400像素相當于2.668個單位。

>>> rows, cols, deep = im.shape
>>> cols/(2*np.pi)
149.9239563925654
>>> r = 1
>>> h = 2*np.pi*rows/cols
>>> h
2.6680192387174464

接下來需要制作半徑1個單位、高度2.668個單位的圓筒狀龍骨了。

>>> theta = np.linspace(0, 2*np.pi, cols)
>>> x = r * np.cos(theta)
>>> y = r * np.sin(theta)
>>> z = np.linspace(0, h, rows)
>>> xs = np.tile(x, (rows,1))
>>> ys = np.tile(y, (rows,1))
>>> zs = z.repeat(cols).reshape((rows,cols))

這里的xs、ys、zs就是圓筒狀龍骨上各個點的x坐標、y坐標、z坐標。下面的代碼,每隔10個點抽取1個點,用mesh的方法畫出龍骨形狀。當然,也可以畫出全部的點,那樣頂點就會連成一片。

>>> plt.mesh(xs[::10,::10], ys[::10,::10], zs[::10,::10], mode='FLBL')
>>> plt.show()

用3D的方式畫出來的龍骨,效果如下。

給龍骨貼上花燈紙

有了龍骨,接下來就可以把花燈紙貼在龍骨上了。繼續操作之前,記得先把剛才彈出的3D龍骨窗口關閉。

>>> plt.mesh(xs, ys, zs, im)
>>> plt.show()

不過,你會立刻發現,花燈紙上下方向貼反了。沒關系,我們可以像下面這樣反轉方向。

>>> plt.mesh(xs, ys, zs, im[::-1])
>>> plt.show()

怎么樣,是不是有一點走馬燈的雛形了呢?

制作旋轉葉輪

走馬燈之所以能夠轉動,是因為里面有蠟燭加熱形成上升氣流,推動頂部的葉輪旋轉,從而帶動花燈旋轉。當然,這里的葉輪僅僅是個樣子,花燈旋轉依賴另外的機制實現。

>>> theta = np.linspace(0, 2*np.pi, 18, endpoint=False)
>>> x = r * np.cos(theta)
>>> y = r * np.sin(theta)
>>> x[2::3] = x[1::3]
>>> x[1::3] = 0
>>> y[2::3] = y[1::3]
>>> y[1::3] = 0
>>> z = np.ones(18) * h * 0.9
>>> vs = np.stack((x,y,z), axis=1)
>>> plt.mesh(xs, ys, zs, im[::-1])
>>> plt.surface(vs, color='#C03000', method='T', mode='FCBC', alpha=0.8)
>>> plt.show()

葉輪設計有6片,用三角形模擬,顏色深紅,透明度0.8,整體效果略顯粗糙了一點。

加上照明燈和提系

照明燈用一個白色的圓球表示,提系則是紅色的一條直線,兼做照明燈的電源線。

>>> plt.mesh(xs, ys, zs, im[::-1])
>>> plt.surface(vs, color='#C03000', method='T', mode='FCBC', alpha=0.8)
>>> plt.sphere((0,0,h*0.4), 0.4, '#FFFFFF', slices=60, mode='FCBC')
>>> plt.plot((0,0), (0,0), (0.4*h, 1.5*h), width=3.0, style='solid', cmap='hsv', caxis='z')

讓花燈轉起來

花燈旋轉的實現非常簡單,只需要給show方法一個rotation參數就可以。

plt.show(rotation='h-')

最終的花燈效果如下。

3.完整代碼

# -*- coding: utf-8 -*-

import numpy as np
from PIL import Image
import wxgl.wxplot as plt

im = np.array(Image.open('res/paper.png'))/255
rows, cols, deep = im.shape

r, h = 1, 2*np.pi*rows/cols
theta = np.linspace(0, 2*np.pi, cols)
x = r*np.cos(theta)
y = r*np.sin(theta)
z = np.linspace(0, h, rows)
xs = np.tile(x, (rows,1))
ys = np.tile(y, (rows,1))
zs = z.repeat(cols).reshape((rows,cols))

theta = np.linspace(0, 2*np.pi, 18, endpoint=False)
x = r*np.cos(theta)
y = r*np.sin(theta)
x[2::3] = x[1::3]
x[1::3] = 0
y[2::3] = y[1::3]
y[1::3] = 0
z = np.ones(18) * h * 0.9
vs = np.stack((x,y,z), axis=1)

plt.mesh(xs, ys, zs, im[::-1])
plt.surface(vs, color='#C03000', method='T', mode='FCBC', alpha=0.8)
plt.sphere((0,0,h*0.4), 0.4, '#FFFFFF', slices=60, mode='FCBC')
plt.plot((0,0), (0,0), (0.4*h, 1.5*h), width=3.0, style='solid', cmap='hsv', caxis='z')
plt.show(rotation='h-')

到此這篇關于使用Python制作一盞 3D 花燈喜迎元宵佳節的文章就介紹到這了,更多相關Python制作 3D 花燈內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

標簽:信陽 合肥 阜新 淘寶好評回訪 濟源 昭通 隨州 興安盟

巨人網絡通訊聲明:本文標題《使用Python制作一盞 3D 花燈喜迎元宵佳節》,本文關鍵詞  使用,Python,制作,一盞,花燈,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《使用Python制作一盞 3D 花燈喜迎元宵佳節》相關的同類信息!
  • 本頁收集關于使用Python制作一盞 3D 花燈喜迎元宵佳節的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    精品电影一区二区| 国产99久久久久| 久久久精品人体av艺术| 免费国产亚洲视频| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 久久久久国产精品麻豆 | 亚洲成人手机在线| 成人黄色小视频| 国产精品入口麻豆九色| 成人黄色片在线观看| 亚洲欧美自拍偷拍色图| 日本精品裸体写真集在线观看| 一区二区三区视频在线看| 欧美视频一区二区在线观看| 欧美高清在线视频| 欧美一区二区成人6969| 亚洲综合一二区| 欧美一级日韩一级| 国产高清久久久| 亚洲欧美电影一区二区| 欧美一区二区在线观看| 风间由美中文字幕在线看视频国产欧美| 国产精品麻豆网站| 欧美日韩精品一区二区三区| 免费观看91视频大全| 国产精品乱码久久久久久| 91国偷自产一区二区开放时间 | 精品一区二区三区在线播放| 精品三级在线看| 国产精品88888| 亚洲人成7777| 欧美一级欧美一级在线播放| 不卡一二三区首页| 欧美一级一级性生活免费录像| 欧美午夜精品一区二区蜜桃| 日韩激情一二三区| gogo大胆日本视频一区| 一本色道a无线码一区v| 亚洲一区二区欧美| 久久久久久久精| 欧美亚洲动漫精品| 国产激情一区二区三区| 天天做天天摸天天爽国产一区 | 国产精品成人一区二区三区夜夜夜| 岛国精品在线观看| 亚洲h在线观看| 亚洲欧美视频在线观看视频| 日韩欧美亚洲国产精品字幕久久久 | 国产乱码字幕精品高清av| 18涩涩午夜精品.www| 精品久久久久久久久久久久久久久久久 | 337p亚洲精品色噜噜狠狠| 美美哒免费高清在线观看视频一区二区 | 91精品国产综合久久久久久漫画| av色综合久久天堂av综合| 免费三级欧美电影| 亚洲线精品一区二区三区| 国产精品伦一区| 国产人成亚洲第一网站在线播放| 精品久久久久久综合日本欧美| 欧美亚洲国产一区二区三区va | 久久久久青草大香线综合精品| 欧美三级中文字幕在线观看| 色婷婷国产精品久久包臀| 成人免费高清视频在线观看| 九九久久精品视频| 精品一区精品二区高清| 青椒成人免费视频| 视频一区在线播放| 亚洲一区二区视频| 亚洲人快播电影网| 欧美三级三级三级爽爽爽| 一本大道久久a久久精品综合| 国产99久久久国产精品免费看| 久久99精品国产麻豆不卡| 人人爽香蕉精品| 麻豆国产一区二区| 狠狠色丁香久久婷婷综合丁香| 麻豆免费精品视频| 精品在线一区二区三区| 国内精品伊人久久久久av影院| 久久99热国产| 国产激情91久久精品导航| 国产精品亚洲午夜一区二区三区 | 亚洲精品乱码久久久久久| 亚洲视频一二三| 亚洲自拍都市欧美小说| 亚洲国产精品久久久久婷婷884| 欧美日韩高清在线| 91在线porny国产在线看| 欧美不卡在线视频| 日本视频一区二区| 国产精品素人一区二区| 亚洲色图.com| 国产午夜精品一区二区三区视频| 美脚の诱脚舐め脚责91| 国产成人综合网站| 95精品视频在线| 欧美视频在线观看一区二区| 日韩三级av在线播放| 中文字幕久久午夜不卡| 亚洲国产cao| 久久精品999| 99国产麻豆精品| 欧美a一区二区| 国产91精品欧美| 精品视频在线看| 欧美激情一区二区在线| 亚洲在线一区二区三区| 国产精品77777| 欧美精品三级在线观看| 中文字幕欧美国产| 丝袜国产日韩另类美女| 国产毛片精品视频| 欧美一区永久视频免费观看| 综合激情成人伊人| 久久99国产精品免费网站| 色老汉一区二区三区| 在线看日本不卡| 国产午夜久久久久| 日韩国产欧美在线播放| 国内精品免费**视频| 欧美色欧美亚洲另类二区| 久久久亚洲午夜电影| 日韩电影免费在线| 欧美视频一区在线观看| 成人免费一区二区三区在线观看| 国产成人精品三级麻豆| 精品国产一区二区三区四区四| 亚洲久草在线视频| 日韩一区日韩二区| 美女一区二区视频| 欧美亚洲综合另类| 国产精品乱码一区二区三区软件| 黄一区二区三区| 欧美不卡一区二区三区| 亚洲精品成人天堂一二三| 成av人片一区二区| 亚洲视频1区2区| 国产精品2024| 久久蜜桃av一区精品变态类天堂 | 精品一区二区三区香蕉蜜桃| 精品国精品自拍自在线| 一区二区三区免费观看| 91浏览器入口在线观看| 精品国产免费久久| 亚洲二区在线观看| 在线免费观看一区| 香蕉成人啪国产精品视频综合网| 欧美综合一区二区| 亚洲国产成人av好男人在线观看| 欧美高清视频在线高清观看mv色露露十八 | 在线观看国产91| 香蕉久久一区二区不卡无毒影院| 欧美性欧美巨大黑白大战| 亚洲一区二区三区三| 欧美无砖砖区免费| 青娱乐精品在线视频| 精品国产凹凸成av人网站| 加勒比av一区二区| xfplay精品久久| 99九九99九九九视频精品| 国产精品久久精品日日| 一本久久a久久精品亚洲| 日韩高清一区在线| 91精品啪在线观看国产60岁| 日日噜噜夜夜狠狠视频欧美人 | 中文字幕乱码亚洲精品一区| 国产一区二区三区精品欧美日韩一区二区三区 | 成人精品视频一区| 亚洲精品免费播放| 在线不卡a资源高清| 日韩福利电影在线| 国产欧美日韩亚州综合 | 欧美疯狂性受xxxxx喷水图片| 韩国av一区二区三区| 国产精品久久久久久久久免费丝袜 | 欧美精品一区二区三区视频| 粉嫩久久99精品久久久久久夜 | 狠狠色伊人亚洲综合成人| 中文字幕在线观看不卡视频| 欧美三级电影在线观看| 久久精品国产**网站演员| 亚洲精品高清在线| 久久综合色8888| 欧美三级日韩在线| 成人18视频在线播放| 麻豆精品国产91久久久久久| 亚洲自拍欧美精品| 欧美激情资源网| 久久久久国产精品麻豆ai换脸| 欧美精品黑人性xxxx| 色综合色狠狠综合色| 国产精一品亚洲二区在线视频| 日韩精品欧美成人高清一区二区| 亚洲乱码国产乱码精品精98午夜| 久久久不卡影院| 欧美精品一区二区三区蜜桃| 欧美日韩国产影片| 91久久精品一区二区|