问题标签 [cartesian]

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 投票
6 回答
756 浏览

algorithm - 排列笛卡尔点的算法

我有几个笛卡尔点的形式: (x,y)
其中 x 和 y 都是非负整数。

例如
(0,0) , (1,1), (0,1)

我需要一种算法来安排上述点
,使从一个点到另一个点的
x 或 y 变化为 1。

换句话说,我想避免
对角线运动

因此,上述点将排列为:
(0,0),(0,1),(1,1)。

类似地,对于 (0,0),(1,1),(0,2)
,不可能有这样的安排。

我不知道该怎么称呼它,
但我会称之为曼哈顿订购

任何人都可以帮忙吗?

0 投票
2 回答
139 浏览

php - 如何在 R^2 中进行旋转?

我遇到了一个看似简单的数学问题:我需要在二维笛卡尔坐标系中旋转点,即我有一个由 (x/y) 给出的点和一个角度 gamma,我需要得到坐标这个点如果被伽马旋转......

示例:如果 x = 2 和 y = 0 且旋转角度为 90°,则结果点将是 x' = 0, y' = -2(顺时针旋转)

所以我在网上找到了这个公式(http://en.wikipedia.org/wiki/Rotation_matrix)并实现了一些代码来测试它:

虽然这对于 90/180/270 度的角度非常有效,但其他任何事情都会导致完全废话!

IE:

如果 x=1 且 y=1 且 gamma=45°,则结果点将恰好位于 x 轴上……好吧 - 上面的脚本将输出:

我理解错了吗?(学校对我来说已经很长时间了^^)我如何才能做到这一点?

0 投票
1 回答
997 浏览

c - 球坐标转换的疑惑

我正在尝试将球坐标(即来自 GPS 设备的纬度和经度)转换为笛卡尔坐标。我正在遵循从极坐标转换方程得出的这个简单转换。

然后我正在计算应用欧几里得距离的两点之间的距离,但我找到的值并不总是与我可以使用hasrsine formula计算的距离相同。特别是我注意到给定不同的经度但相同的纬度会导致两种算法计算出的距离相同,而具有相同的经度和改变纬度会带来不同的值。

这是我正在使用的 C 代码:

我是在做不正确的事情还是背后有一些我没有看到的数学(也许在 Mathoverflow 板上问这个?)。更新没有必要跨板,因为有人正确指出这种转换对于计算两点之间的确切距离没有意义(两极之间的距离为零)。所以我将其重新表述为:为什么在纬度的小三角洲(0.0001,相当于或多或少 10 米),距离似乎与半正弦公式(20-25%)如此不同?

更新 2: 正如 Oli Charlesworth 指出的那样,不考虑z axis这种转换会使这种转换成为不介意南北差异的投影。这也是我指出的增量差异的原因。事实上,在正确的变换中,z 与纬度有关,如果考虑它,然后计算两点之间的欧几里得距离(现在在 3d 空间中),纬度和经度都将导致对小增量的良好近似. 例如,对于纬度,误差约为 1.41 米。

0 投票
1 回答
445 浏览

iphone - iPhone坐标系斜截距两点

我在 UIView 中有 2 个点,但由于 UIView 坐标系不是笛卡尔坐标系,我无法在这两点之间获得正确的直线方程。当我应用直线的笛卡尔斜率时,我不断得到 UIView 坐标系的错误斜率。也许我错误地应用了单位矩阵或使用了错误的单位矩阵。我也需要翻译点斜式方程吗?我不确定。任何帮助将不胜感激。

0 投票
4 回答
984 浏览

lisp - 更通用的 lisp 代码来生成对的组合

鉴于下面这个可悲的事情,它会生成所有只有两个范围的对 -

或者,换句话说,这会生成某种二维离散布局。

我将如何构建某种具有任意数量范围的对生成代码?(或生成 n 维离散布局)。

显然,一种解决方案是defmacro采用一个列表列表并构建n 个循环来执行,但这并不是一个简单的方法。

0 投票
3 回答
5374 浏览

matlab - 在 MATLAB 中存储 XYZ 数据的最常规方法

我有大量数据要导入 MATLAB,代表笛卡尔空间中点的位置。以下哪一项是存储和处理标准 XYZ 数据的最常规方法?:

选项1

将 X、Y 和 Z 坐标存储为单独的 n * 1 个向量(可能在结构内?)。这使得:

  • 绘制简单:plot3(X, Y, Z)
  • 提取单个点稍微复杂一些N = [X(i), Y(i), Z(i)]
  • 将整个点集传递给函数会扩展要传递的不同参数的数量。

选项 #2

将 X、Y 和 Z 坐标存储为一个 n * 3 向量。

  • 绘图稍微困难一些:plot3(XYZ(:, 1), XYZ(:, 2), XYZ(:, 3))
  • 提取单个点更容易:N = XYZ(i, :)
  • 通过整套点很容易 - 只有一个变量

基于此,我怀疑第二个是更传统的。


但是,我要处理的一些数据更难,因为它是以网格形式读取的,其中网格的格式很重要。我的意思是,数据的原始形式是 * m * 3 矩阵,而不是 (n*m) * 3 矩阵。点 X(i, j) 与点 X(i, j+1) 相邻这一事实很重要。同样,提供了两个选项:

选项1

将每个 X、Y 和 Z 坐标存储为 n * m 矩阵。

选项 #2

将所有点存储为 n * m * 3 矩阵。

我宁愿在这里做第二个,但是有些选项,比如绘图变得很傻:

我觉得必须为此制定一个约定,尤其是在视觉和图形社区中。

0 投票
9 回答
47490 浏览

svg - 翻转svg坐标系

有没有办法翻转 SVG 坐标系,使 [0,0] 位于左下角而不是左上角?

0 投票
4 回答
1087 浏览

algorithm - 遥控车算法

我正在寻找一种算法,但我不知道从哪里开始!

我试图在笛卡尔图中从 A 点到 B 点。运动仅限于遥控车:后退、前进、左前和右前(恒定转弯半径;汽车要么完全转弯,要么根本不转弯)。

我将如何构造一个采用以下内容的算法:

并产生一组有序的步骤来到达 finalPosition?

请注意,我不在乎最终的方向是什么。

谢谢!


编辑: 请注意,这不是在具有离散节点的图中,而是在连续坐标系中

0 投票
1 回答
810 浏览

java - 是否有任何 Java 框架来操作/绘制笛卡尔平面?

我想知道是否有任何 Java 框架或资源来绘制和/或操作笛卡尔平面。显然,它可以只使用 Java 2d 来完成,但是实现一些资源,如“放大”和“缩小”并不是那么容易开发

非常感谢!

0 投票
1 回答
501 浏览

php - 如果斜率已知,则计算一条线上的点

尝试计算页面元素的左侧和顶部。

元素需要定位在一条假想线上,从页面窗口的 0,0 到距该线开头 425 像素的点(大致)。

线的斜率为 -.375。

如何使用 php 计算左侧和顶部?