精华内容
下载资源
问答
  • 两条未知曲线,求其最短距离

    千次阅读 2016-01-04 11:25:24
    两条未知的不规则的的曲线,现在已经获取近似点,如何求得一条曲线的任意一点到另一条曲线最短距离,用C++算法编程实现。
    有两条未知的不规则的的曲线,现在已经获取近似点,如何求得一条曲线的任意一点到另一条曲线的最短距离,用C++算法编程实现。
    
    展开全文
  • 一个最简单的例子:如果你是一个滑雪运动员,目标是最短时间冲线,你根本就不在乎点间的最短路径,而是最快路径。如果你沿着最佳曲线下滑,你会获得更多的优势……顺势借力 开拓创新从起点到终点,有无数道路,...

    ec5d790abe7aafc1a96d3bad7ab61648.gif

    看图说话,图片很形象地给了答案。大伙是不是也大感意外呢?

    f3fd7057f9c15c506dd94c15ac69f32e.gif

    经过无数学霸的论证和科学实验,上图红色路线是最快的路线,此曲线也因此被称为“最速曲线”。

    话说这曲线有什么用呢?

    一个最简单的例子:如果你是一个滑雪运动员,目标是最短时间冲线,你根本就不在乎两点间的最短路径,而是最快路径。如果你沿着最佳曲线下滑,你会获得更多的优势……

    顺势借力 开拓创新

    从起点到终点,有无数条道路,直线是大多数人会选择的路线。

    一旦没有走到直线,他们就会觉得自己绕了远,开始抱怨。

    其实,真正正确的选择是曲线,才是真正的成功。

    从起点到终点,小球能够滚动,在于其不安现状的同时能够顺势而行,借力地心引力才能让自己不断向前。

    不忘初衷 方得始终

    从起点到终点,小球一直看着终点的目标,自始至终都是朝着自己的目标前行,即使途中有短暂地偏离方向也不放弃自己所追求的终点,而恰恰是这种坚持与执着成就了最快抵达目的地的捷径。

    尼采曾说:一切美好的事物都是曲折地接近自己的目标,一切笔直都是骗人的。业务有障碍,事业有起伏,人生有曲折,无论何时何地,我们都要不忘初衷。只有不忘记自己最初的想法,才会找对人生的方向,才会坚定我们的追求,才能有始有终地去完成自己的梦想。

    现在行动 为时未晚

    很多时候,我们会感慨,会抱怨,甚至会恨自己生不逢时。

    “怎么就没赶上市场好做的时候开始我的事业呢?”

    “现在才开始做公众号、知乎运营,晚了。”

    还是看看“最速曲线”图:

    96786b560eb454f05893eb6ab46a2dfb.gif

    四个颜色的小球在“最速曲线”的不同位置同时出发,却在同一时刻抵达终点。

    这说明,你差的越多,补的越快。

    两点间最短的距离不是线段,也不是直线。

    而是-------------曲线。

    展开全文
  • 主要思路:假设有两条曲线分别是c1和c2,把c1按照1的距离划分我这里用变量jd表示,得到一个曲线集合coll,然后遍历coll,得到coll中每一个曲线的两个端点,再用这两个端点分别求离曲线c2的最短距离,直接使用开发库...

    测试结果:
    在这里插入图片描述
    主要思路:假设有两条曲线分别是c1和c2,把c1按照1的距离划分我这里用变量jd表示,得到一个曲线集合coll,然后遍历coll,得到coll中每一个曲线的两个端点,再用这两个端点分别求离曲线c2的最短距离,直接使用开发库的GetClosestPointTo方法就可以了,直到遍历完整个coll集合就能得到最短距离和其对应的点。

    主要代码得到曲线集合coll:

    public List<Curve> GetCurves(Curve curve ,double jd)
            {
                List<Curve> lstCurves = new List<Curve>();
    
                double totalLength = curve.GetDistanceAtParameter
                (curve.EndParam);
    
                if (totalLength < jd)
                {
                    lstCurves.Add(curve);
                    return lstCurves;
                }
                double addLength = 0;
    
                Point3dCollection pt3dCol = new Point3dCollection();
    
                while (addLength < totalLength)
                {
                    pt3dCol.Add(curve.GetPointAtDist(addLength));
                    addLength += jd;
    
                }
                if (addLength != totalLength)
                    pt3dCol.Add(curve.GetPointAtDist(totalLength));
    
    
               DBObjectCollection dbObjColl= curve.GetSplitCurves(pt3dCol);
    
                foreach (var item in dbObjColl)
                {
                    lstCurves.Add((Curve)item);
                }
    
                dbObjColl.Dispose();
    
                return lstCurves;
            }
    

    主要代码得到最短距离和最近点:

    public Line GetMinLine(Curve curve1,Curve curve2,double jd)
            {
                List<Curve> lstCurves = GetCurves(curve1, jd);
    
                double minVal = double.MaxValue;
                Point3d ptMin1 = Point3d.Origin;
                Point3d ptMin2 = Point3d.Origin;
                foreach (var c in lstCurves)
                {
                    Point3d pt1 = c.StartPoint;
                    Point3d pt2 = c.EndPoint;
    
                    var pt11=curve2.GetClosestPointTo(pt1, false);
                    var pt22= curve2.GetClosestPointTo(pt2, false);
    
                    var l1 = pt11.DistanceTo(pt1);
                    var l2 = pt22.DistanceTo(pt2);
    
                    if (l1 < minVal)
                    {
                        minVal = l1;
                        ptMin1 = pt11;
                        ptMin2 = pt1;
                    }
                    if (l2 < minVal)
                    {
                        minVal = l2;
                        ptMin1 = pt22;
                        ptMin2 = pt2;
                    }
    
                }
                ed.WriteMessage("\n最短距离:" + minVal + "\n");
    
                return new Line(ptMin1,ptMin2);
            }
    

    关于GetClosestPointTo介绍如下:
    在这里插入图片描述

    展开全文
  • 多数球面距离最短证明的漏洞

    千次阅读 2005-09-17 20:08:00
    今天在网上看到了几个点间球面距离最短的证明,甚至有不用微...在还没有证明到的情况下,你必须假定球面上点的最短距离有可能不是一弧,而是另外的曲线。考虑到这个,我不认为这些证明有任何一个可以令我满意。
    
    			

        今天在网上看到了几个两点间球面距离最短的证明,甚至有不用微积分的。本来想发在这里,但是在重写证明过程时突然发现了这些证明的一个通病:它们都是拿大圆的弧和小圆的弧作比较。换句话说,这些证明都默认了球面上两点一定是弧的距离最短。在还没有证明到的情况下,你必须假定球面上两点的最短距离有可能不是一条弧,而是另外的曲线。考虑到这个,我不认为这些证明有任何一个可以令我满意。

    展开全文
  • 曲线距离实现方法

    2019-03-31 20:26:03
    指定求解的点,寻找对面一直线的相对于当求解点平行的切线,然后计算平行线之间的距离 思路分析二: 指定求解点,默认到对面一点最短距离就为目标距离,利用距离变换求解。 (原因是因为点之间线段最短) 代码...
  • 舆情发展曲线相关度

    千次阅读 2014-03-08 22:13:26
    计算两条曲线之间的欧氏距离,不考虑时间尺度和增量的平移和伸缩变换 [c1,c2]为目标舆情的起始时间至当前时间段   选择与目标曲线最相似(距离最短)的舆情作为预测模板。                 ...
  • Frechet Distance Frechet distance 是法国数学家 Maurice Rene Frechet 在1906年提出的一种路径空间相似形描述,...以下是对于一维数据,两条曲线进行弗雷歇距离计算,作为曲线相似度的度量值一: def calculate...
  • 在一个斜面上,摆两条轨道,一条是直线,一条是曲线,起点高度以及终点高度都相同。两个质量、大小一样的小球同时从起点向下滑落,曲线的小球反而先到终点。如果消化不了,估计就理解为两点之间,最快通过的不是一个...
  • Fréchet distance:...比较常用的用于说明Fréchet distance的例子是“狗绳长度”:主人走路径A,狗走路径B,各自走完这两条路径过程中所需要的最短狗绳长度。 ( 以上部分资料来源于知乎专栏:路径相似性描述:Fré
  • 1. 多边形逼近approxPolyDP 当需要对图像进行形状分析时,需要使用多边形逼近一个轮廓,...approxPolyDP()用另一条顶点较少的曲线来逼近一条曲线或者一个多边形,这样两条曲线之间的距离小于或等于指定的精度。...
  • A. Circle Line 考虑环上的最短距离。 B. New Problem \(n\) 个串建后缀自动机。 找的时候bfs一下即可。 C. Learning Languages ...D....构造类似于\(y = \frac{1}{x}\) 的两条曲线即可。 E. Game 本质...
  • 智能管理 任你驰骋

    2017-11-17 14:35:00
    网络管理大师说,点之间最短距离不一定是一直线,而是一障碍最小的曲线。在这个处处体现智能的时代。智能的管理不仅是一种模式,也是一种思维;而日新月异的网络技术,不断丰富的功能和日益完善的产业链支持...
  • 余世维语录

    2010-10-09 20:44:15
    1. “重要人的人物是不带手机的,jiangzeming 有带手机吗? ”——管理商数 2. 真正厉害的人不是自己累死,而是要让手下做...6. 从管理的角度来讲,点之间最短距离不一定是一直线,而是一障碍最小的曲线。 ...
  • 如果你拿出一张纸,把它铺平,在上面任意处画个点,你都能用任意一线条、曲线、或你能想到的任何几何路径将它们连接起来。只要这张纸保持铺平的状态,不存在任何弯折或扭曲,那么将点...
  • “重要人的人物是不带手机的,jiangzeming 有带手机吗?...从管理的角度来讲,点之间最短距离不一定是一直线,而是一障碍最小的曲线。 管理就是让大家知道你的规划,理解你的规划,理解你的...
  • 大圆航线是跨洋航行时所采用的地理航程最短的航线,若将地球视作为一个圆球体,地面上点间的距离,以连接点的小于180°的大圆弧弧长为最短。 恒向线:假定船舶在行驶过程中始终按着恒定的航向航行,船舶航行的...
  • 直观的理解,Fréchet distance就是狗绳距离:主人走路径A,狗走路径B,他们行进的速度可能不同,但是不允许backtracking,各自走完这两条路径过程中所需要的最短狗绳长度。Fréchet distance不仅考虑了曲线的空间...
  • 个数据管理的项目已经完成。最近根据工作需要,总结了一下航图,航路方面的一些概念和计算方法。 [b]概念:[/b] [b]大圆航线[/b]:以通过航路点间的大圆圈...等角航线是一盘向两极的螺旋形曲线,等角航...
  • 流行问题代码

    2016-04-12 10:38:43
    1、x,y平面的上,过原点的一条曲线。如 y=x*x; 2、在0区间上随机取1000个点,计算xi,yi; 3、z轴。对每一个点xi,yi,对应在区间0上随机取200个点;即将XY平面上的一个点(xi,yi)扩展成了XYZ三维空间的200个(xi,yi,zi...
  • 地理信息系统算法基础

    千次下载 热门讨论 2009-06-20 10:57:53
    2.19计算两条共线的线段的交点 2.20计算线段或直线与线段的交点 2.21求线段或直线与圆的交点 2.22中心点的计算 2.23过点作垂线 2.24作平行线 2.25过点作平行线 2.26线段延长 2.27三点画圆 2.28线段打断 ...
  • 2.19计算两条共线的线段的交点 2.20计算线段或直线与线段的交点 2.21求线段或直线与圆的交点 2.22中心点的计算 2.23过点作垂线 2.24作平行线 2.25过点作平行线 2.26线段延长 2.27三点画圆 2.28线段打断 ...
  • 在参数输入输出上,输入不过多了两个参数:minLineLengh(线的最短长度,比这个短的都被忽略)和MaxLineCap(两条直线之间的最大间隔,小于此值,认为是一条直线)。输出上也变了,不再是直线参数的,这个函数输出的...
  • 疯狂ios讲义源代码

    千次下载 热门讨论 2014-01-02 09:12:50
    9.3.1 程序获取控件的种方式 349 9.3.2 事件处理的方式 353 9.4 storyboard的改进之处 358 9.5 代码控制ui界面 360 9.5.1 不使用界面布局文件开发ui界面 360 实例:无界面布局文件开发ios应用 360 9.5.2 ...
  • AutoLISP学习导引.pdf

    2015-07-18 22:45:17
    点到线的最短距离 100 重点复习 103 进阶挑战 103 序列 104 多数据计算 104 矩阵 106 一般序列 107 字符串序列 111 点对序列 111 关联数据序列 112 重点复习 113 进阶挑战 114 画矩形 115 讨论 115 程序流程 115 ...
  • MATLAB语言常用算法程序集

    热门讨论 2009-07-19 20:28:29
    Language 求已知数据点的拉格朗日插值多项式 Atken 求已知数据点的...CollectAnaly 用最短距离算法的系统聚类对样本进行聚类 DistgshAnalysis 用Fisher类判别法对样本进行分类 MainAnalysis 对样本进行主成分分析

空空如也

空空如也

1 2
收藏数 34
精华内容 13
关键字:

两条曲线最短距离