亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        3DS MAX中數(shù)據(jù)導(dǎo)入導(dǎo)出問題研究

        2012-07-04 09:43:10
        制造業(yè)自動化 2012年15期
        關(guān)鍵詞:數(shù)據(jù)文件坐標(biāo)值插值

        許 偉

        (陜西教育學(xué)院 計算機科學(xué)與技術(shù)系,西安 710100)

        0 引言

        3DS Max是美國Autodesk公司開發(fā)的三維動畫制作和渲染的軟件,它廣泛應(yīng)用于廣告、影視、工業(yè)設(shè)計、建筑設(shè)計、多媒體制作、游戲、輔助教學(xué)以及工程可視化等領(lǐng)域。但它不能解決用戶應(yīng)用的各個方面。軟件中場景對象數(shù)據(jù)捕獲與數(shù)據(jù)導(dǎo)入導(dǎo)出,就需要使用者自行設(shè)計開發(fā)。一般動畫設(shè)計者對計算機軟件了解甚少,不具備自主開發(fā)能力,而計算機軟件開發(fā)者對動畫設(shè)計和制作以及動畫制作軟件環(huán)境缺乏足夠的認(rèn)識與相關(guān)專業(yè)知識,因此很難開發(fā)出符合要求的應(yīng)用模塊來。本文將動畫制作中所涉及到的3DS MAX中數(shù)據(jù)導(dǎo)入導(dǎo)出應(yīng)對策略推介如下。

        1 從外部導(dǎo)入相關(guān)數(shù)據(jù)生成動畫

        在實際操作中,有時需要使用客戶提供的數(shù)據(jù)產(chǎn)生特定的動畫效果。應(yīng)用MAXScript可導(dǎo)入外部數(shù)據(jù),這些外部數(shù)據(jù)可以是文本文件、word文件或Excel文件形式,利用這些數(shù)據(jù)可以精確地在3DS MAX中創(chuàng)建模型或生成動畫,這種應(yīng)用在實際工作中非常常見。

        在實際應(yīng)用中筆者遇到用戶提供的CSV數(shù)據(jù)文件,要求根據(jù)文件中提供的數(shù)據(jù)創(chuàng)建特定運動軌跡的動畫。CSV一種純文本格式,數(shù)據(jù)的字段由逗號分開,程序通過讀取文件重新創(chuàng)建正確的字段,方法是每次遇到逗號時開始新一段數(shù)據(jù)。圖1為CSV的一個簡單數(shù)據(jù)文件。其中每行提

        供了四個數(shù)據(jù),每個數(shù)據(jù)之間用逗號分隔開。第一個數(shù)據(jù)為動畫產(chǎn)生的時間,第二個至第四個為Point3數(shù)據(jù)類型即[x,y,z] 形式的坐標(biāo)值,下列提供的MAXScript腳本讀取這個文件的數(shù)據(jù),并按照數(shù)據(jù)文件的要求創(chuàng)建一個動畫,生成的動畫效果為物體作圓周運動。

        圖1 CSV數(shù)據(jù)文件樣式

        (

        local theFilename = getOpenFileName types:"按列分隔的值 (*.CSV)|*.CSV|All Files (*.*)|*.*"

        if theFilename != undef i ned do (

        local theFile = openFile theFilename – 打開文件

        local theObject = Sphere radius:5 showtrajectory:true

        while not eof theFile do ( --循環(huán)直到數(shù)據(jù)讀完

        theTime = fl oor ((readValue theFile) + 0.5)--返回小于或者等于指定表達式的最大整數(shù)

        with animate on

        at time theTime

        theObject.pos = Point3(readValue theFile) (readValue theFile) (readValue theFile)

        )

        close theFile --關(guān)閉文件

        ))

        2 將3DS MAX場景中的物體的相關(guān)參數(shù)輸出為數(shù)據(jù)文件

        有時需要將3DS MAX場景中的物體自身構(gòu)成坐標(biāo)參數(shù)或運動物體的動畫參數(shù)輸出成特定格式的文件,以便對這些參數(shù)數(shù)據(jù)比對和分析,然后制定出最佳的匹配方案,這些應(yīng)用都需要軟件使用者自行開發(fā)。例如,下列腳本中使用getVert命令可獲取場景中所有三維物體的每個被索引頂點所構(gòu)成的頂點坐標(biāo)值并將其按照point3數(shù)據(jù)類型輸出為數(shù)據(jù)文件。

        圖2 將對象構(gòu)成頂點坐標(biāo)值輸出為CSV數(shù)據(jù)文件

        -- 創(chuàng)建輸出文件

        exFile = openFile "C:\exportData.txt" mode:"w"

        -- 采集場景中的全部三維物體

        for obj in geometry do (

        -- Write name of object

        format "對象名稱 ("%"); 對象頂點總數(shù):% "obj.name obj.mesh.numverts to:exFile

        -- Write vert positions of object

        for i in 1 to obj.mesh.numverts do (

        vertPos = getVert obj.mesh i

        format "頂 點 編 號:%; 頂 點 坐 標(biāo)值 :(%,%,%) " i vertPos.x vertPos.y vertPos.z to:exFile

        ))

        -- 關(guān)閉輸出文件

        close exFile

        可以將場景中二維形狀即曲線對象按照指定的采樣插值精度求出曲線的插值點的世界坐標(biāo)值并將其存儲為特定格式的文本文件。3DS MAX中針對曲線有兩種方法在曲線上進行插值定位計算,一種是頂點插值,另一種是長度插值。當(dāng)使用頂點插值(又名路徑插補),樣條線被視為若干段,其中每兩個頂點之間的部分是一個規(guī)范化的空間從0.0到1.0。插值過程中忽略段的兩個頂點之間的距離,這意味著,如果該段的長度是不同的,沿樣條線的線性插值會導(dǎo)致物體沿曲線運動是非勻速的。當(dāng)使用長度插補,整個曲線的長度會被單位化,所以參數(shù)是0.5就是樣條曲線的中間位置而并不考慮曲線的實際長度。使用0.0和1.0的單位化線性變化關(guān)系,會使物體沿此曲線運動勻速動畫速度。3DS MAX中通過 interpCurve3D腳本命令來獲取插值值。例如,運行下列腳本將場景中繪制的世界地圖曲線按照5%的采樣精度,求出其插值點的世界坐標(biāo)值,如圖3所示。

        -- Create export fi le

        expFile = openFile "C:\exportData.txt" mode:"w"

        -- Loop through geometry in the scene

        for obj in shapes do

        (

        -- Write name of object

        format "曲線的名稱:("%") " obj.name to:expFile

        -- Write vert positions of object

        if (isKindOf obj SplineShape) then

        (

        for i = 0.0 to 1.0 by .05 do --在曲線上獲取20個采樣位置的坐標(biāo)值。

        (

        vert = interpCurve3D obj 1 i

        format "采樣點坐標(biāo)值:(%,%), "vert.x vert.z to:expFile

        ) )

        else

        format "它是非 splineshape 對象。 "to:expFile

        )

        圖3 世界地圖曲線按5%采樣精度取得的插值點坐標(biāo)

        close expFile -- Close export fi le

        3 結(jié)束語

        在現(xiàn)實中很多應(yīng)用都具有針對性,其指向非常具體,不可能以一概全。作為一個優(yōu)秀的動畫化設(shè)計制作者,不但應(yīng)具備嫻熟的藝術(shù)創(chuàng)作技藝功底,而且也應(yīng)具備軟件開發(fā)知識,若具有一定的開發(fā)能力便會進一步提高技能激發(fā)創(chuàng)造力,就能將用戶提供的精確數(shù)據(jù)直接應(yīng)用于計算機動畫中的具體對象,從而產(chǎn)生精準(zhǔn)的動畫效果,計算機動畫是藝術(shù)與技術(shù)的巧妙結(jié)合。

        [1] http://mathworld.wolfram.com/

        [2] 3DS MAX 2011 MAXScript Reference (軟件所帶的腳本用戶手冊).

        [3] 王華.3ds MAXScript 腳本語言完全學(xué)習(xí)手冊[J].兵器工業(yè)出版社, 2006.

        [4] Fletcher Dunn Lan Parberry, 著.史銀雪.等譯.3D 數(shù)學(xué)基礎(chǔ):圖形與游戲開發(fā)(美)[M]. 清華大學(xué)出版社.

        [5] John Vince.Mathematics for Computer Graphics.Second Edition[M].Springer Science+Business Media.

        猜你喜歡
        數(shù)據(jù)文件坐標(biāo)值插值
        麥弗遜懸架主銷軸線對半軸滑移的影響
        北京汽車(2023年1期)2023-03-03 00:50:38
        基于Sinc插值與相關(guān)譜的縱橫波速度比掃描方法
        基于二分法迭代的凸模數(shù)控銑削加工編程*
        數(shù)據(jù)文件恢復(fù)專題問答
        數(shù)據(jù)文件安全管控技術(shù)的研究與實現(xiàn)
        SQL數(shù)據(jù)文件恢復(fù)工具
        一種改進FFT多譜線插值諧波分析方法
        基于四項最低旁瓣Nuttall窗的插值FFT諧波分析
        Blackman-Harris窗的插值FFT諧波分析與應(yīng)用
        Tekla Structure數(shù)據(jù)文件交互格式分析
        内射少妇36p九色| 国产女同va一区二区三区| 东北少妇不戴套对白第一次| 曰批免费视频播放免费直播| 亚洲人成精品久久久久| av天堂手机在线免费| 亚洲黄片av在线播放| 少妇仑乱a毛片| 欧美极品第一页| 日韩人妻av不卡一区二区三区 | 久久久精品国产亚洲AV蜜| 亚洲国产av中文字幕| 亚洲精品国产电影| 欧美亚洲国产片在线播放| 亚洲区偷拍自拍29p| 色噜噜亚洲精品中文字幕| 国产综合色在线精品| 精品人妻无码一区二区色欲产成人| 777久久| 干出白浆视频在线观看| 国产精品久久久久精品一区二区| 亚洲妓女综合网99| 女优免费中文字幕在线| 国产一区二区三区内射| 亚洲av蜜桃永久无码精品| 中文字幕不卡高清免费| 中文字幕精品一区二区三区av| 国产精品二区一区二区aⅴ污介绍| 久久午夜伦鲁片免费无码| 国产女人体一区二区三区| 第一九区另类中文字幕| 三年片大全在线观看免费观看大全| 国产污污视频| 日本一区二区三区精品不卡| 日本污ww视频网站| 男女18禁啪啪无遮挡| 国产三级黄色片子看曰逼大片| 精品女同一区二区三区免费战| 国产成人无码一区二区在线播放 | 亚洲乱码av一区二区蜜桃av | 色婷婷亚洲精品综合影院|