精华内容
下载资源
问答
  • 画正多边形

    2012-07-28 17:22:43
    C#windows画图板中,可以画正多边形,满足自定义边数和大小
  • Python turtle 画正多边形和多角形

    千次阅读 2020-02-03 20:51:35
    Python turtle 画正多边形和多角形作正多边形多角形计算内角画图代码作棱角分明的多角形观察棱角分明的多角形简洁的结论代码高斯与十七边形作出十七角形思考 原创文章,转载请申明出处 作正多边形 n边形...


    原创文章,转载请申明出处

    作正多边形

    正n边形的内角:x = (n - 2) * 180° / n

    import turtle
    
    # 正n边形参数
    n = 7
    x = (n - 2) * 180 / n
    
    # 调整画笔速度
    turtle.speed(1)
    # 调整画笔颜色
    turtle.color('green')
    # 调整画笔宽度
    turtle.pensize(3)
    
    for _ in range(n):
    	# 画笔向前移动
    	turtle.forward(100)
    	# 画笔方向顺时针旋转
    	turtle.right(180 - x)
    
    turtle.done()
    

    在这里插入图片描述

    作正多角形

    最简单的多角形就是五角星形
    五角星形

    计算内角

    下面是我的方法,如果同学有自己的方法,欢迎在评论区分享。
    五角星形说明

    如图所示,五角星中间有个正五边形,计算得正五边形的内角为108°
    图中的小三角形是等腰三角形,所以五角星的锐内角为(180 - 2*72) = 36°
    正六边形,正七边形……同理。
    所以得到正n角形锐内角公式:z = 2x - 180 其中:x = (n - 2) * 180 / n
    化简得:z = (1 - 4/n) * 180°

    画图代码

    import turtle
    
    # 正n角形参数
    n = 7
    # 计算正n边形内角
    x = (n - 2) * 180 / n
    # 计算正n角形锐内角
    z = (1 - 4/n) * 180
    
    # 调整画笔速度
    turtle.speed(1)
    # 调整画笔颜色
    turtle.color('green')
    # 调整画笔宽度
    turtle.pensize(3)
    
    for _ in range(n):
        """每次画一个角"""
        turtle.forward(50)
        turtle.right(180 - z)
        turtle.forward(50)
        turtle.left(180 - x)
    
    turtle.done()
    

    正七角形

    作棱角分明的多角形

    如果正n角形,每次都把两个相邻顶点连起来,那么随着n的增加,图像将趋近于

    正19角形图如下:
    正19边形
    所以,我们要让两个最远的顶点连起来

    观察棱角分明的多角形

    棱角分明的正七角形
    棱角分明的正9角形
    在这里插入图片描述

    不妨大胆猜测规律:
    n为奇数,棱角分明的正n边形锐顶角:w = (n-1)/2 * x - (n-3)/2 * 180
    又 x = (n - 2)*180 / n
    化简得:w = 180 / n
    对于n为偶数,画图分析后,得出结论:w = 360 / n

    简洁的结论

    棱角分明的正n角形锐顶角w
    w = 180 / n (n为奇数)
    w = 360 / n (n为偶数)
    统一公式:w = 90/n * (3+(-1)n)

    代码

    import turtle
    
    # 正n角形参数
    n = 7
    # 计算棱角分明的正n角形锐内角
    w = 90/n * (3 + (-1)**n)
    
    # 调整画笔速度
    turtle.speed(3)
    # 调整画笔颜色
    turtle.color('green')
    # 调整画笔宽度
    turtle.pensize(3)
    
    for _ in range(n):
        """每次一条边加转向"""
        turtle.forward(150)
        turtle.right(180 - w)
    
    turtle.done()
    

    棱角分明的正7角形

    代码存在的问题

    代码根据锐顶角来画图,而锐顶角由结论来计算。

    棱角分明的正n角形锐顶角w
    w = 180 / n (n为奇数)
    w = 360 / n (n为偶数)

    存在奇数n1,偶数n2使得w1==w2。如3和6、5和10、7和14……
    这些奇偶对得到的w相同,所以画出的图形相同。
    想象中,正10角形是这样的:
    正10角形
    实际上是这样的:
    画出来的正10角形
    问题分析

    1. 只看奇数,所有的奇数中不可能产生相同的w。
    2. 偶数分为两类:是4的倍数不是4的倍数
    3. 不是4的倍数,360 / n 约去2后,变为 180 / 奇数,必存在一奇数的w与之相等。所以,程序无法画出(可以另写程序画出)。

    高斯与正十七边形

    李永乐老师讲正十七边形

    下图是网友提供的高斯墓碑图:
    热心网友提供的高斯墓碑图

    作出正十七角形

    作出正17角形

    总结

    turtle画图形,方向旋转360°时,回到原来的方向,可以以此来计算循环画图次数。
    画作多边形时,很多结论都是通过画图,肉眼观察出来的,缺乏严密证明。
    最后,如果同学们发现文中错误,欢迎指正。

    展开全文
  • flash MX中怎么画正多边形 一用Transform 面板 我们以五边形为例 1新建一文件在场景任一条直线按 F8转换为影片把中心定为左上角 如图1所示 图1中心定在左上角 2选中直线按ctrl+T调出Transform 面板并在Rotate框...
  • python : turtle 画正多边形

    万次阅读 2017-04-06 23:31:37
    python turtle 画多边形

    数学:180 角度 = math.pi

    例如:画正3边形

    draw_n.py 3  100

    例如:画正8边形

    执行 draw_n.py 8  100

    # -*- coding: cp936 -*-
    import os, sys
    import turtle
    import math
    
    vlist =[]
    
    def p_line(t, n, length, angle):
        """Draws n line segments."""
        for i in range(n):
            t.fd(length)
            vlist.append(t.pos())
            t.left(angle)
     
    def polygon(t, n, length):
        """Draws a polygon with n sides."""
        angle = 360.0/n
        p_line(t, n, length, angle)
    
    def draw(tt, n, L):
        X,Y = tt.pos() # start_pos
        polygon(tt, n, L)
     
        R = L/2/math.sin(math.pi/n) # 半径  
        r = R*math.cos(math.pi/n)   # 边心距 
        # 求中心点坐标(x,y)    
        x = L/2 +X
        y = r + Y
        tt.goto(X,Y)  # start_pos
        for pos in vlist:
            tt.goto(x,y)
            tt.pendown()
            tt.goto(pos)
            tt.penup()
        print x,y
        # 画内切圆
        tt.goto(x,0)
        tt.pendown()
        tt.circle(y,360)
        tt.penup()
        # 画外接圆
        tt.goto(x,y-R)
        tt.pendown()
        tt.circle(R,360)
        tt.penup()
    
        
    # main
    if len(sys.argv) ==3:
        n = int(sys.argv[1])   # n 边形
        L = float(sys.argv[2]) # 边长
    else:
        print 'usage: draw_n.py int Length'
        sys.exit(4)
    
    if n < 3:
        print 'Error: n < 3 '
        sys.exit(4)  
    
    if n > 36:
        print 'Error: n > 36 '
        sys.exit(4)    
    
    window= turtle.Screen() #creat a screen
    window.bgcolor("white")
    tt = turtle.Turtle()
    tt.color("black")
    tt.width(1)
    tt.speed(10)
    draw(tt,n,L)
    window.exitonclick()
    



    展开全文
  • 数学九年级上人教新课标24.3画正多边形习题精选精选.doc
  • 小学信息技术第三册 画正多边形(二)选修教案 苏科版.doc
  • 小学信息技术第三册 画正多边形(一)选修教案 苏科版.doc
  • 小学教案
  • python中turtle模块画正多边形

    千次阅读 2016-10-25 14:01:29
    画正多边形主要是计算多边形每个角度对应的外角的度数,计算出来这个度数即可画图,相对来说非常简单 以六边形为例 #!/usr/bin/python #coding: UTF-8 import turtle import time t = turtle.Pen() for i in ...

    画正多边形主要是计算多边形每个角度对应的外角的度数,计算出来这个度数即可画图,相对来说非常简单

    以正六边形为例

    #!/usr/bin/python
    #coding: UTF-8
    
    import turtle
    import time
    
    t = turtle.Pen()
    
    for i in range(6):
    	t.forward(100)
    	t.left(60)
    	
    time.sleep(3)
    

    执行结果


    展开全文
  • Scratch案例-正方形

    2020-07-22 17:22:03
    在舞台中央绘制一个边长为200的正方形,要求: 1、围绕舞台中心绘制正多边形,均匀分布在四个象限中 2、正方形边长为200个单位,线条粗细、颜色自定 3、利用画笔绘制正方形,不能有多余的线条
  • matlab绘制正多边形

    千次阅读 2020-11-29 04:56:02
    n是边数;为什么 sin(t1)为横轴,cos(t1)为纵轴,之后正多边形就出来了呢,这都是数学上的东西;

        n是边数;为什么 sin(t1)为横轴,cos(t1)为纵轴,之后正多边形就出来了呢,这都是数学上的东西;

    展开全文
  • python 任意多边形

    千次阅读 2020-09-23 15:07:27
    urtle是Python内置的图形库,在这里,我们需要知道正多边形内角计算公式:内角=(边数-2)*180/边数 可选项:提示输入一种颜色,进行填充。 本程序运行环境是Python3的IDLE。 ''' 遇到问题没人解答?小编创建了一个...
  • h5 Canvas正多边形绘制

    千次阅读 2019-03-23 14:18:16
    这篇文章主要就是说明如何绘制多边形. &#10; See the Pen h5Polygon by suwu150&#10; (@suwu150) on CodePen.&#10; 上述代码,我们进行绘制了一组根据时间进行变化的生成的多边形,通过方法...
  • 用Scratch绘制正多边形

    千次阅读 2019-11-08 10:43:40
    首先一个三角形,则需要让角色移动一定的步数后,旋转3次,每次旋转的角度为360/3=120°,然后落笔。 正方形的画法和三角形类似,让角色移动一定的步数,旋转4次,每次旋转的角度为360/4=90°,然后落笔。 ...
  • Python 绘制正多边形

    2021-06-10 11:34:35
    n = int(turtle.numinput("输入正多边形的边数","边数")) def drawShape(color1): turtle.seth(0) # 0度 turtle.pencolor(color1) # 颜色 for m in range(1,n+1): turtle.pendown() turtle.forward
  • 如何一个正多边形

    千次阅读 2016-12-13 10:46:15
    场景给定一个指定的正方形的区域,要求在该区域内一个N边形(三角形、正方形、五边形……) public static void drawPolygon (RectF rect, Canvas canvas, Paint p, int n) { // draw…… }分析要用到
  • L EDIT 绘制多边形 绘制文字 C代码
  • 上述代码是如何绘制一个四边形,但若是绘制等边三角形、五边形、十边形等正多边形该怎么修改代码呢? 找一找其中的规律,循环次数代表边数,移动步数代表边长,而右转度数x循环次数=360°(360°为任意凸...
  • 使用Turtle画多边形总结

    千次阅读 2020-03-28 16:37:39
    使用Turtle画多边形总结 说明:下方所有的绘制都是满足一笔画的,因为一笔画才总结于此,但是我感觉turtle的意义应该在于起笔落笔和循环,加上笔者学的不精,全为个人看法,所以提前说明。 多边形画法总结 方法一:...
  • 今天小编就为大家分享一篇关于易语言在画板中出多个顶点相连组成多边形的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
  • 主要为大家详细介绍了OpenCV绘制正多边形的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 资源介绍:源码实现了数字中圆内接正多边形的画法。资源作者:
  • Python使用matplotlib绘制正多边形逼近圆周 对于正多边形,如果边的数量足够多,可以无限接近圆周 参考代码: import numpy as np import matplotlib.pyplot as plt from matplotlib.widgets import Slider, ...
  • 实验1-从点云中重建多边形边界 实验2-计算多边形域的近似中间轴 实验3-将2D网格变形为修改后的边界 1.加载数据。 要变形的网格由trife,xfe,yfe定义,它是面-顶点格式的三角剖分。 2.构造背景三角剖分-代表网格...
  • Scratch基础(五):画多边形

    千次阅读 2020-08-03 21:32:24
    学习使用Scratch画多边形 1、Scratch在【添加扩展】中有【画笔】组件。 可以很方便的绘制如下的图形。 图形特点: (1)十边形 (2)每一条边的颜色在发生变化 (3)每个角上都有一个【角色】的复制品 2、采用...
  • Visio 如何再次编辑之前好的任意多边形,避免重
  • 实现了MFC框架下,基于opengl直线,圆,多边形以及填充的算法。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 42,388
精华内容 16,955
关键字:

如何画正多边形