【问题标题】:Incorrect conversion of image coordinates to viewport coordinates - openseadragon svgOverlay图像坐标到视口坐标的错误转换 - openseadragon svgOverlay
【发布时间】:2023-04-04 23:45:01
【问题描述】:

我正在尝试从文件中加载点(图像坐标)并使用 svg-overlay 将其显示在 openseadragon 上。使用 imageToViewportCoordinates 将点转换为视口坐标,但它们看起来定位不正确。 我正在使用滑块将不同的图像显示到查看器中,并为每个图像显示一些点。对于某些图像,这些点已正确标记。我只是在开头创建了一个叠加层,在滑块更改事件中清除与图像对应的元素和设置点。

是否有可能使用单个叠加层导致问题?我是否必须设置任何偏移量或对 svg 元素进行额外的转换。

Markers from Matlab plot and Openseadragon.

【问题讨论】:

  • 查看器中是单张图像还是多张图像?如果有多个,则需要使用 TiledImage 中的 imageToViewportCoordinates,而不是 Viewport 中的那个。

标签: javascript openseadragon


【解决方案1】:

滑块改变事件中图片对应的设置点

也许等到查看器打开事件会更好,因为在使用转换函数之前会设置图像尺寸属性

【讨论】:

  • 这是我设置数据的方式: $.ajax({ url: "/images//get_slice?slice="+ref_slice_num.toString() }) .done(function(data){ viewer.open('/'+data.dzi_url); }); setResults(ref_slice_num);您的意思是在查看器打开事件后创建叠加层吗?
  • @db20 是的,我的意思是在查看器打开事件的处理程序中或之后。我的理由是当你打开一个新图像时它是异步的,所以如果你开始调用依赖图像数据的方法,在数据可用之前它们可能不准确
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-21
  • 1970-01-01
  • 2013-08-05
  • 1970-01-01
  • 1970-01-01
  • 2012-01-22
  • 2018-07-03
相关资源
最近更新 更多