proc fiveStar {len} {
set x0 3.0
set y0 3.0
#set len 2.0
set pi 3.141592654
set x1 [expr $x0 + $len*cos(36*$pi/180)]
set y1 [expr $y0 - $len*sin(36*$pi/180)]
PlacePolyline $x0 $y0 $x1 $y1
set x2 [expr $x0 + 2*$len*cos(36*$pi/180)]
set y2 $y0
PlaceNextPolylinePoint $x2 $y2
set x3 [expr $x2 - $len*sin(18*$pi/180)]
set y3 [expr $y2 + $len*cos(18*$pi/180)]
PlaceNextPolylinePoint $x3 $y3
set x4 [expr $x3 - $len]
set y4 $y3
PlaceNextPolylinePoint $x4 $y4
PlaceNextPolylinePoint $x0 $y0
PlaceNextPolylinePoint $x2 $y2
PlaceNextPolylinePoint $x4 $y4
PlaceNextPolylinePoint $x1 $y1
PlaceNextPolylinePoint $x3 $y3
PlaceNextPolylinePoint $x0 $y0
EndPlace
}
将代码拷贝到文本文件,命名为test.tcl,并将文件放置到工程本地目录下,在Command Window输入source test.tcl,加载文件。
加载完文件后,在Command Window下输入fiveStar 0.1,即绘制指定边长的五边形。
下图是分别为长度为3.0、2.0、1.0、0.5的五边形。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删