Questions tagged «geometry»


2
如何有效地计算图形旋转?
我有一个通过字节矩阵(类似位图的矩阵)表示的图形。示例图显示在上Picture 1。 目的是找到给定图形的最佳旋转角度。当图形旋转最佳角度时,与X和Y轴平行并刻有图形的矩形的面积最小。 刻有图形的矩形在图片上显示为浅灰色。在中Picture 2,您可以看到图形的理想旋转方向为顺时针大约30度。 现在,我知道算法如何找到该角度,但是在我看来这是非常低效的。它是这样的: 循环从0到45度的角度。 对于当前角度,为每个图形点计算新的旋转位置 查找包含图形(最小和最大x,y)的矩形的边界,如果到目前为止最匹配,则对其进行注册 下一个角度 这是一种蛮力方法,对于小人物来说效果很好且相当快。但是,我需要处理包含多达1000万点的图形,并且算法变得缓慢。 什么是解决这个问题的好算法?

5
寻找最适合圈子的人
下面是一个示例图像,如果我在中间有一个白点,并且我想找到所有可能存在的红色圆圈,则该蓝色圆圈的位置可能最近(显然是我放置它的位置) 。如何找到该位置? 对我来说,性能并不是此应用程序的主要问题。

2
使用起点,距离和角度查找新坐标
好吧,说我有一个点坐标。 var coordinate = { x: 10, y: 20 }; 现在我也有距离和角度。 var distance = 20; var angle = 72; 我要解决的问题是,如果我想从起始坐标沿角度方向移动20个点,如何找到新坐标? 我知道答案涉及正弦/余弦之类的东西,因为我以前知道如何做到这一点,但此后我就忘记了公式。有人可以帮忙吗?

5
如何比较两条曲线的特征?
我需要比较两条曲线f(x)和g(x)。它们在相同的x范围内(例如-30到30)。f(x)可能会有一些尖锐的峰值或平滑的峰值和谷值。g(x)可能具有相同的峰和谷。如果是这样,我想衡量一下这些功能在没有视觉检查的情况下的重合程度。我试图通过以下方式解决此问题。 通过将每个数据点除以函数的总面积来归一化这两个函数。现在归一化函数的面积为1.0 在每个x处获得f(x)和g(x)中的最小值。这将给我一个新函数,基本上是f(x)和g(x)之间的重叠区域。 当我整合步骤2的结果函数时,我得到的总重叠面积超过1.0 但是,这不能告诉我峰谷是否重合。我不确定是否可以这样做,但是如果有人知道一种方法,我将不胜感激。 ==编辑==为了澄清起见,我包括了一张图片。 两条曲线(黑色和蓝色)之间的差异可能并不相同,但将具有互补的形状。 背景:函数是化合物的原子轨道的预计状态密度(PDOS)。所以我有s,p,d轨道的状态。我想确定材料是否具有sp,pd或dd杂交(轨道混合)。我仅有的数据是PDOS。如果说s轨道(函数f(x))的PDOS具有与p轨道(函数g(x))的PDOS的能量(x值)相同的峰和谷,则该材料中存在sp混合。
11 geometry 

1
图形程序员如何处理不更改图像的渲染顶点?
因此,标题有点尴尬。我将提供一些背景信息,然后提出我的问题。 背景:我是一名Web GIS应用程序开发人员,但在业余时间我一直在玩地图渲染和改进数据交换格式。我仅在2D空间中工作。 我遇到的一个有趣的问题是,当您以小比例绘制多边形(放大的出路)时,许多顶点是多余的。一个极端的情况是,您有一个具有500,000个顶点的多边形,仅占用一个像素。如果要将这些数据发送到浏览器,则可以忽略其中大约499,999个顶点。我们实现这一目标的一种方法是在服务器上渲染图像并将其作为PNG发送:瞧,这很重要。不过,有时我们还是希望将数据发送到浏览器,然后在其中可以使用SVG(或canvas或webgl)对其进行呈现,以便可以进行交互。 问题:事实证明,使用现代地理数据集,很容易使SVG的渲染功能超负荷。为了解决这些限制,我试图找出如何在视觉上无损地减少给定比例尺和地图范围(以及必要时已知地图像素的宽度和高度)的数据集。 仅使用Douglas-Peucker算法,我的数据量就大大减少了,我相信我能够将其保持在一个像素以内,使多边形真实。不幸的是,道格拉斯·皮克(Douglas-Peucker)没有保留拓扑,因此改变了多边形之间边界的渲染方式。我无法轻易找到其他算法来尝试并适应该目的,但是我没有太多的CS /算法背景,如果我看过它们,可能会认不出来。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.