VRML запустить скрипт - PullRequest
       20

VRML запустить скрипт

1 голос
/ 10 марта 2012

В данный момент я играю с VRML не честно, а ради проекта в Web 3D.

Я пытаюсь создать сенсорный датчик в VRML, который будет отображать и скрывать Div на веб-странице. Я пытался написать крошечный скрипт, используя

browser.loadURL ( 'JavaScript: SomeFunction ()');

чтобы попробовать и проверить это.

Javascript никогда не вызывается, однако я знаю, что мой сенсорный датчик в порядке, так как некоторые функции, которые я пытался использовать (например, если я пишу «браузер» неправильно), выдает ошибку.

Возможно, это просто не поддерживается современными браузерами?

Буду признателен за любую помощь и совет.

    DEF alertScript Script {
    eventIn SFTime make_alert
    url [ "javascript:
    function make_alert (value) {
      Browser.loadURL('javascript:alert()');
    }
    " ]
}


ROUTE touchBack.touchTime TO alertScript.make_alert

1 Ответ

1 голос
/ 11 марта 2012

Они хотят только классический VRML или X3D разрешен?(X3D - это название текущей версии VRML).

Если вам разрешено использовать X3D (я не понимаю, почему нет), вы можете использовать X3DOM , что *Движок 1005 * WebGL , вы можете даже получить дополнительные очки за свое задание:)


Вот пример, который скрывает div при нажатии на трехмерную сферу:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Touchsensor in X3DOM</title>

    <link href="x3dom.css" rel="stylesheet" />
    <style>
    #myDiv {
        color: blue;
        margin: 20px 0;
    }
    x3d {
        display: block;
        width: 600px;
        height: 400px;
        background: #EEEEEE;
        border: none;
    }
    </style>
</head>
<body>


    <div id="myDiv">
        Click the sphere to hide this div
    </div>

    <x3d>
        <Scene>
            <Shape id="mySphere">
                <Appearance>
                    <Material diffuseColor="0 1 0" />
                </Appearance>
                <Sphere/>
            </Shape>
        </Scene>
    </x3d>


    <script src="x3dom.js"></script>
    <script>
    (function() {

        document.getElementById('mySphere').onclick = function(){
            document.getElementById('myDiv').style.display = "none";
        };

    })();
    </script>


</body>
</html>

И, кстати, X3D является рекомендуемой 3D-технологией в спецификации HTML5, она вовсе не мертва: -)

...