明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

用PHP動態(tài)生成虛擬現(xiàn)實VRML頁面   

[摘要]多年前本人開始從事三維動畫方面的學習,后學習了PHP,發(fā)現(xiàn)可以通過PHP動態(tài)生成VRML文檔,有點類似于Generator動態(tài)生成Flash的方式。 由于VRML博大精深,這里只介紹一個簡單的例子,還可以將各種VRML結(jié)點存入數(shù)據(jù)庫中,這樣的虛擬現(xiàn)實網(wǎng)頁將……,爽! 下面是源程序。注意:在服務器上...
多年前本人開始從事三維動畫方面的學習,后學習了PHP,發(fā)現(xiàn)可以通過PHP動態(tài)生成VRML文檔,有點類似于Generator動態(tài)生成Flash的方式。
由于VRML博大精深,這里只介紹一個簡單的例子,還可以將各種VRML結(jié)點存入數(shù)據(jù)庫中,這樣的虛擬現(xiàn)實網(wǎng)頁將……,爽!
下面是源程序。注意:在服務器上,要將讓PHP處理wrl格式的文檔,否則后果將是沒有任何虛擬現(xiàn)實。本源程序直接存成wrl文件,在瀏覽器中要安裝插件,可以到我的另一個主頁上去下載:http://go.163.com/~sjtucaocao/

<?php header("Content-type: application/x-vrml");$txt="#VRML V2.0 utf8

DEF leftBox Transform
{
translation -5 0 0
children
[
Shape
{
appearance Appearance
{
material Material
{
diffuseColor 1 0 0
}
}
geometry Box{}
}
DEF SphereChild Shape
{
appearance Appearance
{
material Material
{
diffuseColor 1 0 1
}
}
geometry Sphere
{
radius 1.2
}
}
]
}

DEF rightBox Transform
{
translation 5 0 0
children
[
Shape
{
appearance Appearance
{
material Material
{
diffuseColor 0 0 1
}
}
geometry Box{}
}
]
}

DEF onoff Transform
{
translation 0 -1 0
children
[
Shape
{
appearance Appearance
{
material Material
{
diffuseColor 0 1 0
}
}
geometry Box{}
}
DEF TS TouchSensor{}
]
}

DEF S Script
{
eventIn SFBool isActive
eventOut MFNode child
field MFNode testNode USE SphereChild
url
"javascript:
function isActive(value)
{
if (value)
{
child=testNode;
}
}
"
}

ROUTE TS.isActive TO S.isActive
ROUTE S.child TO leftBox.removeChildren
ROUTE S.child TO rightBox.addChildren";echo $txt;
?>