真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

BlenderPython中bpy模塊有哪些

小編給大家分享一下BlenderPython中bpy模塊有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

創(chuàng)新互聯(lián)主營(yíng)福貢網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,app軟件開(kāi)發(fā)公司,福貢h5小程序開(kāi)發(fā)搭建,福貢網(wǎng)站營(yíng)銷(xiāo)推廣歡迎福貢等地區(qū)企業(yè)咨詢

簡(jiǎn)介

bpy全稱Blender Python API,是blender使用python與系統(tǒng)執(zhí)行數(shù)據(jù)交換和功能調(diào)用的接口模塊。通過(guò)調(diào)用這個(gè)模塊的函數(shù),一般來(lái)說(shuō)可以實(shí)現(xiàn)以下功能(下面的功能說(shuō)明摘自《Blender權(quán)威指南》11.2.1部分):

  • 代替界面操作去完成對(duì)物體的修改,例如修改網(wǎng)格屬性或添加修改器。

  • 自定義系統(tǒng)的相關(guān)配置,例如重設(shè)快捷鍵或修改主題的色彩。

  • 自定義工具的參數(shù)配置,例如自定義雕刻筆刷的參數(shù)。

  • 自定義用戶界面,例如修改面板的外觀和按鈕的排列效果。

  • 創(chuàng)建新的工具,例如Surface Sketching(表面繪制)工具。

  • 創(chuàng)建交互式工具,例如游戲的邏輯腳本。

  • 創(chuàng)建與外置渲染器的接口調(diào)用,例如配置Vray等外置渲染器。

  • 從定義Blender的數(shù)據(jù)結(jié)構(gòu)。

同時(shí)在Blender的界面中,為python腳本書(shū)寫(xiě)提供了非常人性的功能,把鼠標(biāo)放在某個(gè)控件(按鈕、輸入框)上一段時(shí)間,系統(tǒng)就會(huì)提示相應(yīng)的python接口代碼,如把鼠標(biāo)放在Render按鈕上,提示如下圖:
BlenderPython中bpy模塊有哪些
當(dāng)然上面的提示比較簡(jiǎn)單,僅僅是函數(shù)的提示,如果想獲得詳細(xì)的提示,再該控件上右鍵,顯示如下圖,然后點(diǎn)擊Online Manual或者Online Python Reference即可進(jìn)入該控件相應(yīng)官方的API文檔界面。(Edit Source還提供了修改該控件系統(tǒng)代碼的功能,不過(guò)一般應(yīng)該用不到。)
BlenderPython中bpy模塊有哪些

data

blender界面上所有可使用調(diào)節(jié)的對(duì)象內(nèi)容(包括mesh模型、lamp燈光、camera攝像機(jī),material材質(zhì)等)都在python中以特定的類型存儲(chǔ)起來(lái),在控制臺(tái)輸入bpy.types.class_name就可以查看相應(yīng)的類別(bpy.types里面存了特別多的類型),同時(shí)對(duì)這些對(duì)象的在界面上的修改操作也對(duì)應(yīng)這些類型屬性的修改,這樣就把界面操作和python腳本操作對(duì)應(yīng)起來(lái)了。

BlenderPython中bpy模塊有哪些

當(dāng)然使用bpy.data子模型可以訪問(wèn)在界面出現(xiàn)的對(duì)象(對(duì)個(gè)對(duì)象是以collection方式存儲(chǔ))
訪問(wèn)對(duì)象列表

bpy.data.objects  #訪問(wèn)場(chǎng)景內(nèi)普通對(duì)象列表,包括lamp、camera以及mesh模型的bpy.data.scenes  #訪問(wèn)場(chǎng)景列表bpy.data.materials  #訪問(wèn)材質(zhì)對(duì)象列表

BlenderPython中bpy模塊有哪些

訪問(wèn)具體的對(duì)象,可以通過(guò)bpy.data.objects[name/id],很明顯通過(guò)使用對(duì)象的名稱(使用自動(dòng)補(bǔ)全會(huì)提示對(duì)象名稱)或者在列表中的id來(lái)獲取這個(gè)對(duì)象(對(duì)scenes和materials列表訪問(wèn)同理),如下

bpy.data.objects['Camera']  #訪問(wèn)名為`Camera`的攝像機(jī)對(duì)象bpy.data.objects[1]  #訪問(wèn)列表中的第一個(gè)對(duì)象

BlenderPython中bpy模塊有哪些
訪問(wèn)對(duì)象的屬性,可以通過(guò)點(diǎn)方法進(jìn)行調(diào)用,一般使用自動(dòng)補(bǔ)全會(huì)提示可以使用的屬性。

bpy.data.objects['Camera'].name #訪問(wèn)對(duì)象名稱bpy.data.objects['Camera'].location #訪問(wèn)對(duì)象的位置

BlenderPython中bpy模塊有哪些

ops

bpy.ops子模塊提供了很多內(nèi)置的Operator(操作符),這些操作符既可以在控制臺(tái)中使用,也可以被集成到界面中由按鈕操作來(lái)完成(這里只關(guān)注python腳本的使用)。在我看來(lái)這些操作符就是類似其他語(yǔ)言中聲明的工具函數(shù),可以通過(guò)bpy.ops.ops_name(parameters)傳入相應(yīng)的參數(shù)來(lái)直接進(jìn)行調(diào)用(一般的程序員同學(xué)都應(yīng)該會(huì)吧)。當(dāng)然和工具函數(shù)一樣,也可以定義自己的操作符,注冊(cè)到系統(tǒng)中,就可以像內(nèi)置的操作符一樣使用了。
具體的操作這里面就不講究了(方法太多),如果要使用其中對(duì)應(yīng)的請(qǐng)查看相應(yīng)的api。

context

context(正文)是blender數(shù)據(jù)管理中的一個(gè)全局變量集合,它包含了目前被選擇的和激活的(物體的兩種屬性狀態(tài))的物體的信息,還記錄了當(dāng)前物體的編輯模式(data中沒(méi)有這方面的信息)。當(dāng)然使用context對(duì)物體對(duì)象的訪問(wèn)以及屬性的操作和data子模塊中相似。

bpy.context.selected_objects #訪問(wèn)選擇上的對(duì)象列表,明顯看出可以同時(shí)選擇多個(gè)對(duì)象bpy.context.active_object #訪問(wèn)目前激活的對(duì)象,激活的對(duì)象在某一時(shí)刻只有一個(gè),或者沒(méi)有(激活對(duì)象這個(gè)功能主要是因?yàn)楹芏嗟膶傩圆僮骱妥儞Q都是對(duì)激活對(duì)象進(jìn)行操作的)

BlenderPython中bpy模塊有哪些

以上是“BlenderPython中bpy模塊有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


網(wǎng)站欄目:BlenderPython中bpy模塊有哪些
當(dāng)前鏈接:http://weahome.cn/article/jdgiid.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部