圆锥

【多视角立体视觉系列】 conic圆锥线和quadric二次曲锥面的定义和应用

冷暖自知 提交于 2020-02-26 15:06:38
【多视角立体视觉系列】 conic圆锥线和quadric二次曲锥面的定义和应用 20200226 FesianXu 前言 之前我们讨论过一些几何元素,比如点线面等,在本文中,我们将谈到称之为圆锥线和二次曲锥面的几何元素,这种类型的曲线对于讨论计算机视觉中投影是非常有效的,同时也是定义不同几何变换——投影变换,仿射变换,欧几里德变换等区别的要点之一,需要我们很好地掌握。 如有谬误,请联系指出,转载请注明出处。 ∇ \nabla ∇ 联系方式: e-mail : FesianXu@gmail.com QQ : 973926198 github: https://github.com/FesianXu 圆锥线 定义 我们暂且不管计算机视觉和摄像机成像的这方面的应用背景,在数学的角度上先描述下圆锥线。 圆锥线(conic) 首先是一种在二维平面上的二维点的轨迹,在欧几里德几何中,圆锥线主要分为三种:双曲线(hyperbola),椭圆线(ellipse),抛物线(parabola)。名字很熟悉,在高中大家都应该或多或少学过这些几何,而这些不同的曲线之所以都被称之为圆锥线的原因是,它们都可以看成是不同方向的平面切割圆锥体形成的相交平面的边缘的轨迹,如Fig 1.1所示。我们将会发现,这些不同的圆锥线在投影变换(projective transformation)下都是等价的,这个也就是我们指的

Android OpenGLES2.0(六)——构建圆锥、圆柱和球体

ⅰ亾dé卋堺 提交于 2019-11-27 15:46:54
之前的博客中,我们绘制了三角形、正方形、圆形、立方体,今天我们将绘制圆锥、圆柱和球体。能够绘制这些基本的常规几何形体后,其他的常见几何形体的绘制对于我们来说就基本没问题了。 绘制圆锥 由之前的博客,我们大家也应该都知道了,OpenGL ES2.0中物体的绘制重点就是在于把这个物体表面分解成三角形,分解成功后,绘制自然就不成问题了。圆锥我们很容易就能想到把它拆解成一个圆形和一个锥面,锥面的顶点与圆形的顶点,除了锥面的中心点的坐标有了“高度”,其他的完全相同。圆形在Android OpenGLES2.0(四)——正方形和圆形中我们已经绘制过,那么锥面其实对于我们来说也是小case了: ArrayList<Float> pos=new ArrayList<>(); pos.add(0.0f); pos.add(0.0f); pos.add(height); //给圆心相对圆边增加高度,使之形成锥面 float angDegSpan=360f/n; for(float i=0;i<360+angDegSpan;i+=angDegSpan){ pos.add((float) (radius*Math.sin(i*Math.PI/180f))); pos.add((float)(radius*Math.cos(i*Math.PI/180f))); pos.add(0.0f); } float[

NAT类型

守給你的承諾、 提交于 2019-11-26 10:58:13
NAT分为Symmetric NAT和Cone NAT两种。 Symmetric NAT:每次都分配新的端口号,IP映射不变。 Cone NAT分为以下三种: (1)全圆锥( Full Cone) : NAT把所有来自相同内部IP地址和端口的请求映射到相同的外部IP地址和端口。任何一个外部主机均可通过该映射发送IP包到该内部主机。(类似于全双工模式) (2)限制性圆锥(Restricted Cone) : NAT把所有来自相同内部IP地址和端口的请求映射到相同的外部IP地址和端口。但是,只有当内部主机先向外部主机发送IP包,该外部主机才能向该内部主机发送IP包。(相当于单工模式) (3)端口限制性圆锥( Port Restricted Cone) :端口限制性圆锥与限制性圆锥类似,只是多了端口号的限制,即只有内部主机先向IP地址为aaa.bbb.ccc.ddd,端口号为P的外部主机发送1个IP包,该外部主机才能够把源端口号为P的IP包发送给该内部主机(只有 该端口 可以发送数据)。 来源: CSDN 作者: 梦接壤的地方 链接: https://blog.csdn.net/u014002667/article/details/53928089