码绘VS手绘(一)静态绘图

一、实验要求

(一)主题

对比用代码和用手绘创作静态绘画。

(二)内容

尝试用绘图函数画一幅静态作品,尽可能用多种绘图函数和各种参数设置,画出较高复 杂性的作品。
用手绘方式来画相近的内容,将绘图的图形基元限定于自己程序中用到的类型。 例如,若程序中只用到了“ellipse", 那么 手绘时也只画圆圈。
从思路、技术、创作体验、创作偏好等方面来比较二者,讨论异同,写一份实验报告,实验报告题目为”编程与手绘的对比 从思路、技术、创作体验、创作偏好等方面来比较二者,讨论异同,写一份实验报告。

二、实验内容

(一)码绘

在这里插入图片描述

(二)手绘

在这里插入图片描述

三、总结——编程与手绘的对比

技术方面

如果是图像基元较少较简单的的图像绘制,那么编程可能更加简单。但如果图像较复杂,图像基元更多,相互之间的联系更加繁杂,那么编程难度会直线上升,但对手绘来说并不是特别困难。就个人而言,我认为编程上手较简单,但进阶比较困难。

创作思路

对于我个人而言,编程与手绘大致相同,都是按照自上而下,从外到里的步骤进行代码编程和手绘。通过注释,编程能够使观看者更加直观的表现作者的创作思路,这是手绘所不具备的。

创作体会

编程的参数处理让人头疼,但完成后更有成就感。手绘虽然过程更轻松,但却没有太多的成就感。最让人难受的是,我尽心尽力手绘的作品,单独欣赏感觉很完美,但与编程比较后就发现“丑陋不堪”。

创作偏好

但这并不能说明编程比手绘更加完美。手绘更有利于个人情感的表达,更有“人情味”,即感性;编程则更加理性,逻辑更加明确,条理更加清晰,只需将自己的想法用代码写出,编辑器就会给出完美的结果。所以在创作偏好方面,编程与手绘各有千秋。

四、 完整代码

.html文件

 <!DOCTYPE html>
<html lang="">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>p5.js example</title>
    <style> body {padding: 0; margin: 0;} </style>
    <script src="../p5.min.js"></script>
    <script src="../addons/p5.dom.min.js"></script>
    <script src="../addons/p5.sound.min.js"></script>
    <script src="sketch.js"></script>
  </head>
  <body>
  </body>
</html>

.js文件

  function setup() {
    createCanvas(600, 600);
  }
  
  function draw() {
    background(255);
      stroke(0);
      fill(100,149,237);//外脸
      ellipse(300,200,200,200);
      fill(255);//内脸
      ellipse(300,230,160,160);
      
      fill(255);//左眼
      ellipse(275,150,45,58);
      fill(255
              );//右眼
      ellipse(325,150,45,58);
      
      fill(0);//左眼珠
      ellipse(290,155,10,10);
      fill(0);//右眼珠
      ellipse(310,155,10,10);
      
      fill(255,0,20);//鼻子
      ellipse(300,180,26,26);
      stroke(0);
      line(300,193,300,240);
      
      stroke(0);//嘴
      line(300,240,250,218);
      stroke(0);
      line(300,240,350,218);
      
      stroke(0);//左胡须
      line(230,200,275,200);
      stroke(0);//左胡须
      line(235,175,275,195);
      stroke(0);//左胡须
      line(235,220,275,205);
      
      stroke(0);//右胡须
      line(325,200,370,200);
      stroke(0);//右胡须
      line(325,195,365,175);
      stroke(0);//右胡须
      line(325,205,365,220);
      
      stroke(0);//身体
      fill(100,149,237);
      rect(231,274,138,120,5);
      
      stroke(0);//肚皮
      fill(255);
      ellipse(300,310,100,100);
      noStroke();//遮盖
      fill(255);
      rect(231,258,138,12);
      
      fill(250,0,0);//项圈
      rect(230,270,140,7);
      
      stroke(0);//铃铛
      fill(255,255,0);
      ellipse(300,286,27,27);
      
      stroke(0);//左胳膊
      fill(100,149,237);
      quad(232,275,195,320, 200,330, 232,310);
      fill(255);
      ellipse(200,324,25,25);
      
      stroke(0);//右胳膊
      fill(100,149,237);
      quad(370,275,405,320,400,330, 370,310);
      fill(255);
      ellipse(400,324,25,25);
      
      fill(255);//口袋
      stroke(0);
      arc(300, 310, 50, 50,0,PI, CHORD);
      
      fill(0);
      stroke(0);
      line(300,380,300,407);
      line(295,380,305,380);
      line(233,407,366,407);
      fill(255);
      arc(235, 401, 13, 13, PI / 2, 3 * PI / 2, OPEN); 
      arc(365, 401, 13, 13, 3 * PI / 2, PI / 2,  OPEN); 
  }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于计算机专业的学生而言,参加各类比赛能够带来多方面的益处,具体包括但不限于以下几点: 技能提升: 参与比赛促使学生深入学习和掌握计算机领域的专业知识与技能,如编程语言、算法设计、软件工程、网络安全等。 比赛通常涉及实际问题的解决,有助于将理论知识应用于实践中,增强问题解决能力。 实践经验: 大多数比赛都要求参赛者设计并实现解决方案,这提供了宝贵的动手操作机会,有助于积累项目经验。 实践经验对于计算机专业的学生尤为重要,因为雇主往往更青睐有实际项目背景的候选人。 团队合作: 许多比赛鼓励团队协作,这有助于培养学生的团队精神、沟通技巧和领导能力。 团队合作还能促进学生之间的知识共享和思维碰撞,有助于形成更全面的解决方案。 职业发展: 获奖经历可以显著增强简历的吸引力,为求职或继续深造提供有力支持。 某些比赛可能直接与企业合作,提供实习、工作机会或奖学金,为学生的职业生涯打开更多门路。 网络拓展: 比赛是结识同行业人才的好机会,可以帮助学生建立行业联系,这对于未来的职业发展非常重要。 奖金与荣誉: 许多比赛提供奖金或奖品,这不仅能给予学生经济上的奖励,还能增强其成就感和自信心。 荣誉证书或奖状可以证明学生的成就,对个人品牌建设有积极作用。 创新与研究: 参加比赛可以激发学生的创新思维,推动科研项目的开展,有时甚至能促成学术论文的发表。 个人成长: 在准备和参加比赛的过程中,学生将面临压力与挑战,这有助于培养良好的心理素质和抗压能力。 自我挑战和克服困难的经历对个人成长有着深远的影响。 综上所述,参加计算机领域的比赛对于学生来说是一个全面发展的平台,不仅可以提升专业技能,还能增强团队协作、沟通、解决问题的能力,并为未来的职业生涯奠定坚实的基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值