【问题标题】:How can I add inputs (textbox, slider etc.) into autodesk forge viewer如何将输入(文本框、滑块等)添加到 Autodesk Forge 查看器
【发布时间】:2021-05-29 14:58:43
【问题描述】:

我们可以使用transform tool 移动对象。我想在输入中显示所选对象的当前 x、y、z 坐标并从那里更改。但我无法添加任何输入。我找到了examples,但找不到源代码。

【问题讨论】:

    标签: autodesk-forge autodesk-viewer autodesk


    【解决方案1】:

    你可以找到源代码here

    这是我同事关于creating component transformations in forge viewer 的博客的一部分。

    【讨论】:

    • 我以前见过这个。这里没有 UI 部分。通过任何输入动态更改我尝试执行的所选对象的位置信息
    【解决方案2】:

    我将我想要的输入放在 html 中。在运动函数内部,我根据它们收到的值动态更新它们。

    <!--TRANSFORM DIV- index.html-->
    <div id="MyControls" class="adsk control">
        <label>X</label>
        <input id="XAxis" type="text" />
        <label>Y</label>
        <input id="YAxis" type="text" />
        <label>Z</label>
        <input id="ZAxis" type="text" />
    </div>
    
    
    // transform.js
     var AxisArray = ["XAxis", "YAxis", "ZAxis"];
    
        AxisArray.forEach(function (axis) {
            document.getElementById(axis).addEventListener("change", function () {
                positionChangeInputs();
            });
        });
    
    
        function positionChangeInputs() {
            
            for (var fragId in _selectedFragProxyMap) {
    
                var fragProxy = _selectedFragProxyMap[fragId];
    
                var position = new THREE.Vector3(
                    fragProxy.position.x = document.getElementById("XAxis").value,
                    fragProxy.position.y = document.getElementById("YAxis").value,
                    fragProxy.position.z = document.getElementById("ZAxis").value);
    
                fragProxy.position = position;
    
                fragProxy.updateAnimTransform();
            }
    
            viewer.impl.sceneUpdated(true);
           
            
        }
    

    【讨论】:

      猜你喜欢
      • 2021-02-08
      • 2020-10-04
      • 2020-12-28
      • 2021-11-26
      • 2021-11-12
      • 1970-01-01
      • 2017-12-30
      • 1970-01-01
      • 2021-09-19
      相关资源
      最近更新 更多