Geometry 连接两条线段

给定两条二维线段A和B,如何计算连接A和B的最短二维线段C的长度?包含您可能要查找的信息。论文(算法和Pascal代码): 快速提示:如果要基于点比较距离,则无需进行平方根运算 例如,要查看p-to-Q是否比Q-to-R小,只需检查(伪码): square(P.x-Q.x)+square(P.y-Q.y) >,在这两种方法中,可以使用这两种方法来检查线段交会,在使用寿命描述(参考链接)。< P>使用上面的一般思想和算法,这里是C++版本的一组方法,以获得2个任意2D段之间的最小距离。这将处理重叠

Geometry 计算垂直于直线的点的坐标,计算给定两点和角度的角度中第三点的坐标

实际上我有两个问题,我找到了第二个问题的答案,但没有更新图表。我不确定这些是否可行,它们真的让我很困惑 问题1: 给定点A和e,线A的角度相对于x轴,其中0很容易理解向量。了解二维向量的工作原理,您将获得它。这就是你要学的课程吗 从e到A取单位向量,知道单位向量的长度为1。假设L1=席+yJ。垂直向量具有与l1相反的分量,其中一个符号发生了变化。在本例中,l2=-yi+xj 取从第一个问题得到的向量l2,并按如下方式进行变换: cx=-cos(t)y-sin(t)x cy=+sin(t)y+co

Geometry 学习分形编程的好入门书

学习分形编程的好书是什么?我是一名程序员,我正在看一本算法性强于数学性的书(至少不是在开头几章)。应该教我分形的基础知识和生成分形的不同方法。在尝试学习Mandelbrot集时,我发现这个链接很有用。 如果你能找到“”,你就可以得到更多的东西。现在这是一本旧书(我在1988年第一次出版时读过),但里面有很多零碎的东西需要尝试。一个“黄金老歌”网站是Fractint:。Fractint已有20年的历史,在协作计算领域开创了一些风气。提高精度所需的一些算法并不简单,该小组开发了整数算法来支持分形 如

Geometry 遍历由连接三角形组成的多边形的边界点

我有一个由连接的三角形组成的二维多边形网格,如下所示: 顶点数组:V=A,B,C,D,E,… 索引数组,按逆时针顺序将三角形顶点索引分成3组:I=0,4,3, … (例如,V[0]、V[4]、V[3]这是A-e-D形成的三角形) 示例网格 现在我想以逆时针顺序遍历边界点,起始顶点无关紧要: G、H、A、D、C、F 原因是我想计算动态2D阴影,如本文所述: 最好的方法是什么?我考虑过计算凸包,但这似乎太昂贵了,因为它没有使用三角形顶点索引,必须有更好的方法 有没有一种方法可以让它在一个表示中

Geometry 求贝塞尔曲线的顶点

我在flex中工作,尽管我认为这是一个与语言无关的问题。我试图用3个点绘制一条曲线,使用curveTo(一个二次贝塞尔函数,我不相信Flex还有其他函数,如果有,请纠正我!)点1和3是“节点”,点2是一个拖动手柄 我想要的不是直线向点2弯曲,而是事实上通过它。我通过侥幸成功地将(点1和点3之间的直线中点之间的距离)和点2的距离增加了一倍 这并没有把它放在这条线的顶端,只是放在靠近它的地方 有人有什么想法吗 Andrew使用以下公式计算二次贝塞尔曲线 B(t) = (1-t)(1-t)*P0 +

Geometry 从点查找圆中最远的点

我试图找到从2D空间中的指定点获取圆的最远点的最佳方法。到目前为止,我发现的是如何得到点和圆位置之间的距离,但我不完全确定如何展开它来找到圆的最远点 已知变量为: a点 点b(圆位置) 半径r(圆半径) 为了找到点和圆位置之间的距离,我发现: xd=x2-x1 yd=y2-y1 距离=平方根(xd*xd+yd*yd) 在我看来,这是解决方案的一部分。如何将其展开以获得下图中点x的位置 作为问题的另一个可选部分:我在一些地方读到,不使用平方根就可以得到距离部分,这是非常高性能的,如果需要快速

Geometry 同心圆上的径向渐变颜色效果

如何使用html5画布在5个同心圆上应用渐变色 gradient = context.createRadialGradient(startx, starty,radAvg, xEnd, yEnd,radAvg); gradient.addColorStop(0, startColor); gradient.addColorStop(1.0, endColor); 当前结果: var colors = ["#B8D430", "#3AB745", "#029990", "

Geometry “多边形是怎样的?”;袖子“;如何计算?

当多边形旋转时,它将跳过当前和所需情况之间的所有可能旋转。这里有3张图片说明了我的意思: 这是当前多边形: 将其旋转45度(顺时针方向)将导致: 当前多边形沿顺时针方向旋转45度,所有可能的情况都介于两者之间,将导致: 这些“袖子”(在两种情况之间)是如何实际调用的,这些“完整多边形”是如何根据当前多边形和所需旋转角度计算/近似的?在CAD行业中,我们将此操作称为二维扫描,或二维平面扫描;在本例中,为二维平面旋转扫掠。(不要与a混淆。)生成的区域将是二维扫描区域或二维扫描面,轮廓称为二维扫

Geometry 使用从VCG旋转的球的结果不正确

在使用meshlab应用程序时,我能够使用球体旋转算法创建网格,半径为3.1952,聚类为0.2。结果是好的 但当我调用相同的方法时,使用库给出相同的半径值并进行聚类,输出网格是不完整的 下面是我们刚刚用顶点填充网格数据结构并调用api的示例。请建议任何修改 我的PFA图像:

Geometry B代表的数量?

我想知道如何计算由边界表示(B-Rep)表示的实体对象的体积?有什么提示吗?提前感谢您可以使用高斯定理将体积积分转化为曲面积分。你可能还记得微积分。这基本上是相同的想法。如果您可以将B-Rep转换为一组平面多边形,那么评估就相当容易了。你可以找到一些细节和建议 如果你的曲面是非流形的,那么这个问题就不会很好地解决,但是在这种情况下,问题并没有很好地定义。你可以使用高斯定理将体积积分转化为曲面积分。你可能还记得微积分。这基本上是相同的想法。如果您可以将B-Rep转换为一组平面多边形,那么评估就相当

Geometry 二维中三角形与点之间的距离

我试图计算点和三角形之间的最短距离 我试了以下方法, 1.计算三角形的质心。 2.在质心和点之间形成一条线。 3.找出三角形的哪一边与上面形成的线相交。 4.求出该点与步骤(3)中求出的相交线之间的垂直距离 我做错什么了吗?有人能帮我保持距离吗?这与编程无关。

Geometry 卡夫CSG图书馆

是否有人成功编译并使用了Carve CSG库?我正试图在一个项目中使用它,但我还没能让它发挥作用。而且,文档非常糟糕。我一直在寻找搅拌机的来源,它似乎成功地使用雕刻,但我一直有困难复制它 下面是我一直尝试使用的代码,只是为了创建一个立方体来与Carve一起使用: std::vector<carve::geom3d::Vector> vertices; vertices.push_back(carve::geom::VECTOR(+1.0, +1.0, +1.0)); vertice

Geometry 适用于更大线路的新型跳线

我有一个类表示二维空间上的线: class Line { Point start; Point end; Float length; // calculated property, something like sqrt(pow(end.x - start.x, 2) + pow(end.y - start.y, 2)) } 我想要一种方法,使线从中心变大 例如,如果我创建一些与X平行的图形: Point start = Point(1, 3) Point end = Po

Geometry 确定圆弧是表示反射角还是锐角

我有一个看似简单但非常令人困惑的问题 假设我有一组顶点(x1,y1),(x2,y2),(x3,y3)。。。。。。表示弧的。这些点可以是顺时针或逆时针方向,但顺序都类似。 我知道弧的中心(xc,yc) 我如何判断圆弧是否对锐角/钝角或反射角 一个明显的解决方案是取atan2((最后一个)-(中心))和atan2((第一个)-(中心))的差。但是,如果圆弧经过圆周率变为-PI的点,这种方法就失败了 此外,由于弧点是从一个相当嘈杂的像素图片中导出的,因此顶点并不完全平滑 我无法专心解决这个问题 谢谢

Geometry 使用空间索引获取空间中最近的几何体

我想使用SpatialSQL查询获得Spatialite中距离给定点最近的特征。我想使用索引表来加速它。空间索引边界应从定义点和给定公差开始计算,查询中应使用全部/部分位于rtree边界框内的所有特征 我尝试过几种方法,但我总是遇到空间索引边界的问题 像这样: 选择*,距离GeomfromText'POINT19.02658 47.51574',mo__________________________________________________________________________

Geometry 如何将多边形划分为支路区域?

我有一个多边形和表示承重梁的线穿过该多边形。如何将多边形划分为每个梁负责的分支区域 编辑:支流区域是将其荷载转移到特定支承图元的区域。支流区域通常代表支撑元件周围到下一个支撑元件的一半区域。例如,如果两个柱相距8英尺,则4英尺将其荷载转移到一个柱上,另4英尺转移到另一个柱上 编辑2:在下图中,可以看到柱支撑的梁。此外,您还可以看到标记支流区域的红线,这些支流区域位于边和梁之间的中间 没有插图,你的问题有点难理解。通常,如果要细分多边形,可能需要检查多边形扫描算法。请尝试以下链接: 我觉得你似乎

Geometry 从一组点开始具有顶点的多边形

如何从给定的点集生成多边形 可能的多边形: 无效多边形: 多边形不得自相交 我一直在考虑根据一个点对点进行排序,但在某些情况下它似乎是无效的。 谢谢。也许吧,所以: 求给定点的凸壳H 对于不在外壳中的每个点P,找到外壳的最近边HiHi+1,并将其替换为边HiP和PHi+1 如果两个点具有相同的最近边,则将它们绑在一起

Geometry 各点之间必须保持一定距离的最佳位置

我有几个点要放在二维平面上 我的问题是,每个点都有一个特定的距离,它必须放置在其他点之间。我想知道是否有人知道如何为所有这些点设计出满足距离要求的功能布局 (例如,点a、点b和点c.a与b的距离必须为2,与c的距离必须为3,且b和c的距离必须为4) 写下这些,我意识到一定有一些不可能的变化。但是,距离不是一成不变的,可能会略有变化。此解决方案可能有些过分,但它会很好地工作(另外,它很酷): 从粒子模拟的角度考虑问题:将点(以下称为粒子)随机放置到二维平面上,然后执行质点弹簧模拟以在平面中规则分布

Geometry 给定两个坐标,求直线与x轴的角度

我有一条线的坐标。它们的形式是x,y。我需要找到这条线与x轴的夹角。这两个点都可以由用户在我的应用程序中编辑,因此我不能将其中一个点作为旋转中心。我试过这个: theta = tan-inv((y2 - y1)/(x2 - x1)) 右点为X2,Y2,左点为X1,Y1。但是我没有得到正确的值。此外,我需要转换返回的值,以便在画布上应用它(在0-360之间) 注意:无论何时何地需要,我都会将这些值转换为度/弧度 我附上了一张图片,应该可以更详细地解释我在尝试什么 这个表达式 (y2 - y1/x

Geometry 计算平分线段坐标

我认为有一个非常简单的答案,但我找不到。我的几何课离这太远了。问题是: 给定2个点A和B(坐标Ax Ay Bx和By),我想找到点C和D的坐标,这样[AB]和[CD]段在其中心相交,[CD]的长度为D(一个变量)。 我想从Ax,Ay,Bx,By和d中找到方程Cx,Cy,Dx和Dy。 下面是问题的一个小模式: 以及预期结果的图像: 我已经知道如何找到[AB](Ax+Bx/2,Ay+By/2)的中心点,如何找到[AB]段的斜率(By Ay/Bx Ax),然后找到[CD]段中的一个(Ax-Bx/B

Geometry 给定一个多边形的点列表,如何找出哪些点是凹角的一部分?

我有一个连续点的列表,我需要找到一个较大的多边形的坐标。如果新多边形具有凸角,我可以计算其中的每个点,但我不确定如何调整角度为凹角。凹角的处理方式与凸角的处理方式完全相同:对于每个顶点,生成与两个原始线段平行但偏移值的直线。然后将顶点替换为这两条线的交点 困难在于,如果原始多边形具有一个或多个凹角,则生成的多边形可能具有交点。处理这些交叉口有不同的方法。通常,它们可以生成内部轮廓(多边形中的孔),但您可能只对外部轮廓感兴趣 无论如何,你必须先找到交点。如果你没有找到,你就完了 否则,找到一个起点

Geometry 重叠和对齐三维三角形时出现问题

我正试图叠加两个3D三角形来解决一个分子建模问题。这似乎很简单。我将每个三角形的第一个点转换为原点0,0,0。然后我计算了我必须绕z轴旋转的角度,以便将第二个点放在x轴上。使用Rz(θ)的x,y,z公式,这将是y=0时的角度, y=xsin(θ)+ycos(θ)=0,并重新排列,tan(θ)=-y/x 角度应为arctan(-y/x)。但是,将该角度值插回上述原始方程中不会得到零,除非x=y,且切线为一。看起来像是简单的代数-为什么这不起作用? 谢谢您的帮助。其他评论表明,您很可能对投影和测角术

Geometry 计算移动圆与矩形接触时的位置 我有以下情况: 一个圆向一个不移动的矩形直线移动。有没有一种有效的方法来计算圆与矩形接触时的位置?

我需要这个来处理碰撞。如果移动会导致相交,则圆应尽可能靠近矩形移动,而不是仅仅停止移动。我能够解决一个圆向另一个圆移动的问题,因为你可以用移动方程加上半径。但是对于矩形,我目前不知道如何(有效地)计算它,而不沿着圆的路径进行二元搜索。要解决这个问题,可以想象,当矩形膨胀并变成圆角矩形时,圆收缩到一个点。现在你必须将中心的轨迹与该形状相交 现在,您需要检查光线是否与膨胀矩形的直边相交(这很容易,检查端点是否在两侧),或者是否与拐角处的一条圆弧相交(这不太容易:通过使用光线的参数方程和圆的隐式方程

Geometry 将相邻矩形合并为多边形的算法

我想我的问题与“凸包”有关,但不是同一个问题。图形中的所有形状都是宽度和高度相同的矩形。许多是相邻的。我想把这些相邻的矩形合并成多边形。与“凸包”不同,生成的多边形内部可能是“空心”的 有没有开源算法可用?我会研究类似的东西。基本上,您正在执行并集(或)多边形操作。事实上,它们都是矩形,这使得数学计算变得简单了一点,但它可以很容易地用GPC之类的东西来完成 那里也有很多语言的语言包装器。只需测试矩形是否接触,然后在其点的并集上运行凸包 或者,您也可以手动测试矩形的哪一侧正在接触,并以正确的顺序将

Geometry 三点贝塞尔曲线

为了找到解决方案,我读过类似的主题,但没有成功。 我想做的是让这个工具和CorelDraw中的一样,叫做钢笔工具。我通过连接Bezier三次曲线实现了这一点,但仍然缺少一个功能,即拖动曲线而不是控制点以编辑其形状 我可以成功地确定曲线上开始拖动的t参数,但不知道如何重新计算该曲线的控制点 在这里,我想强调一些与CorelDraws PenTool行为有关的东西,这些行为可能被用作Constant。我注意到,当严格垂直或水平拖动曲线时,贝塞尔曲线的控制点会相应地动作,即它们分别在其垂直或水平方向上

Geometry 如何将凸多边形分割为给定比例的两个区域?

给定一个凸多边形p和p边界上的一个点a,我如何计算p边界上的一个点B,使得AB将p分成两个给定比例的区域 理想情况下,我想要一个解析解。作为最后的手段,我可以在多边形的任何地方画一条线,然后逐渐移动它,直到比例正确到给定的精度 一旦我知道了B应该在多边形上的哪两点之间,我就知道了如何计算B。因此,如果有一种方法可以找出它应该在哪两个点之间移动,我应该能够从那里开始 将多边形从点A拆分为三角形,并计算其面积。然后,可以根据三角形的比例将三角形从每一端添加到每个多边形,直到只剩下一个三角形为止。然后

Geometry 给定一组任意点,如何确定包含这些点的地理围栏?

给定的点集是任意的,而不是常数,给定这组点,我需要确定接近度,这最好会导致贝塞尔多边形 我的接近理论是找到最北边的点,找到最靠近东边和南边的点,然后再向西移动。我认为你所寻求的概念是什么? 有很多算法可以计算它,例如,美丽的格雷厄姆扫描,你可以找到它的代码 在 当基础几何体为非欧几里德几何体时,查找一组点的凸包是否有问题?在OP的例子中,点位于球体的表面上,因此在当前外壳曲面中包含/排除点的算法需要考虑到这一点。@Hooked:我甚至没有意识到他的点位于球体上!当这些点位于一个半球时,这很容易

Geometry 寻找一组圆的最近点

我的要求是找到最接近三个圆的点。假设这三个圆是C1,C2,C3。我想找到空间中的点,这样它与C1,C2和C3的距离之和是最小的 给定点到圆的距离是给定点到位于圆上的点的距离,该点是圆与连接给定点和圆心的线的交点 找到这样一个点有简单的逻辑吗?除非其中一个距离为零,否则圆半径是不相关的:到圆的距离之和将是到中心的距离之和减去半径之和。所以实际上你是在要求圆心的半径。你可能想。或者你可以利用有三个圆的事实,在这种情况下,中间点是由它们的中心形成的三角形的中心 如果如上所述构造的点位于其中一个圆内,则

Geometry 如何测试点是否在旋转椭球体内?

我需要测试一个点(x1,y1,z1)是否位于由其中心(x2,y2,z2)、轴(半径)(a,b,c)和旋转(例如phi1,phi2)给出的椭球体内。这怎么可能呢 为了稍微降低复杂性,可以假设三个轴中的两个具有相同的长度。是否可以选择反转旋转(即,将反向旋转(-phi1,-phi2)应用于(相对于椭球中心的x1,y1,z1),然后检查轴平行椭球中的包容度?我同意Codor,。。。我会更进一步,创建转换矩阵,将点转换为椭球坐标系(平移+旋转),并将轴缩放1/a、1/b、1/c,因此如果转换点(x、y、

Geometry 将不重叠的正方形拟合成矩形

给你2个正方形,使它们的面积之和为1。您希望将这两个正方形拟合到一个矩形中,而不重叠,以便矩形的边与正方形的边平行。找出这样一个最小的矩形的面积,我们总是可以把它放在两个正方形上。如果有陷阱,我看不到它 让最小和最大正方形的边分别为sin(t)和cos(t),使用0I假设这是一个家庭作业问题,所以我只给你一个提示。试着画一幅矩形的样子。考虑两个正方形大小相等时会发生什么情况;或者如果一个比另一个大,我已经试过了,但是我得到的答案是sqrt(2),它是不正确的。顺便说一下,这是一个数学家鄂尔多斯的

Geometry 带半径的二维弹丸弹道计算

我有一个2D游戏,角色(Al)试图从NPC(Bu)中“保存”另一个角色(Ho) Al和Bu具有恒定速度(萨利静止不动) 我需要弄清楚如何计算Al应该瞄准什么点才能停止Bu 我能够在阅读后编写这个程序。我将一些pylab代码转换为numpy def interception(Al, Bu, Ho, Sa, Sb): """ Returns ``(t_C, C)`` if A can catch B, before B reaches H. Otherwise, returns `

Geometry 如何知道只有两个顶点的所有6个六边形顶点?

我试图让程序画一个六边形,程序应该让用户只输入两点的坐标,我假设这些点是一个边的端点,然后我需要计算其他四点的坐标,但是如何计算呢? 附言:我使用库graphics.h,其中包含绘制多边形,所有点都需要两个x和y坐标数组给定两个点x1、y1、x2、y2,可以使用公式计算六边形上的下一个点 dx = x2 - x1 dy = y2 - y1 x3 = x2 + ((√3)/2) dx - (1/2) dy y3 = y2 + (1/2) dx + ((√3)/2) dy 这些是从一般的旋转公式推

Geometry 有没有一种方法可以让我保持正方形,但在openlayers中调整它的大小?

我得到了四个不同的坐标,在openlayers地图上形成了一个正方形。但是我想知道,是否有可能不打破正方形的形状,而是抓住其中一个角并调整正方形的大小(使其变大/变小) 我的座标如下: var x_1 = 28.0244307; var y_1 = -25.8635238; var x_2 = 28.0244307; var y_2 = -25.8835238; var x_3 = 28.0444307; var y_3 = -25.8835238; var x_4 = 28.044430

Geometry 凸包的测试用例数据

我需要为一个类赋值做一个2D凸包函数,我想要一个比赋值提供的更健壮的测试用例。有谁知道使用该解决方案的大型测试用例(25

Geometry 如何建立光线/球体相交的二次方程?

我正在研究光线跟踪器的数学,但我并没有遵循我读过的关于这个主题的每一篇文章中所做的转换。这就是我所拥有的: 球体的公式: (X-Cx)^2+(Y-Cy)^2+(Z-Cz)^2-R^2=0 其中R是半径,C是中心,X,Y,Z是球体中的所有点 行的公式: X+DxT,Y+DyT,Z+DzT 其中D是直线的归一化方向向量,X、Y、Z是直线上的所有点,T是直线上某点的参数 通过将直线的分量代入球面方程,我们得到: (X+DxT-Cx)^2+(Y+DyT-Cy)^2+(Z+DzT-Cz)^2-R^2=0

Geometry 拼图:直线连接线的平面配置

谜题:给定平面上一般位置的偶数个点(即,没有三个点共线),你能将这些点分成几对,并用一条直线连接每对点的两个点,这样直线就不会重叠吗 我的解决方案:一个简单的方法(看起来太简单了) 从具有最左侧x坐标的点开始,然后绘制一条到下一个最左侧x坐标的线。然后找到下一个最少的点对并连接,依此类推 这是正确的吗?刚刚试过!这是解决方案之一

Geometry 计算到线串的距离

我不熟悉地理信息系统,所以我需要以下方面的帮助 我想计算GeoJSON文件中的POI和linestring之间的距离。 因此,泊松位于与线串一定距离(平行)处 从GeoJSON文件计算单个点(“当前位置”)和POI之间的距离不是问题(使用distanceTo()) 但是计算poi和线串之间的距离让我头疼 我的最终目标是为我的geoJson层使用过滤器选项,并且只显示位于与线串一定距离(平行)的POI。(例如,最大距离50米) 使用十进制lat/lon。您需要迭代Pois图层,以使用LineLay

Geometry 编程机器学习,用x y坐标比较两条绘制的线

所以我存储了多条路径,每条路径将由数据点x1,y1 | x2,y2 | x3,y3。。。等 我想将这些路径相互比较,以确定是否存在任何相似之处 我可以遍历每个点,看看它是否匹配第一条路径中的任何点,然后看看下一个点是否匹配下一个点 我认为,如果没有异常,这将起作用,但如果下一点不匹配,则可以跳过 我想建立一些容忍度,例如10,10可能匹配12,12或8,8 这是比较数据的好方法,还是有更好的方法 作为第二个步骤,我可能也想把时间作为一个值,所以每个点都有一个与之相关的时间值。< P> U可以比较

Geometry OpenLayers 3定义轴顺序

我遇到了一个问题,我的GeoJSON以纬度/经度顺序返回坐标,但OpenLayers希望它们的顺序相反:经度/纬度。 我无法从服务器上用其他方式获取它们。 是否可以使用OL3反转坐标,就像我发现的关于旧OL的东西一样 formatOptions: { xy: false } 类似的东西在OL3中可用吗?简短的回答是否。OL3只接受XY。如果您有可能在GeoJSON源代码中反转它,请这样做 在ol3文档中,您应该可以通过对featrures中的每个几何体使用“applyTransform”方法

Geometry 在对几何形状进行数学运算时避免被零除的最佳方法

我在一个专门的运动控制器硬件上编码,它使用Visual Basic语言的一个子集作为编程语言。我需要对给定的点做一些计算,比如得到一条弧的中心坐标,它通过3个不同的点;移动直线,获取两条直线的交点坐标等 我使用笛卡尔坐标系进行计算。处理除以零的情况时,代码似乎会膨胀 那么,这种计算的最佳坐标系是什么?或者什么是保持这种代码小型化的最佳方法 例子 给出通过3个点的圆弧中心点坐标的代码如下: ' p1: (px1, py1) p2: (px2, py2) p3: (px3, py3)

Geometry 找到一个与其他3个相接触的圆圈

我们有一个半径为10的红色圆圈。在这个红色圆圈上,还有另外3个蓝色圆圈(半径8),它们的间距为120°。 点C是两个蓝色圆圈的中间,有一个绿色圆圈(半径2) 我需要找到黄色圆圈的坐标和半径,它同时接触到两个蓝色圆圈和绿色圆圈。我知道如何用3个点做一个圆圈,但黄色圆圈必须只接触其他3个点。每个圆上只有一个交点 从图片上我们可以看出这是不正确的。黄色圆圈与蓝色圆圈的两点接触 在本例中,有3个蓝色圆圈,但在红色圆圈上应使用2、3、4和5个等间距的蓝色圆圈 这个问题我已经讨论了好几天了,救命啊 我试着为

Geometry 如何查找三维点是否与三维三角形位于同一曲面内

假设我们有一个三角形,其中每个点用3个坐标表示。我们如何判断一个点(也用3个坐标表示)是否不在三角形内部,而是在与三角形相同的曲面上?基本上,如果点到平面的距离为零 这是我第一次在谷歌上找到三角形点,我们可以构建向量 AB = B - A AC = C - A 和使用叉积的法向量N N = AB x AC 要检查点p是否属于ABC平面,请计算点积 AP = P - A dp = AP.dot.N dp对于平面中的点等于零(使用一些公差来补偿数值误差) 要查找点是否位于三角形外部: 选择正常

Geometry 如何确定对角线在凹多边形内或凹多边形外?

凹(非凸)多边形的对角线(对角线是连接非相邻顶点的线段)可以完全位于多边形内部或外部(或与多边形的边相交)。如何确定它是否完全位于多边形中?(多边形中无点测试的方法) 如何确定它是否完全在多边形中 如果要确定对角线是否从未离开多边形的边界,只需确定它是否与两个相邻顶点之间的任何直线相交即可 如果是,则部分位于多边形内,部分位于多边形外 如果不是,它要么完全在多边形内,要么完全在多边形外。从这里开始,最简单的方法是在对角线上的任意点上使用多边形中的点,但如果不想这样做,请使用 约翰的回答恰到好处

Geometry 大圆与直角线交点

我有一个纬度,经度,和一个旅行方向,以正北度为单位。我想计算一下我是否会与另外两个Lat/Lon点定义的线相交 我想定义这条线的两点将创建我的大圆,我的位置和方位将定义我的等角线 我只对几百公里的交叉口感兴趣,所以我不需要所有可能的解决方案 我不知道从哪里开始。简单的答案是肯定的——如果你从任何纬度开始,继续沿着某个大圈旅行,你最终会穿过地球上的任何和所有其他大圈。地球上每两个大圈都在两个点上相交,但两个完全相同的大圈除外,它们在所有点上相交 但我猜你不仅仅是在问一个是/否的问题。你可能想知道这

Geometry 仅使用已知距离查找多边形的角度

我有一个点的网格,但我有5个点,其中2个是主要点 从A和B到任何其他点的所有距离都是已知的(C、D、E),但从A和B到其他点的距离是未知的。也不是这些点的位置,只是距离。虽然A可以被视为原点(0,0) 是否有可能找到内角,然后找到点A和B之间的距离。 否则,需要如何修改此场景才能找到此距离。 还是仅仅知道的信息不够 实际场景中可能有更多点与A点和B点的距离已知,但我只是在这里尝试简化。否。让我们沿着水平轴将A固定在(0,0)和B。每个双腿对ACB,AEB和ADB可以弯曲其肘关节,以允许沿水平轴

Geometry 在N维空间中以与3个点的最小距离计算等距点

我试着在任意维度上编码,我被困在创建一个球体的部分,这个球体的边缘有3个给定的点,或者换句话说,一个球体由N维空间中的3个点定义 该球体的中心将是距离(定义)3点的最小等距点 我知道如何在2-D(由3个点定义的三角形的外心)中求解,我也看过一些3D的矢量计算,但我不知道N-D的最佳方法是什么,甚至不知道这是否可能 (我也很感激关于ND中最小边界球计算的任何其他建议,以防我走错方向。)如果我做对了: 想要的点p是相同半径的3个超球体之间的交点r,其中超球体的中心是您的点p0、p1、p2,半径r是所

Geometry 如何获取与2个圆相切的直线点

如何使直线的点与两个圆相切,直线的起点和终点都正好接触各自的圆 请帮忙。谢谢。p4和p2的角度是90度。如果你从概念上把它们放在一个四边形p2-p4-c2-c1的底部,你可以得到c2(从p4-c1)和c1(从p2-c2)的角度。有了这个角度,你可以很容易地构建它。我以前在软件开发中遇到过这个问题,尽管你可能在数学组中得到更好的答案。

Geometry 分离轴3d

我试着对两个四面体进行SAT 3d测试。 我做了一个小算法,它在以下几点上几乎不起作用。 但它并没有真正起作用 经过数小时的搜索,我发现了这句话: 面法线方向不够 你还需要检查通过交叉产生的方向 边的乘积,每个多面体一个 这是什么意思 如果我计算每个四面体两边的叉积,我已经有了边的叉积 我不知道这句话是什么意思,有人能解释一下吗 这里有一个小总结: 我为每个四面体做了这个 我用两条边的叉积制作了面法线,如下所示: getcrossPointB PointA、PointC PointA; 对于每个

Geometry OpenStreetMap-确定圆圈是否与道路相交

如何确定给定点(纬度、经度)是否位于路段中 关于我想要实现的目标的进一步解释: 我有一个参考点(lat1,lon1)。我确定一个半径为30米的圆和一个中心(lat1,lon1)。如果你想知道这个圆圈是否与道路相交 我是否需要使用OSM DB(wms服务来获取功能和计算交叉点?您可以使用。您将需要-query。语法如下所示: way(around:<radius>,<lat>,<lng>); way(大约:,,); …或者看看这个

Geometry 抛物线与准线上的对应点

假设我们有抛物线y=x^2的方程。见下图: 假设我们在这条抛物线上有一个点p,其中p=-2,4。我们知道抛物线上任意点(例如P)与焦点之间的距离等于距离 在点P和准线之间。 我的问题是,抛物线准线上的对应点是什么,例如,P'的P',其中焦点和P之间的距离=P和P'之间的距离?在抛物线上取一点并返回准线上相应点的方程是什么?因为焦点和准线与抛物线上的任何点的距离相等,特别是它们与原点的距离相等0,0。你可以假设距离fo是d,所以焦点是0,d,准线是y=-d 对于抛物线上的任何其他点,到直线的平方距

  1    2   3   4   5   6  ... 下一页 最后一页 共 21 页