精华内容
下载资源
问答
  • ;|--------------- vlax-curve-DivideBetweenPair ---------------Returns a approximate point list between two cross-sectioncurves by a dividing parameter, concept of LOFT command-------------------------...

    ;|

    --------------- vlax-curve-DivideBetweenPair ---------------

    Returns a approximate point list between two cross-section

    curves by a dividing parameter, concept of LOFT command

    ------------------------------------------------------------

    Author: lisperado

    ------------------------------------------------------------

    Arguments:

    e1,e2        - Curve entities/objects SPLINE,LWPOLYLINE etc..

    x         - Direction mode 0 or 1, integer

    y         - Divide parameter, integer

    ------------------------------------------------------------

    Returns:  list of Point list (WCS)

    ------------------------------------------------------------|;

    ;;Note: NOT accurate for sharp curve

    (defun vlax-curve-DivideBetweenPair ( e1 e2 y /  m i d  p o l a r   )

    (setq        i 32.0  ;;;纵向密度用户自行设定

    a (list e1 e2)

    )

    (foreach e a

    (setq r nil

    d (vlax-curve-getdistatparam e (vlax-curve-getendparam e))

    m (/ d i)

    l 0.0

    )

    (while (and (< l d) (setq p (vlax-curve-getpointatdist e l)))

    (setq l (+ l m)

    r (cons p r)

    )

    )

    (setq o (cons (reverse r) o))

    ) ; foreach

    (setq        r nil

    p '((x) (mapcar '* '(1. 1. 0.) x)) ; 转换2D

    o (mapcar '(lambda (a b) (append a (list (vlax-curve-getendpoint b)))) o (reverse a))

    )

    (foreach x (apply 'mapcar (cons '(lambda (a b) (list (setq b (p b) a (p a) ) (angle a b) (/ (distance a b) y))) o))

    (setq

    l nil

    p (car x)

    )

    (repeat (1- y)

    (setq

    p (apply 'polar (cons p (cdr x)))

    l (cons p l)

    )

    ) ; repeat

    (setq r (cons l r))

    ) ; foreach

    (apply 'mapcar (cons 'list r))

    )

    展开全文
  • // 得到直线的tan斜率 double GetTanOfLine( LINE line ) { double x_dis = line.pt0.x - line.pt1.x; if ( x_dis == 0.0 ) return 10e9; return (line.pt0.y - line.pt1.y) / x_...// 得到两条平行线之间的距离 dou
    struct LINE
    {
    	CvPoint pt0;
    	CvPoint pt1;
    	LINE( CvPoint pta, CvPoint ptb )
    	{
    		pt0 = pta;
    		pt1 = ptb;
    	}
    	LINE()
    	{
    		pt0.x = pt0.y = 0;
    		pt1.x = pt1.y = 0;
    	}
    };
    
    // 得到直线的tan斜率
    double GetTanOfLine( LINE line )
    {
    	double x_dis = line.pt0.x - line.pt1.x;
    	if ( x_dis == 0.0 ) return 10e9;
    	return (line.pt0.y - line.pt1.y) / x_dis;
    }
    
    
    // 得到两条平行线之间的距离
    double GetDisOfParallelLines( LINE line0, LINE line1 )
    {
    	CvPoint midPoint = cvPoint( (line0.pt0.x + line0.pt1.x)/2, (line0.pt0.y + line0.pt1.y)/2 ); // 中点
    	double x_dis = line1.pt0.x - line1.pt1.x;
    	if ( x_dis == 0.0 ) return fabs((double)(midPoint.x - line0.pt0.x)); // 如果line1 垂直x轴
    
    	double a = (line1.pt0.y - line1.pt1.y) / x_dis;
    	double b = line1.pt0.y - (line1.pt0.x * a);
    	return fabs(a * midPoint.x - midPoint.y + b) / sqrt(a * a + 1);
    }
    
    
    // 判断两直线是否平行
    bool IsParallelLines( LINE line0, LINE line1 )
    {
    #define LIMIT (1.1547 / 3) #近似平行线的斜率之差的范围
    
    	double angleTan0 = GetTanOfLine( line0 );
    	double angleTan1 = GetTanOfLine( line1 );
    	if ( fabs(angleTan0 - angleTan1) < (double)LIMIT )
    	{
    		return 1;
    	}
    	return 0;
    }
    

    展开全文
  • 我想在这里修改python代码:...,这样渐变不是颜色上垂直渐变,而是两条曲线之间垂直差异的函数。所以,如果曲线发散,颜色会变暗。在import numpy as npimport matplotlib.pyplot as pltimport matplotlib.color...

    我想在这里修改python代码:Is it possible to get color gradients under curve in matplotlb?,这样渐变不是颜色上的垂直渐变,而是两条曲线之间垂直差异的函数。所以,如果曲线发散,颜色会变暗。在import numpy as np

    import matplotlib.pyplot as plt

    import matplotlib.colors as mcolors

    from matplotlib.patches import Polygon

    np.random.seed(1977)

    def main():

    for _ in range(2):

    gradient_fill(*generate_data(100))

    plt.show()

    def generate_data(num):

    x = np.linspace(0, 100, num)

    y = np.random.normal(0, 1, num).cumsum()

    return x, y

    def gradient_fill(x, y, fill_color=None, ax=None, **kwargs):

    """

    Plot a line with a linear alpha gradient filled beneath it.

    Parameters

    ----------

    x, y : array-like

    The data values of the line.

    fill_color : a matplotlib color specifier (string, tuple) or None

    The color for the fill. If None, the color of the line will be used.

    ax : a matplotlib Axes instance

    The axes to plot on. If None, the current pyplot axes will be used.

    Additional arguments are passed on to matplotlib's ``plot`` function.

    Returns

    -------

    line : a Line2D instance

    The line plotted.

    im : an AxesImage instance

    The transparent gradient clipped to just the area beneath the curve.

    """

    if ax is None:

    ax = plt.gca()

    line, = ax.plot(x, y, **kwargs)

    if fill_color is None:

    fill_color = line.get_color()

    zorder = line.get_zorder()

    alpha = line.get_alpha()

    alpha = 1.0 if alpha is None else alpha

    z = np.empty((100, 1, 4), dtype=float)

    rgb = mcolors.colorConverter.to_rgb(fill_color)

    z[:,:,:3] = rgb

    z[:,:,-1] = np.linspace(0, alpha, 100)[:,None]

    xmin, xmax, ymin, ymax = x.min(), x.max(), y.min(), y.max()

    im = ax.imshow(z, aspect='auto', extent=[xmin, xmax, ymin, ymax],

    origin='lower', zorder=zorder)

    xy = np.column_stack([x, y])

    xy = np.vstack([[xmin, ymin], xy, [xmax, ymin], [xmin, ymin]])

    clip_path = Polygon(xy, facecolor='none', edgecolor='none', closed=True)

    ax.add_patch(clip_path)

    im.set_clip_path(clip_path)

    ax.autoscale(True)

    return line, im

    main()

    这就是该计划的结果:

    展开全文
  • python-计算excel中各个地点之间的距离记录这个主要是为了熟悉一下pandas中一些函数的应用。首先看一下表格中的数据:用到的是GEOID,INTPTLAT,INTPLONG。其中GEOID是每一数据的id,后个字段是经纬度。需要做的...

    38bd0a72f11d17bc22d2d10bc8fc8002.png

    python-计算excel中各个地点之间的距离

    记录这个主要是为了熟悉一下pandas中一些函数的应用。
    首先看一下表格中的数据:

    d7d1ef26b88a5e7fedfebbc7898c4eaf.png


    用到的是GEOID,INTPTLAT,INTPLONG。
    其中GEOID是每一条数据的id,后两个字段是经纬度。
    需要做的是,从GEOID中抽出几个作为目标地点。然后计算其他地点到目标地点的距离,并找出最短距离:

    2ccd613c5643e798e4f507da2119e1ed.png

    思路

    首先我得把目标地点的id,经纬度给分别存起来:

    goalID=['6001406500','6001423200','6001402700','6073008800']
    goalLat=[]
    goalLong=[]
    result=pd.DataFrame()
    for j in range(len(goalID)):
        for i in range(len(ID)):
            if ID[i]==int(goalID[j]):
                goalLat.append(lat[i])
                goalLong.append(long[i])
                break

    由于结果的第一列是所有ID,所以我直接赋值:

    result=pd.DataFrame()
    result['GEOID']=allData["GEOID"]

    接下来就是计算一个所有地点到目标地点的距离,然后就往result里插入一列(用的是insert函数):

    for i in range(len(goalID)):
        distanceList = []
        for j in range(len(ID)):
            distanceList.append(math.pow((lat[j]-goalLat[i]),2)+math.pow(long[j]-goalLong[i],2))
        result.insert(len(result.columns),str(goalID[i]),distanceList)

    大致讲一下insert的用法,insert是插入列,首先:
    第一个参数是要插入的位置,这里我们直接用 len(result.columns) 意思是默认插在末尾
    第二个参数是列名
    第三个参数就是要插入的数据了
    把所有距离都计算并插入了,我们还要计算最小距离。
    这个还是使用pandas的函数:

    result["min"]=result.min(axis=1)

    这里,axis=1为求每行的最小值。
    最后是存储数据,这里还是用pandas的函数to_csv。

    result.to_csv("result.csv",index=0)

    需要注意的是,这里 inedx=0 是不需要行索引,如掉去掉这一行的话,会在最左列还有一列没有列名,列的元素为1,2,3,4...。

    2b5ae31f60944e211f2124f859138e5d.png
    专业代写,扫码了解
    展开全文
  • 利用eigen库内矩阵运算函数,写了LinesPositionRelationship3D类。实现了确定三维空间任意两条直线位置关系并获得在平行和交错条件下两直线距离的功能。该类是在确定空间两圆柱轴线关系下副产品。
  • P5735 距离函数

    2020-04-14 22:19:48
    给出平面坐标上不在一直线上三个点坐标(x_1,y_1),(x_2,y_2),(x_3,y_3)(x1​,y1​),(x2​,y2​),(x3​...对于平面上的个点(x_1,y_1),(x_2,y_2)(x1​,y1​),(x2​,y2​),则这个点之间的距离dis=\sqrt{(x_2-x_1)...
  • 共轭函数

    千次阅读 2017-10-21 16:50:41
    共轭函数 共轭函数的定义: 设函数f:Rn→R,定义函数f∗:Rn→R为:  ...此函数称为函数f的共轭函数。即函数yx和函数f(x)之间差值的上确界。...(0,−f∗(y)),即是两条平行线之间的y方向上的距离,即差值。 
  • 题目描述 给出平面坐标上不在一直线上三个点坐标 (x_1,y_1),(x_2,y_2),(x_3,y_3)(x 1 ​ ,y 1 ​ ),(x 2 ​ ...),坐标值是实数,且的绝对值不超过 100....),则这个点之间的距离 dis=\sqrt{(x_2-x_1)2+(y_2-y_1)2
  • 对于平面上的个点 (x1,y1),(x2,y2)则这个点之间的距离 输入格式 无 输出格式 无 输入输出样例 输入 0 0 0 3 4 0 输出 12.00 题目来源 洛谷(《深入浅出》)https://www.luogu.com.cn/problem/P5735 解题思路 1....
  • 函数和递归

    2020-12-15 17:47:28
    函数 函数的三要素: 函数名,函数参数,函数返回值 在c语言中,我们可以使用很多...计算之间的距离(点(x1,y1)点(x2,y2)) double dist(double x1,double y1,double x2,double y2) { return sqrt((x1-x2)*
  • 二叉树每边的距离为1,一个节点经过多少边到达另一个节点为这个节点之间的距离。 给定二叉树的根节点root,请返回所求距离。 解法: 先利用getMaxandMin函数找到叶子结点中最大值和最小值对应的结点,然后利用...
  • php函数

    2020-12-09 12:53:11
    * 求个经纬度之间的距离 *https://www.lvtao.net/dev/1899.html * 赤道半径 6378.137Km ;两极半径 6359.752Km;平均半径 6371.012Km ;赤道周长 40075.7Km. * * float $aLng 地址A的经度 ...
  • EXCEL函数公式集

    热门讨论 2010-03-16 03:26:38
    计算900~1000之间的数值之和 双条件求和 如何实现这样的条件求和 A1:A10数字显为文本格式时,如何求和 如何分班统计男女人数 统计数值大于等于80的单元格数目 计算出A1里有几个abc 有条件统计 如何统计各年龄段的...
  • 距离定义为点之间边的数,如下图的二叉树中,节点8和5之间的距离为3。 3.9题意为已知二叉树的前序遍历结果和中序遍历结果,要求重建二叉树。之所以在这里说3.9,是因为解第八题的时候为了处理输入建成二叉树,...
  • =datediff(“m”, “2010-03-01”, “2011-01-01”)%>其他回答 共2 datediff(“m”,”2010-03-01″,”2011-01-01″) DateDiff函数 功能:返回个日期之间的时间间隔。 语法:DateDiff(interval, date1, date2 [,...
  • 连续曲线是由点组成,点与点之间距离比较近,看上去就是曲线了,画图关键是画出每个点。Java提供了三角函数方法,直接调用cos()方法就可以根据x坐标计算出y坐标。需要注意是,cos()方法输入参数是弧度值,...
  • 1. 空间换时间法则  1.1修改数据结构 ... 例如:计算球面距离:输入为球面上5000个点组成的集合S,再输入20000个点组成的序列,每个点... 直接计算需要用到大量的三角函数,开销很大,而个点的距离随其欧
  • 1. 多边形逼近approxPolyDP 当需要对图像进行形状分析时,需要使用多边形逼近一个轮廓,...approxPolyDP()用另一条顶点较少的曲线来逼近一条曲线或者一个多边形,这样两条曲线之间的距离小于或等于指定的精度。...
  • Step1:先画

    2020-12-08 22:52:30
    请看蛇头构造函数代码: <pre><code> javascript constructor(options) { super(options); this.angle = BASE_ANGLE + Math.PI / 2; this.toAngle = this.angle; } </code></pre> 初始...
  • ZJU2013 Labyrinth - 树最长路

    千次阅读 2008-02-09 21:06:00
    题目描述:一个n*m的地图, 求出相距最远的个空地间之间的距离。保证地图中任意个空地之间有且仅有一路径。n,m分析:可以看出,整个地图的路径可以构成一棵树。题目就是要求这棵树中距离最远的个点。假设...
  • 前言:  算法自己写,只用到openCV的IO函数等。之前的毕业设计,现在很闲...因为车道线是平行的,两条车道线之间的距离和平行信息是很重要的鲁棒性信息  2.道路是曲线的,要将图像分成多个片段,每个片段内近似认为是
  • 解读MTF曲线

    千次阅读 2020-08-19 14:07:06
    怎样看MTF曲线 光学模量传递函数所表示的就是模量传递函数值随空间频率和像场位置变化的函数关系。...但测试分辨率的标板是一组一组轮廓鲜明的黑白线条,每两条线条之间的距离,以及线条本身的宽度之比是.
  • excel使用

    2012-11-25 17:06:01
    如果想快速准确地绘制一条函数曲线,可以借助EXCEL图表功能,它能使你画曲线既标准又漂亮。你一定会问,是不是很难学呀?其实这一点儿也不难,可以说非常简便,不信你就跟我试一试。以绘制y=|lg(6+x^3)|曲线...
  • OpenCV学习笔记(15):opencv轮廓分析

    千次阅读 2015-05-20 13:35:19
    approxPolyDP()用另一条顶点较少的曲线来逼近一条曲线或者一个多边形,这样两条曲线之间的距离小于或等于指定的精度。同时也有使闭合逼近曲线的选项(那就是说,起始点和终止点相同)。 pointPolygonTest()函数判定...
  • 城市之间连着高速公路,并且每个城市之间有且只有一通路。不同高速公路可能有不同长度。最近Z国经常发生火灾,所以当地政府决定在某些城市修建一些消防站。在城市k修建一个消防站须要花费大小为W[k]费用。...

空空如也

空空如也

1 2 3 4 5 6
收藏数 110
精华内容 44
关键字:

两条函数之间的距离