【问题标题】:Can not read property 'position' undefined, get Coordinates - CustomTile - Openseadragon无法读取未定义的属性“位置”,获取坐标 - CustomTile - Openseadragon
【发布时间】:2015-01-02 08:26:20
【问题描述】:

我正在尝试使用以下代码获取坐标:如果我在画布上单击以获取 X 和 Y 位置:向我显示控制台错误:未捕获的 TypeError:无法读取未定义的属性“位置”

截图:http://screencast.com/t/0LHAae5AicRz

viewer.addHandler('canvas-click', function (target, info) {
            var viewportPoint = viewer.viewport.pointFromPixel(info.position);
            var imagePoint = viewer.viewport.viewportToImageCoordinates(viewportPoint.x, viewportPoint.y);
            console.log(imagePoint.x, imagePoint.y);
        });

【问题讨论】:

    标签: coordinates deepzoom seadragon openseadragon


    【解决方案1】:

    info 参数可能不是你想的那样。

    执行console.log(info) 以查看控制台中的变量是什么。

    也许您要查找的变量是另一个参数。

    同时记录传递给函数的所有参数。把这个写在函数里面:

    console.log(arguments)

    这样您就可以检查变量并找到您需要的数据。

    【讨论】:

    • console.log(info); ::-->“未定义”
    • 好的,参数呢?
    【解决方案2】:

    这样,我可以删除与画布点击相关的 - 未定义错误的位置:看看这里的答案:https://github.com/openseadragon/openseadragon/issues/318

    对于 //! OpenSeadragon 1.1.1,请更新代码如下。

    viewer.addHandler('canvas-click', function (event)
            {
                console.log(event);
                var viewportPoint = viewer.viewport.pointFromPixel(event.position);
                var imagePoint = viewer.viewport.viewportToImageCoordinates(viewportPoint.x, viewportPoint.y);
                console.log(imagePoint.x, imagePoint.y);
            });
    

    【讨论】:

      猜你喜欢
      • 2021-12-20
      • 1970-01-01
      • 2017-08-26
      • 1970-01-01
      • 1970-01-01
      • 2021-08-02
      • 1970-01-01
      • 2022-07-06
      • 2021-12-12
      相关资源
      最近更新 更多