python中n角星畫法

2021-09-09 01:33:14 字數 993 閱讀 1218

import turtle

import math

n=eval(input(「請輸入邊個數:」))

l=eval(input(「請輸入邊長:」))

i=0#迴圈變數

if n%2==1:#奇數n角星的畫法

while i < n:

turtle.forward(l)

turtle.left(180 - (180 / n))

i+=1

turtle.done()

else :#偶數n角形畫法

n1 = n / 2 # n的一半

a = (180 * (n - 2) / n) # 正n邊形內角

b = 180 - a # n角形的內角

c = b / 2 # 長方形短邊與l圍城三角形的短邊的對角

d = 180 - (c * (n / 2 - 1))#l的對角

d1 = (d / 180) * math.pi#轉化為三角函式

c1 = (c / 180) * math.pi

e = (math.sin(c1) / math.sin(d1)) * l#長方形的短邊

while i < n1:

turtle.forward(l)

turtle.left(90)

turtle.penup()

turtle.forward(e)

turtle.pendown()

turtle.left(90)

turtle.forward(l)

turtle.left(180 - 180 / n1)

i+=1

turtle.done()

奇數n角星可以一筆畫出,偶數n角星看為n/2個長方形長邊組成。

找到短邊與l關係,找到旋轉角度即可。

五角星畫法

從小都畫不好的五角星原來有畫法 的,只要尺子和圓規就可以了 1.首先移動中心到將要畫的五角星中心 2.沿 x 軸移動起點 p1 到五角星一角所在的位置,如綠線所在右側終點 3.順時針旋轉座標系36度 4.再次沿 x 軸移動終點 p2 p2 到中心的距離小於 p1 到中心的距離,從而產生五角星凹處的效...

五角星的畫法

繪製五角星作為gdi 畫圖的乙個示例 這是從網上找的比較簡單的方法 void mydraw graphics g,point center,int radius 旋轉72 private point rotate72 point pt,point center 計算內五邊形畫空心五角星 今天畫五角星...

WPF畫N角芒星,正N角星

計算頂部三角形座標方法 1 2 獲取頂三角形座標 3 4 外接圓半徑 頂點到中心的距離 5 n角星6 左橫座標 7 縱座標8 又橫座標 9private void getcoordinate double r,int n,out double x1,out double y1,out double ...