繁体   English   中英

Autodesk Forge Markup扩展标记位置与xyz值不匹配

[英]Autodesk forge Markup extension markers position not matching x y z values

我正在使用可在https://github.com/wallabyway/markupExt上找到的标记扩展名,并且没有更改扩展名内的代码,只是将this.size设置为更大的值以使标记更易于查找

点的实际渲染效果很好,我似乎无法将它们放置在模型上的特定位置,它们只是漂浮在空白区域的中间。

代码生成点

var dummyData = [];

    dummyData.push({
        icon: Math.round(Math.random() * 3),
        x: 129597.054373,
        y: -27184.841094,
        z: 44514.362733
    });

    window.dispatchEvent(new CustomEvent('newData', { 'detail': dummyData }));

我尝试提供直接从选定项属性中获取的值,并且还尝试提供其从以下代码中获取的值(我尝试过使用和不使用标称化步骤)

function onMouseClick(event) {
var screenPoint = {
    x: event.clientX,
    y: event.clientY
};

var n = normalizeCoords(screenPoint)


var hitTest = viewer.impl.hitTest(n.x, n.y, true);

if (hitTest) {

    alert(hitTest.intersectPoint.x + ' ' + ' ' + hitTest.intersectPoint.y + ' ' + hitTest.intersectPoint.z)

    }
}


function normalizeCoords(screenPoint) {

var viewport = viewer.navigation.getScreenViewport();

var n = {
    x: (screenPoint.x - viewport.left) / viewport.width,
    y: (screenPoint.y - viewport.top) / viewport.height
};

return n;
}

当我更改xyz值但从未到达我想要的位置并且不确定我要去哪里时,重点就转移了

而不是在其他使用视口来扩展点的扩展中找到的代码,我似乎已经通过将viewer.model.getData().globalOffset添加到命中测试交叉点值来解决了这个问题

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM