触碰标题下面一行中“邵勇老师”查看所有文章;触碰“数学教学研究”, 关注本微信公众号(sx100sy)。本公众号内容均由邵勇本人独创,欢迎转发,但未经许可不能转载。特别声明,本人未曾授权任何网站(包括微博)和公众号转载邵勇公众号的内容。每周推送两到三篇内容上有份量的数学文章,但在行文上力争做到深入浅出。几分钟便可读完,轻松学数学。


有一座椭圆形的围城(准确来说,是一座横截面为椭圆形的直柱体)。这座城可是一件艺术品。它的内部如何如何我不想说,但它的外侧表面上整整一圈都是精美的浮雕和半嵌入式表演露台(我认为表演时它们就是活动的浮雕)。因为城墙很高,游客从地面观看就要仰视,这很累,看到的动的或静的浮雕也会失真。所以,围城的管理者们在围城的外围修建了一圈圆形的观光走廊。走廊的高度与城墙的腰围平齐,这样人们看到的浮雕和露台上的表演就真实很多。小明同学善于思考,他发现,不管走到观光走廊的什么位置,向围城看去,整个围城在他眼中的视角总保持90度。这个发现让他异常兴奋。回到学校,他把这个发现跟数学邵老师说了,邵老师说,我们数学课正好讲到椭圆这一内容,那么,下节课,我就给你和同学们讲一讲这个围城的故事。下面就是邵老师所讲的内容。

(1)首先用数学软件画一个椭圆步骤如下:画一个半径为r的圆,圆心设为F2(它将成为所画椭圆的一个焦点)。在圆内与点F2处于同一水平线上的某处取点F1(它将成为所画椭圆的另一焦点)。在圆周上取一点C。连接CF1,连接CF2。作CF1的中垂线,与CF2相交于点M。则随着圆周上点C在圆周上运动,点M也将运动,它的运动轨迹就是椭圆。如下图所示。这是一个焦点为F1和F2,长轴位于水平轴上且长轴长2a等于圆的半径r的椭圆。其中的直线DM为椭圆在点M处的切线。我们这样作出的曲线是椭圆的理由很简单:MF1+MF2=MC+MF2=CF2=圆的半径r=定长,即到两个定点的距离之和等于定长的点的轨迹是椭圆。这是作椭圆的基本方法之一。椭圆上的每一点都是可以用尺规作图法作出来的,把这些点用光滑的曲线连接起来就是椭圆。用数学软件可以做到让点连续运动,从而画出比较精确的椭圆。作椭圆上的点及使用软件画轨迹,同学们应该熟练掌握。我们常说的那种在两个钉子之间系一根绳子用笔绷紧绳子从而画椭圆的方法是一种机械方法。

(2)把图中CF1、CF2、MF1及切线DF擦掉。这时保留下来的有椭圆及它的两个焦点F1和F2。当然我们还保留下这个圆,它很重要,在以后常会用到。我们称这个圆为椭圆的准圆,它的半径等于椭圆的长轴长2a。【注意,准圆这个名称的定义有些混乱。网上查了一下,有些文章把下面将要推导出的切距圆叫做准圆。我认为这种叫法是不对的。准圆、准线中的“准”是基准、准备的意思。故有了准线可以画椭圆。同样有了准圆也可以画椭圆。而后面所说的切距圆明显是椭圆的副产品,虽然从切距圆也有办法反画出椭圆(后面会给出)】

(3)有了这个椭圆,接下来我们要作一个直角,让它的两条边分别与椭圆相切。然后,移动这个直角,观察直角顶点的运动情况。也就是说,用一个“直角卡尺”把椭圆“卡住“。然后,让”卡尺“保持这种状态并移动。最后我们来证明,直角顶点或直角卡尺顶点的运动轨迹就是一个圆。本文开始时所说的圆形观光走廊就是这么设计出来的。我们甚至可以求出这个圆的半径(后面会讲到)。

(4)既然直角两边都是椭圆的切线,那么显然,我们需要首先学会画椭圆的切线。可以先画出一条切线,然后再想办法画另一条。所以,下面我先教你如何过椭圆上的点画椭圆的切线,这也是很基本的技能,需要掌握(后面还会教你如何从椭圆外一点画椭圆的切线)。如下图所示,在刚才画好的椭圆上随便取一点M。连接F2M并延长,与准圆交于点C(注意,为了方便,我们这里就用与上图一致的字母标识各个点)。连接CF1。取CF1的中点D。作过点D和M的直线DM,则直线DM就是椭圆的切线(下图中红线),点M为切点。理由也很简单,这里就不阐述了。这一作图过程与前面作椭圆的过程是互逆的。

(5)接下来,以CF2为直径作一个圆(下图中只画了半个圆,浅紫色),与切线DM交于点P(还有另一交点,这里先不考虑)。【需要说明的是,点M位于直径CF2之上,所以,直线DM必定与所作圆相交;又因为切线DM上的点除切点外都在椭圆的外部,所以交点P必在椭圆之外。一个点只有位于椭圆之外,才有可能作出过这个点的椭圆切线,且是两条切线。有了这个说明,我们下面的操作也就可行了。】

(6)接下来,我们从椭圆外的点P作椭圆的切线。从椭圆外一点可以作两条椭圆的切线,我们已经有了一条切线(直线PM),下面再作另一条切线。前面我们讲的是给定椭圆上的一点作过这点的椭圆切线。下面借助此题,我们讲一讲过椭圆外的点如何作椭圆的切线。作法如下:以点P为圆心,以PF1为半径作圆,与准圆相交于两点,其中一点就是前面出现过的点C,我们不再考虑它,还有另一交点,我们设其为点E【注意,准圆是以点F2为圆心的,所以,我们就要以另一焦点F1与点P的连线为半径作圆;图中所示点P在椭圆之外,故点P到两个焦点的距离之和大于2a,又点P在准圆之内,所以所作的这个圆必定与准圆相交;如果点P在准圆之外,则以点P与准圆内的点F1的连线为半径所作之圆就更是一定与准圆相交了】。我们继续作图。连接点F2(位于椭圆内部)与点E(位于椭圆外部),线段EF2与椭圆交于点N。连接PN。则PN所在直线就是所要求作的第二条切线。点N为切点。

(7)现在我们已经作出从一点(点P)出发的两条椭圆切线(PM和PN),也就是说,我们作出了一个角(∠MPN),如上图所示。下面只需证明∠MPN是直角,就达到了我们的要求。这涉及一个定理:椭圆外任意一点到椭圆所作的两条切线与椭圆的两个焦点构成的视角相等。用上图来说明就是,切线PM与PF1的夹角等于切线PN与PF2的夹角,即图中的∠1=∠2。这个定理的证明不难但写起来有些复杂,这里就不给出了。根据切线PM的作图过程可知∠1=∠3。从而∠2=∠3。再根据作图知∠CPF2是直角。把∠CPF2逆时针转过∠2大小的一个角度后,就得到∠MPN。所以,∠MPN也是直角。最终,我们找到了点P,从它看椭圆,视角为直角。

(8)以上就是作一个把椭圆夹在其中的直角的全过程。可以作出无穷多的这样的直角,这些直角的顶点将构成一条曲线。那么,这条曲线是什么曲线呢?下面,我们就来研究这个问题,具体来说,就是研究点P的运动轨迹。去掉一些不用的线段,再增加一些辅助线,如下图所示。其中,点O为线段F1F2的中点。因为三角形CPF2是直角三角形,所以,

因为CP=PF1,而CF2=2a(椭圆长轴长),所以

在三角形F1PF2中,OP为边F1F2上的中线。我们知道,中线与边之间有下面的定理存在:三角形两条边的平方和等于第三边的一半的平方的两倍再加上中线的平方的两倍。于是,在三角形F1PF2中,就有:

因为OF1为椭圆焦距2c的一半,即OF1=c,所以,综合以上两式,得到

再考虑到

所以,由上面两式可以得到:

这说明,点P到点O的距离等于一个常数。所以,点P的运动轨迹是一个圆(下图中蓝色圆)。这个圆叫做切距圆

所以,我们要作出这个切距圆,只需作一个以F1F2的中点为圆心,以长半轴与短半轴的平方和的平方根为半径的圆即可。这个半径可以如下图所示获得:

下面的动画显示,与椭圆外切的矩形的顶点的轨迹就是这个切距圆。

【注:切距圆这个词我认为应该是切矩圆,即矩形的“矩”而非距离的“距”,因为这个圆是直角顶点生成的,而矩形的内角是直角。这个圆是椭圆外切矩形顶点的轨迹,与距离无关。构成“切矩圆”的这三个字,顺序上体现了从椭圆到圆的过程:椭圆→与椭圆相的直角→与椭圆相切的形,矩形顶点的轨迹。】

(9)上面第(1)到(8)条所讲的内容是知道椭圆作它的切矩圆。下面我们简单介绍一下如何从一个已知圆及位于圆内且关于圆心对称的两个点(椭圆的两个焦点)去画出这个椭圆。这是可以办到的,因为a和b的平方差等于c的平方,是定值;a与b的平方和是所给圆的半径的平方,也是定值。所以,a和b也就随之确定。从而椭圆是确定的。

如上图所示,连接PF1和PF2。作∠F1PF2的平分线PP''。以点P为顶点,以PP''为对角线作一直角(图中绿角)。这个直角就是下面动画中的那个运动的直角。那么,这个直角扫过平面后,没有扫到的区域就是一个以椭圆为边界的区域。请看下面的动画,中间白色椭圆区域就是直角的边永远扫不到的地方。

能否设计出一个机械装置来实现上述过程呢?请您思考。小明说他想回家后动手试一试!很好,既动脑,又动手!

本期涉及了准圆的概念,本应该对准圆展开来讲,但本期内容已经很多了,所以放到下期。

opengl 画椭圆_椭圆围城与圆型观光步道相关推荐

  1. 计算机图形学椭圆_椭圆算法| 计算机图形学

    计算机图形学椭圆 椭圆的性质 (Properties of ellipse) Ellipse is defined as the locus of a point in a plane which m ...

  2. python 画椭圆_一篇文章教会你使用SVG ellipse 画椭圆

    点击上方" 前端进阶学习交流 ",进行关注 回复"前端"即可获赠前端相关学习资料 今 日 鸡 汤 熊咆龙吟殷岩泉,栗深林兮惊层巅. SVG元素用于绘制椭圆.椭圆 ...

  3. 编写一个Applet在屏幕上画椭圆,椭圆的大小和位置由鼠标决定

    编写一个Applet在屏幕上画椭圆,椭圆的大小和位置由鼠标决定 package p1;import java.applet.Applet; import java.awt.Dimension; imp ...

  4. java左手画圆右手画方_左手画圆,右手画方,有两个截然不同的说法,你知道吗?...

    说到金庸先生的武侠小说,其中对于中国古典传统文化的引用,神乎其技.小说中的各种武侠招式,我们都可以从古典文籍中找到影子.比如丐帮帮主洪七公,传授给穆念慈的逍遥游,我们就会联想到庄子的<逍遥游&g ...

  5. 【OpenGL C++】画一个空心汉字和一个圆,并填充汉字(中点画线法,中点画圆法,种子填充法)

    内容:画一个空心汉字和一个圆 设计一个画任意直线和圆的算法,可选所学的任一图形扫描转换算法(中点或bresenham算法),不能使用任何画线/画圆的API: 使用画线算法实现空心汉字的绘制,汉字必须为 ...

  6. python canvas画弧度_「万圣节教程」不给糖就捣乱,用Python绘制有趣的万圣节南瓜怪...

    关于万圣节 万圣节又叫诸圣节,在每年的11月1日,是西方的传统节日;而万圣节前夜的10月31日是这个节日最热闹的时刻.在中文里,常常把万圣节前夜(Halloween)讹译为万圣节(All Saints ...

  7. 用php画一个蓝底红色的圆_php 怎么画一个圆?

    这篇文章主要介绍了php绘制圆形的方法,详细分析了php绘制图形的基本步骤与绘制圆形的实现方法,需要的朋友可以参考下 本文实例讲述了php绘制圆形的方法.分享给大家供大家参考.具体实现方法如下: ph ...

  8. opengl画圆柱体、圆锥等并使用四元数旋转

    opengl画圆锥和圆柱体 具体资源欢迎下载:https://download.csdn.net/download/qq_32563773/13077923 画圆锥 如要画出想画的立方体,必须计算出来 ...

  9. OpenGL画三角形

    目录 OpenGL窗口 OpenGL三角形 OpenGL画圆 OpenGL窗口 [代码总览] glfw初始化.配置.创建窗口 glad初始化 渲染循环,检测输入并给窗口涂颜色 清理操作 // 渲染循环 ...

最新文章

  1. 联机事务处理OLTP(on-line transaction processing)和联机分析处理OLAP(On-Line Analytical Processing)...
  2. apache 配置rewrite模块,URL中隐藏index.php
  3. 图的广度优先搜索(bfs)以及深度优先搜索(dfs)
  4. 简单的Twitter:Heroku上的Play框架,AJAX,CRUD
  5. labelme标注文件转coco json,coco json转yolo txt格式,coco json转xml, labelme标注文件转分割,boxes转labelme json
  6. 后缀数组的学习(一):学习的预备知识
  7. opengl 关于glGenBuffers函数没有定义
  8. .Net Core 图片上传FormData和Base64
  9. SQL创建触发器以及触发器的使用实例+详解
  10. uniapp 空格怎么打?
  11. 火影忍者“背后的故事”
  12. 为什么二分K-均值比K-均值的聚类效果更好?
  13. Linux下查找指定日期的文件
  14. linux怎么下载vi,Linux下Vim的使用
  15. 春招,秋招面试题总结
  16. 一转头如释重负,一瞬间心如刀绞
  17. 公司现有一个工作组workgroup,需要添加samba服务器作为文件服务器,并发布共享目录
  18. Linux网络编程基础API
  19. 使用frp内网穿透,用windows远程桌面连接
  20. 【刷题记录】【一维数组】魔术师的猜牌术。

热门文章

  1. 大数据相加_c 大数据相加 class
  2. 网络创业者莱恩-福克斯:最后一分钟的奇迹
  3. 【JSP课程设计】个人信息管理系统(代码保姆级)
  4. 1427.分解质因数
  5. java模仿微博代码_杨老师课堂_Java核心技术下之控制台模拟微博用户注册案例
  6. 简洁的python复习(原创基础上有部分改动,持续更新)
  7. 如何做口碑营销?企业实施网络口碑营销的技巧
  8. 一个步骤结束机房电脑红蜘蛛的控制
  9. 树莓派2使用360wifi ,小米wifi
  10. word批注怎么删除计算机名字,【2人回答】Word批注中的名字怎么删除?-3D溜溜网...