记录这首次使用
首先我并不会写这些博客(平时都只是看别人写的哈哈)刚开始的引导页就着实吓了我一跳,好复杂!!!然后我发现其实也不是想象中的那么复杂(手动狗头)嘛,这是第一次写,为什么呢,因为,前阵子接触到了python的turtle库这个玩意,然后有了浓厚的兴趣,却也一直没有仔细的去学习了解它,正好放假了于是找来大佬的代码开示浅显的研究(渣渣)然后,我觉得我应该记录下其中遇到的一些问题,其实很多大佬讲的很明白了,所以我只是记录自己这个渣渣想了半天才搞懂的某些知识点。那么,game开始!
关于**circle()**函数
在这里基础的就照搬大佬所说的,方便以后若是回来看的话可以快速上手
turtle.circle(radius, extent=None, steps=None)
描述:以给定半径画圆
参数:
radius(半径):半径为正(负),表示圆心在画笔的左边(右边)画圆;
extent(弧度) (optional);
steps (optional) (做半径为radius的圆的内切正多边形,多边形边数为steps)。
extent为正则逆时针画弧,为负则顺时针画弧
然后在这里
这个分为顺时针画弧和逆时针画弧
根据我把turtle速度调至最慢所得出的结论:
(1) 若是顺时针画弧的话那么turtle的头应该朝向轨迹的相反方向
t.seth(-300)
t.circle(30, -65)
此为令turtle头朝向60°方向,然后向相反方向顺时针以半径30画弧度为65的弧,你可以想象是屁股在出墨水然后画出了线(笑)
(2)若是逆时针画弧则与上面相反,这个才符合正常思路,就是头朝哪往哪个方向开始画
t.seth(-60)
t.circle(30, 65)
此为令turtle头朝向-60°方向,逆时针画以30为半径弧度为65的弧线,这个时候就是头在前,头出墨水画出了线(笑)
那么这第一次的博客就记录到这里吧,暂时只有这么多需要记得,然后附上所研究的代码,留作备份,是一只pikachu
import turtle as t
def nose():
t.penup()
t.seth(90)
t.fd(100)
t.pendown()
t.begin_fill()
t.fillcolor('black')
t.seth(45)
t.fd(25)
t.seth(135)
t.circle(25,90)
t.seth(315)
t.fd(25)
t.end_fill()
def eyes(seth,fd,c):
t.penup()
t.seth(seth)
t.fd(fd)
t.pendown()
t.begin_fill()
t.fillcolor('black')
t.circle(50)
t.end_fill()
t.penup()
t.circle(50, c)
t.pendown()
t.begin_fill()
t.fillcolor('white')
t.circle(20)
t.end_fill()
def face(seth,fd):
t.penup()
t.seth(seth)
t.fd(fd)
t.pendown()
t.begin_fill()
t.fillcolor('red')
t.circle(70)
t.end_fill()
def lip():
t.penup()
t.seth(135)
t.fd(250)
t.pendown()
t.seth(-300)
t.circle(30, -65)
t.begin_fill()
t.fillcolor('Firebrick')
t.seth(165)
t.fd(140)
t.seth(195)
t.fd(140)
t.seth(360)
t.circle(30, -65)
t.penup()
t.seth(-60)
t.circle(30, 65)
t.pendown()
t.seth(-70)
t.fd(240)
t.circle(55, 140)
t.seth(70)
t.fd(240)
t.end_fill()
t.seth(-110)
t.fd(80)
t.begin_fill()
t.fillcolor('Firebrick1')
t.seth(120)
t.circle(120, 123)
t.seth(-70)
t.fd(165)
t.circle(55, 140)
t.seth(72)
t.fd(165)
t.end_fill()
def setting():
t.pensize(4)
#t.hideturtle()
t.setup(1000, 600)
t.speed(1)
t.screensize(bg='yellow')
def main():
setting()
nose()
eyes(160, 250, 60)
eyes(-9.5, 530, 230)
face(195, 600)
face(-11, 720)
lip()
t.done()
if __name__ =='__main__':
main()
仔细观察这个图片,此次记录的便是其嘴巴两个上扬的部分的嘴巴下面的弧线的绘制,可以深入了解一下