问题标签 [coordinate-transformation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
672 浏览

matlab - tformfwd 和 tforminv - 有什么区别?

假设我有一个任意变换矩阵 A 例如,

以及一组点,它们的 x 和 y 坐标分别由X和表示Y

假设,

现在,

[Xff Yff]并且[Xfi Yfi]似乎完全一样(他们应该)。

只是tforminv为了方便还是我在这里遗漏了什么?

0 投票
2 回答
2840 浏览

svg - SVG绝对坐标?

我有一些 SVG 文件,其中包含许多文本节点。

我想在 SVG 文档中获取每个文本节点的绝对位置(SVG 文档的宽度 =“743.75”和高度 =“1052.5”)。

示例文本节点如下所示:

如何计算所有 matrix() 变换以得出每个文本框的正绝对 X 和 Y 值?是否有一个简单的递归函数可以使用并依次传入每个矩阵?

谢谢!

0 投票
2 回答
1414 浏览

flash - 在父级中获取坐标,但不在舞台上

我知道Flash的localToGlobal以及globalToLocal将坐标从本地系统转换为全局系统的方法,但是有没有办法实现中间系统?将坐标从任意系统转换到任何其他任意系统?

我在 Sprite 中有一个可点击的对象,而 Sprite 是舞台的子对象。我想检索 Sprite 中的点击点。

0 投票
3 回答
14780 浏览

algorithm - 二维坐标归一化

我需要实现一个标准化坐标的函数。我将规范化定义为(如果我错了,请提出更好的术语):

将数据集的条目从其自然范围映射到 0 到 1 之间的值。

现在这在一个维度上很容易:

我还需要一个 2D 版本,并且必须保持纵横比不变。但是我在计算数学时遇到了一些麻烦。

尽管发布的代码是用 C# 编写的,但答案不一定是。

提前致谢。:)

0 投票
2 回答
1299 浏览

math - 将坐标从一个扭曲的坐标系转换到另一个

这个问题最好用一个例子来解释:

http://dl.dropbox.com/u/1013446/distortedcoordinatespace.exe

将红色小方块拖放到右侧小方块内。它对应于左侧大四边形中的红色正方形。您还可以拖动左侧大四边形的 4 个角,以查看它如何占据正方形内空间的扭曲版本。

给定正方形 4 个点的绝对坐标和正方形内任意点的坐标,将点的坐标重新映射到任意四边形很简单。

我想要的是能够从任意四边形开始,并且能够做同样的事情,将四边形转换为任何其他 4 边形,但保持点的相对扭曲位置,

所以给定2个不规则四边形A和B中的每一个的4个绝对坐标,我如何转换点C的坐标给定它的绝对坐标?

也很有帮助,是我在这里缺少的关于这些转换的名称的任何术语,因为我想更多地研究它们

好的,我正在尝试实施 btilly 的解决方案,这就是我目前所拥有的:

在我从这里继续之前,我想确保到目前为止我是对的......

另外,这一段让我有点困惑:

好的,所以我们可以进行路径积分。那有什么价值呢?好吧,假设我们在我们区域的某个地方随机取一个点 z0 = x + iy。假设在路径上定义了 f(z)。然后柯西积分公式说,f(z)/(2 * π * i * (z - z0)) 的我们区域周围的积分(这是我们知道如何做的 4 个分段积分的总和)确实是很好的函数,它将与我们在边界上的原始函数相匹配。

该功能究竟做了什么?

0 投票
1 回答
526 浏览

java - 在处理中从相对空间转换到世界空间

在处理中将局部相对点转换为世界(屏幕)空间的好方法是什么?

例如,以Processing PDE 附带的植绒示例为例。我将如何在类中实现一个relativeToWorld方法和一个worldToRelative方法Boid。这些方法将考虑在该render方法中完成的所有转换。

我在想我想转换 PVector 对象,所以方法签名可能看起来像:

0 投票
1 回答
1388 浏览

java - OpenGL中的矩阵变换

我正在使用 OpenGL(来自LWJGL)在 Java 中构建一个 2D 物理引擎来显示对象。我遇到的问题是,我应用于框架的转换矩阵似乎以与它所说的不同的顺序被应用。

在 renderFrameObjects() 中,我应用旋转、平移、绘制对象(网格坐标相对于对象的 x、y)、反向平移和反向旋转。然而,当对象旋转(碰撞时)时,它产生的效果类似于应用平移然后旋转(即围绕半径上的点旋转)时的效果。在尝试了各种转换组合后,我似乎无法弄清楚这一点。

任何帮助,将不胜感激。

0 投票
2 回答
8111 浏览

android - 将 wgs 84 转换为纬度/经度

嗨,我在弄清楚如何在坐标类型之间进行转换时遇到了一些麻烦。我有一个带有以下描述的坐标集列表

“坐标始终在 WGS84 系统中。所有坐标 a 表示为整数值 x 和 y,其中坐标值乘以 1,000,000。”

一个例子:559262 6319512

好吧,我需要将这些转换为长/纬度(并返回),以便我可以在谷歌地图(android)中使用它们。但这并不像接缝那么容易。我一直在四处寻找,确实找到了一些代码来执行此操作,但它无法正常工作。谁能提供一些代码来做到这一点?如果可能的话,我想避免使用大型地理框架(它必须在 android 应用程序中使用)。

谢谢。

最好的问候,肯尼斯

编辑:我确实找到了自己的解决方案。我下载了这里描述的类:http: //www.ibm.com/developerworks/java/library/j-coordconvert/

它工作正常。希望有人能发现它有用。

我很抱歉在体面地完成作业之前发帖。感谢所有发帖的人

0 投票
3 回答
60706 浏览

java - 将经度/纬度转换为 X/Y 坐标

我使用 Google Maps API 创建了一张地图,突出显示了明尼苏达州的所有县。基本上,我使用一组经度/纬度坐标创建了县多边形。这是生成的地图的屏幕截图:-

在此处输入图像描述

用户要求之一是能够拥有与图像类似的地图,以便他们可以将其嵌入到他们的 PowerPoint/主题幻灯片中。我找不到任何有用的 Google Maps API 可以让我按原样保存我的自定义地图(如果你知道方法,请告诉我),所以我认为我应该用 Java 中的 Graphics2D 绘制它。

在阅读了将经度/纬度转换为 X/Y 坐标的公式后,我得到了以下代码:-

生成的地图与 Google Maps API 使用同一组经度/纬度生成的地图相似。但是,它似乎有点倾斜,看起来有点偏离,我不知道如何解决这个问题。

在此处输入图像描述

如何使县的形状看起来就像上面由 Google Maps API 生成的形状?

非常感谢。

最终解决方案

感谢@QuantumMechanic 和@Anon,我终于找到了解决方案。

墨卡托投影在这里确实起到了作用。我正在使用Java Map Projection Library来执行墨卡托投影的计算。

通过使用生成的 XY 坐标,地图看起来像是倒置的,那是因为我相信 graphics2D 的 0,0 从左上角开始。因此,我需要通过从图像高度中减去该值来反转 Y,如下所示:-

这是生成的地图:-

在此处输入图像描述

这十分完美!

更新 01-25-2013

这是基于宽度和高度(以像素为单位)创建图像映射的代码。在这种情况下,我不依赖 Java Map Project Library,而是提取了相关公式并将其嵌入到我的代码中。与上面依赖于任意缩放值的代码示例(上面的示例使用 6000)相比,这使您可以更好地控制地图生成。

结果:图像宽度 = 600 像素,图像高度 = 600 像素,图像填充 = 50 像素

在此处输入图像描述

结果:图像宽度 = 300 像素,图像高度 = 500 像素,图像填充 = 50 像素

在此处输入图像描述

0 投票
2 回答
1183 浏览

coordinate-systems - MGRS/USNG-检测区域变化

我正在为 javascript 编写一个坐标转换库(适用于 NodeJS 和浏览器 javascript)。我已经做了很多了。 如果您有兴趣,请查看它。我没有编写大部分代码,所以我不确定一切是如何工作的。

据我所知,MGRS/USNG 区域基本上被重命名为 UTM 区域,而这些区域又是根据纬度/经度定义的。

假设我有一个 MGRS 坐标并且我移动了某个位移。我可以准确地确定我是否在没有先转换为纬度/经度的情况下越过了区域边界吗?我知道如何在区域内移动时更新坐标,因为在区域内大多数东西都是正方形的。

有没有一种方法可以检测区域变化而无需转换为纬度/经度?

有没有任何语言的图书馆可以做到这一点?

现有代码需要纬度和经度,所以我想我可以转换为纬度/经度,应用转换,然后转换回 MGRS。如果我只想确定我所在的区域,这不会那么糟糕,然后我可以将其余的转换内容保留在 MGRS 中以保持精度。唯一的问题是,我想尽可能精确。

笔记:

我确实找到了这篇解释坐标转换的文章,但这并没有真正涵盖坐标转换。