【六一 iKun】Happy LiuYi, iKuns

news2024/11/25 18:27:21

六一了,放松下。

Python iKun

from turtle import *
screensize(1000,1000)
speed(6)

#把衣服画出来,从右肩膀开始
    #领子
penup()
goto(-141,-179)
pensize(3)
fillcolor("black")
pencolor("black")
begin_fill()
pendown()
left(1)
forward(336)
circle(-20,100)
right(30)
forward(22)
right(20)


seth(-50)
circle(-200,25)
seth(-180)
forward(420)#最下面的横线
right(95)
circle(-200,27)
left(90)
circle(-12,150)
end_fill()

#画衣服里的线
pensize(6)
pencolor("white")
penup()
goto(-148,-202)
pendown()
seth(-45)
circle(-170,35)
penup()

goto(200,-214)
pendown()
seth(230)
circle(170,32)
penup()
    #领子里的线

goto(-148,-202)
pendown()
seth(-17)
forward(200)
left(15)
forward(70)
left(30)
forward(80)
left(12)
forward(30)
penup()
    #拉链
goto(100,-265)
pendown()
seth(-90)
forward(100)
penup()

#############开始画头#########

fillcolor("#ffe26c")
goto(-133,-183)
begin_fill()
pendown()
pencolor("black")
pensize(3)
seth(0)
forward(204)
right(25)
forward(40)

circle(60,70)

circle(-70,30)
left(20)
circle(150,55)

seth(90)
forward(80)
penup()


#画右脸
goto(-133,-183)
pendown()
seth(150)
circle(-150,60)

seth(90)
forward(50)
circle(-240.5,171.4)

end_fill()
penup()


#画五官
#右脸蛋
goto(-50,-86)
pencolor("red")
fillcolor("red")
begin_fill()
pendown()
seth(90)
circle(60,360)
end_fill()
penup()
##########眼睛
goto(81,32)
pendown()
pencolor("black")
fillcolor("white")
pensize(4)
begin_fill()
circle(70,360)
end_fill()
begin_fill()
circle(-70,360)
end_fill()
penup()

goto(59,40)
pendown()
begin_fill()
fillcolor("black")
circle(10,360)
end_fill()
penup()

goto(202,40)
pendown()
begin_fill()
circle(10,360)
end_fill()
penup()
#####画嘴

goto(21,-44)
fillcolor("#db8b68")
pencolor("#592404")
pensize(7)
begin_fill()
pendown()
seth(30)
circle(-120,60)
circle(-44,126)
circle(-120,56)
circle(-42,115)
end_fill()
penup()

goto(28,-85)
pendown()
seth(-32)
circle(110,66)
penup()

#画左脸蛋
goto(252,-42)
pendown()
pencolor("red")
fillcolor("red")
begin_fill()
seth(-76)
circle(-100,50)
circle(-26,130)
circle(-100,46)
circle(-30,120)
end_fill()
penup()


#画左侧头发

goto(265,16)
pendown()
pencolor("#584e4f")
fillcolor("#6e676e")
begin_fill()
seth(51)
forward(56)
seth(90)
forward(75)
left(46)
forward(170)
left(28)
forward(130)
seth(180)
circle(50,180)
right(10)
forward(30)
right(45)
forward(130)
seth(9.5)
circle(-100,76)
end_fill()
penup()

####画右侧头发
goto(-208,-41)
pendown()
begin_fill()
seth(200)
forward(50)
right(99)
forward(133)
right(48)
forward(130)
right(12)
forward(100)
right(19)
forward(75)
seth(0)
forward(15)
circle(-42,160)
seth(-91)
forward(150)
seth(170)
forward(50)
left(80)
forward(30)
right(50)
forward(50)
left(11)
forward(80)
end_fill()

exitonclick()

代码解释:
这段代码使用Python的Turtle模块来绘制一个人物的头像。

代码首先导入了Turtle模块的所有内容,然后设置屏幕的尺寸和绘制速度。

接下来,通过一系列的Turtle函数调用,绘制了人物的衣服,包括领子、衣服内部的线条和拉链。然后开始绘制头部,包括头部的形状和颜色。

继续绘制五官,包括脸颊、眼睛和嘴巴。最后绘制了头发部分,包括右侧和左侧的头发形状和颜色。

最后一行的exitonclick()函数用于在点击屏幕时退出绘图。

Matlab iKun

在这里插入图片描述

function kun()

timeDelay = 0.5
% figure('Color','w','Position',[487.5000  431.0000  798.5000  575.0000])
figure('Color','w')
text(-10,40,'f(只因)','FontSize',20)
hold on
axis equal
set(gca,'XLim',[-40 40],'YLim',[-15 40],'FontName','Times')


f = @(x,y) x.^2/16 + y.^2/8 - 1;
mouth1 = fimplicit(f,'-k','LineWidth',2);drawnow;pause(timeDelay)
f = @(x,y) x.^2/16 + y.^2/2 - 1;
mouth2 = fimplicit(f,'-k','LineWidth',2,'YRange',[-10 0]);drawnow;pause(timeDelay)

f = @(x,y) (x+5).^2 + (y-8).^2 - 16;
eye1 = fimplicit(f,'-k','LineWidth',2);drawnow;pause(timeDelay)
f = @(x,y) (x-4.5).^2 + (y-8).^2 - 16;
eye2 = fimplicit(f,'-k','LineWidth',2);drawnow;pause(timeDelay)
f = @(x,y) (x-6).^2 + (y-8).^2 - 1;
eye3 = fimplicit(f,'-k','LineWidth',5);drawnow;pause(timeDelay)
f = @(x,y) (x+4).^2 + (y-8).^2 - 1;
eye4 = fimplicit(f,'-k','LineWidth',5);drawnow;pause(timeDelay)

face1 = draw_offaxis_ellipse(-2,6,16,14,0,[0 pi+1.6/6*pi]);drawnow;pause(timeDelay)
face1.LineWidth = 2;
face1.Color = 'k';
face1_2 = draw_offaxis_ellipse(-2,6,16,14,0,[-1.6/6*pi 0]);drawnow;pause(timeDelay)
face1_2.LineWidth = 2;
face1_2.Color = 'k';
face2 = draw_offaxis_ellipse(-10,0,4,3,pi*0.55*pi,[0 2*pi]);drawnow;pause(timeDelay)
face2.LineWidth = 1;
face2.Color = 'r';
face3 = draw_offaxis_ellipse(10,0,3,2,-pi*0.55*pi,[0 2*pi]);drawnow;pause(timeDelay)
face3.LineWidth = 1;
face3.Color = 'r';

x = -15:0.1:12;
clothes1 = plot(x,0.5*sin(x/3+pi/6+pi/2)-4,'-k','LineWidth',2);drawnow;pause(timeDelay)
x = -13:0.1:10;
clothes2 = plot(x,0.1*sin(x/3+pi/6+pi/2)-8,'-k','LineWidth',2);drawnow;pause(timeDelay)
clothes3 = plot([clothes1.XData(1) clothes2.XData(1)],[clothes1.YData(1) clothes2.YData(1)],'-k','LineWidth',2);drawnow;pause(timeDelay)
clothes4 = plot([clothes1.XData(end) clothes2.XData(end)],[clothes1.YData(end) clothes2.YData(end)],'-k','LineWidth',2);drawnow;pause(timeDelay)
clothes5 = draw_offaxis_ellipse(-1.5,-19.5,15,18,0,[pi*3.2/4 2*pi]);drawnow;pause(timeDelay)
clothes5.LineWidth = 2;
clothes5.Color = 'k';
clothes5_2 = draw_offaxis_ellipse(-1.5,-19.5,15,18,0,[0 pi*0.2]);drawnow;pause(timeDelay)
clothes5_2.LineWidth = 2;
clothes5_2.Color = 'k';

x = -13:0.1:-5;
clothes6 = plot(x,-(x+13).^4/500-8,'-k','LineWidth',2);
x = -13.5:0.1:-5.5;
clothes7 = plot(x,-(x+13).^4/400-9,'-k','LineWidth',2);
x = 5:0.1:13;
clothes8 = plot(x-3,-(13-x).^4/500-8,'-k','LineWidth',2);drawnow;pause(timeDelay)
x = 5.5:0.1:13.5;
clothes9 = plot(x-3,-(13-x).^4/400-9,'-k','LineWidth',2);drawnow;pause(timeDelay)
clothes10 = draw_offaxis_ellipse(-13.3,-8.5,0.5,0.5,pi/3,[pi/6 pi*1.2]);drawnow;pause(timeDelay)
clothes10.LineWidth = 2;
clothes10.Color = 'k';
clothes11 = draw_offaxis_ellipse(10.5,-8.5,0.5,0.5,pi+pi/3,[pi/7 pi*1.3]);drawnow;pause(timeDelay)
clothes11.LineWidth = 2;
clothes11.Color = 'k';

basketball1 = draw_offaxis_ellipse(-12,-10,10,10,pi*0.63,[0 pi]);drawnow;pause(timeDelay)
basketball1.LineWidth = 2;
basketball1.Color = 'k';
x = -21.5:0.1:-10;
basketball2 = plot(x,-(x+22).^3/25-8,'-k','LineWidth',1.5);
basketball2_2 = plot(x,-(x+22.3).^3/25-8.3,'-k','LineWidth',1.5);drawnow;pause(timeDelay)
x = -20.5:0.1:-14;
basketball3 = plot(x,-(x+22).^2/15-5,'-k','LineWidth',1.5);
basketball3_2 = plot(x,-(x+22.3).^2/15-5.3,'-k','LineWidth',1.5);drawnow;pause(timeDelay)
x = -19.5:0.1:-14;
basketball3 = plot(x,(x+18).^2/15-4,'-k','LineWidth',1.5);drawnow;pause(timeDelay)
basketball3_2 = plot(x,(x+18.3).^2/15-4.3,'-k','LineWidth',1.5);drawnow;pause(timeDelay)

hair1 = fplot(@(x)  -(abs(x+2)-5).^2/18 + 25,[-22 17]);drawnow;pause(timeDelay)
hair1.LineWidth = 3;
hair1.Color = 'k';
hair2 = fplot(@(x)  -(abs(x+2)-3).^2/20 + 23,[-21 -18]);drawnow;pause(timeDelay)
hair2.LineWidth = 2;
hair2.Color = 'k';
hair2_2 = fplot(@(x)  -(abs(x+2)-3).^2/20 + 23,[14 16.5]);drawnow;pause(timeDelay)
hair2_2.LineWidth = 2;
hair2_2.Color = 'k';
hair3 = fplot(@(x)  -(abs(x)-4).^2/5 + 20,[2 10]);drawnow;pause(timeDelay)
hair3.LineWidth = 2;
hair3.Color = 'k';
hair4 = fplot(@(x)  -(abs(x-2)-4).^2/3 + 21,[-8 -2]);drawnow;pause(timeDelay)
hair4.LineWidth = 2;
hair4.Color = 'k';
hair5 = fplot(@(x)  -(abs(x+2)-3).^2/15 +19,[-19 -13]);drawnow;pause(timeDelay)
hair5.LineWidth = 2;
hair5.Color = 'k';
hair6 = plot([-22 -19],[12.5 12.7],'-k','LineWidth',2);drawnow;pause(timeDelay)
hair7 = plot([-21 -16],[10.2 10.8],'-k','LineWidth',2);drawnow;pause(timeDelay)
hair8 = plot([-19 -14],[6.2 8],'-k','LineWidth',2);drawnow;pause(timeDelay)
hair9 = plot([-8 -10],[9 13],'-k','LineWidth',2);drawnow;pause(timeDelay)
hair10 = plot([-14 -12],[8 12],'-k','LineWidth',2);drawnow;pause(timeDelay)
hair11 = plot([-10 -12],[12 12],'-k','LineWidth',2);drawnow;pause(timeDelay)
hair12 = plot([10 15.5],[12.9 12],'-k','LineWidth',2);drawnow;pause(timeDelay)
hair13 = plot([17 16.5],[14.1 11],'-k','LineWidth',2);drawnow;pause(timeDelay)

necklace1 = fplot('0.45*abs(x+1.8)-11.5',[-9.1 5.7]);drawnow;pause(timeDelay)
necklace1.LineWidth = 1;
necklace1.Color = 'k';
necklace2 = fplot('0.45*abs(x+1.8)-12',[-8.5 5.5]);drawnow;pause(timeDelay)
necklace2.LineWidth = 1;
necklace2.Color = 'k';
necklace3 = draw_offaxis_ellipse(-2,-13,1,1.5,0,[0 2*pi]);drawnow;pause(timeDelay)
necklace3.LineWidth = 3;
necklace3.Color = 'k';
end


function h = draw_offaxis_ellipse(cx,cy,a,b,theta,range)

% theta = pi/4;
% range = [0 2*pi];

t = linspace(range(1),range(2),100);
x = cos(t)*a;
y = sin(t)*b;

rotatematrix = [cos(theta) -sin(theta);sin(theta) cos(theta)];
rotatedxy = rotatematrix*[x;y];

h = plot(rotatedxy(1,:)+cx,rotatedxy(2,:)+cy);

end

这段代码定义了一个名为"kun"的函数,用于绘制一个人物的头像。

函数首先设置了一个时间延迟变量timeDelay为0.5,并创建了一个白色背景的绘图窗口。

接下来,函数使用一系列的Turtle函数来绘制人物的头像,包括绘制嘴巴、眼睛、脸部等部分。每绘制一个部分后,通过drawnow函数和pause函数实现绘图的实时显示和暂停一段时间,以便观察绘制的过程。

在函数中还定义了一个名为draw_offaxis_ellipse的辅助函数,用于绘制一个偏离轴心的椭圆。该函数接受中心坐标(cx,cy)、长轴(a)、短轴(b)、旋转角度(theta)和绘制范围(range)作为参数,并返回绘制的椭圆对象。

整个函数通过一系列的绘制函数和参数设置,完成了绘制人物头像的过程。

请注意,这段代码使用的绘图函数和参数可能涉及到某个特定的绘图库或工具包,因此无法直接在一般的Python环境中运行。要运行此代码,你可能需要查看代码的完整上下文,了解涉及的绘图库,并在相应的环境中运行。

Reference

本来挺喜欢Python的,现在更喜欢了
练习matlab两年半,画一幅浓浓学术味的只因图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/598950.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Python实战】Python采集高校信息

前言 大家好,我们今天来爬取某站的高校名单,把其高校名单,成员和内容数获取下来,不过,我们发现这个网站比我们平时多了一个验证,下面看看我是怎么解决的。 环境使用 python 3.9pycharm模块使用 requests模块介绍 requests requests是一个很实用的Python HTTP客户端…

【线性dp必学四道题】线性dp四道经典例题【最长上升子序列】、【最长公共子序列】、【最长公共上升子序列(maxv的由来)】【最长公共子串】

【最长上升子序列】、【最长公共子序列】、【最长公共上升子序列】 最长上升子序列f[i] 表示以i结尾的最长子序列 最长公共子序列f[i][j] 表示 a前i 和 b前j个 最长公共长度 最长公共上升子序列f[i][j]代表所有a[1 ~ i]和b[1 ~ j]中以b[j]结尾的公共上升子序列的集合 最长公共子…

Spring Boot如何实现分布式追踪和监控

Spring Boot如何实现分布式追踪和监控 在分布式系统中,由于服务数量的增加和服务之间的相互调用,会出现跨服务的请求链路较长,难以追踪问题和定位性能瓶颈等问题。因此,分布式追踪和监控变得越来越重要。本文将介绍如何使用 Spri…

怎样一元钱部署自己的AI网站

前段时间我开发了一个简洁的AI问答网站,好多朋友感兴趣,因此我将网站代码在github上开源,并编写此教程,帮助大家快速部署自己的AI网站,会编程的朋友们也可在此基础上定制开发。 前提条件:有自己的ChatGPT账…

AI实战营:开源计算机视觉神器OpenMMLab

目录 OpenMMLab概述 OpenMMLab各开源算法库详细介绍 OpenMMLab开源生态 OpenMMLab概述 部署框架:MMdeploy 算法框架:MMPretrain预训练多模态、MMDetection目标检测、MMDetection3D目标检测、MMRotate旋转目标检测、MMSegmentation语义分割、MMPose姿…

操作系统_进程

操作系统_进程 1 冯•诺依曼体系结构2 操作系统(Operator System)2.1 设计OS的目的2.2 OS的定位 3 进程3.1 什么是进程?3.2 查看进程3.3 通过fork创建进程使用 if 进行分流如何杀死一个进程 3.4 进程状态R - 运行状态S - 浅睡眠状态D - 磁盘休…

Java中关于ConditionObject的signal()方法的分析

代码块的展示 isHeldExclusively()这个仅持有锁资源的方法,在ReentrantLock中重写进行判断,要是没有持有锁资源那么会返回false,就会出现直接抛异常IllegalMonitorStateException(非法监视器状态异常)获取排在Conditi…

zookeeper相关,安装,认识......

目录 Zookeeper 1 第一章 Zookeeper简介... 1 1.1 Zookeeper概述和功能... 1 1.2 Zookeper安装... 1 1.3 Zookeper数据模型... 3 第二章 Zookeeper命令操作... 4 1.1 Zookeeper Client 4 1.2 Zookeeper JavaClient 6 第三章 集群角色... 28 Zookeeper 第一章 Zookeepe…

详解Servlet API

目录 前言 HttpServlet HttpServletRequest 代码实例 打印请求信息 通过URL中的queryString进行传递。 通过post请求的body,使用form表单传递 通过POST 请求中的 body 按照 JSON 的格式进行传递 HttpServletResponse 核心方法代码实例 设置状态码 自动刷…

【C++初阶】string 类的认识与学习

在学习string类之前,先在这里推荐2个好用的网站,可以用来查阅C的相关知识 https://cplusplus.com https://en.cppreference.com/w/ 上面的是非官方的,下面的官方的,但是个人感觉还是上面的好用。 一.string 类是什么 简单来说&…

State of GPT (ChatGPT 原理及现状介绍)

State of GPT 演讲信息: 演讲人:Andrej Karpathy (现在OpenAI任职),之前是特斯拉视觉研发负责人,斯坦福深度学习入门课程 CS231N 讲师演讲主题:受到微软 BUILD2023 邀请,介绍 GPT 的原理及研发现状&#x…

VMware虚拟机安装Ubuntu 22.04详细教程(2023年新版教程)

VMware虚拟机安装Ubuntu 22.04详细教程(保姆级教程) 大家好,我是洲洲,欢迎关注,一个爱听周杰伦的程序员。关注公众号【程序员洲洲】即可获得10G学习资料、面试笔记、大厂独家学习体系路线等…还可以加入技术交流群欢…

代码创作世界——pytorch深度学习框架数据类型

代码创作世界——pytorch深度学习框架数据类型 torch中的数据类型张量(tensor) pytorch中的 在数学中,一个单独的数可以成为标量,一行或者一列数组可以称为向量,一个二维数组称为一个矩阵,矩阵中的每一个元…

编译安装nginx服务

目录 编译安装nginx服务 1.关闭防火墙,将安装nginx所需软件包传到/opt目录下 2.安装依赖包 3.创建运行用户、组(Nginx服务程序默认以nobody身份运行,建议为其创建专门的用户账号,以便更准确的控制访问权限) 4.编译…

11.PasswordEncoder详解与实战

security/day07 这节课我们开始讲PasswordEncoder,如果大家还有印象的话,我们前面有提到过PasswordEncoder: 为什么密码使用{noop}开头呢?我们也做出了相应的解释,这节课开始带大家真正的了解PasswordEncoder, PassworderEncoder…

Android以aar包形式引入hunter-timing,Java(4)

Android以aar包形式引入hunter-timing,Java(4) (1)参照这篇文章: https://zhangphil.blog.csdn.net/article/details/130603231https://zhangphil.blog.csdn.net/article/details/130603231 生成.aar文件…

路径规划算法:基于象群优化的路径规划算法- 附代码

路径规划算法:基于象群优化的路径规划算法- 附代码 文章目录 路径规划算法:基于象群优化的路径规划算法- 附代码1.算法原理1.1 环境设定1.2 约束条件1.3 适应度函数 2.算法结果3.MATLAB代码4.参考文献 摘要:本文主要介绍利用智能优化算法象群…

python基础知识(六):列表

目录 1. 列表及其创建2. 列表的特点3. 获取指定元素的索引4. 获取列表中指定索引的元素5. 列表的切片操作6. 列表元素的判断及遍历7. 列表元素的添加操作8. 列表的删除9. 列表元素的修改10. 列表元素的排序11. 列表生成式 1. 列表及其创建 列表由一系列按特定顺序排列的元素组…

如何设计一份优秀的 PPT 文档?

设计一份优秀的 PPT 需要考虑以下几个方面: 目标和受众:明确你的 PPT 的目标是什么,以及你的受众是谁。这将帮助你确定内容的重点和风格。结构和流程:确定清晰的结构和流程,使你的 PPT 有逻辑性。使用标题、副标题和分…

算法与数据结构(三)——排序算法大总结

六大排序算法:插入排序、希尔排序、选择排序、冒泡排序、堆排序、快速排序 一、插入排序二、选择排序三、冒泡排序四、归并排序 一、插入排序 1.从第一个元素开始,该元素可以认为已经被排序 2.取下一个元素tem,从已排序的元素序列从后往前扫…