当前位置: 首页 > news >正文

【编程题】【Scratch二级】2022.06 画正方形

画正方形

在舞台正中央绘制一个边长为200的正方形。

1. 准备工作

(1)保留默认小猫角色并隐藏角色;

(2)默认空白背景;

(3)添加画笔模块。

2. 功能实现

(1)画笔颜色设为黑色,画笔粗细设为4;

(2)围绕舞台中心绘制正方形,正方形的中心点坐标为(0,0);

(3)正方形的边长为200。

3. 设计思路与实现

(1)角色分析

角色:默认的小猫。

(2)背景分析

背景:默认的无色背景。

(3)所用积木块介绍

a. 运动类

  • 角色移动指定的步数,正数就是向前,负数就是向后。

  • 将角色向左旋转指定的角度。

  • 将角色移动到舞台中指定的X/Y坐标位置,默认坐标(x:0, y:0)。
  • x的范围(-240, 240);y的范围(-180, 180)。

  • 将角色朝向某个指定的方向。
  • 通常用作控制角色在舞台中的上下左右朝向。即0朝上,90朝右(默认),180朝下,-90朝左。

b. 外观类

  • 在舞台中隐藏当前角色。

c. 事件类

  • 程序开始积木块。
  • 点击舞台区的绿旗,执行以绿旗开始的所有程序脚本。

d. 控制类

  • 循环积木块:一遍一遍地执行包起来的积木序列。
  • 重复执行指定的次数后停止,该积木块通常在角色移动等场景中使用。

e. 画笔类

  • 清除舞台中画笔绘制的所有图案。

  • 将画笔放置于舞台上(好比我们用笔画画的时候将画笔笔尖放在纸张上准备绘画)。
  • 落笔画出运动轨迹。
  • 轨迹是从中心点绘制出来的。

  • 将画笔从舞台上提起来(好比我们画好图形了,把画笔收起来)。
  • 默认抬笔。

  • 将画笔的颜色设为指定的颜色绘画。

  • 将画笔的粗细设定为指定的值。

(4)角色、舞台背景设置

a. 角色设置

使用默认就好。

b. 舞台背景设置

使用默认就好。

(5)脚本编写

a. 角色:小猫

当绿旗被点击时:

  1. 开始:点击小绿旗,也就是程序启动,就要执行后续的程序指令。
  2. 初始状态:隐藏。
  3. 清理舞台:全部擦除。
  4. 设置画笔颜色:黑色。(画笔颜色设为黑色,画笔粗细设为4)
  5. 设置画笔粗细:4。
  6. 初始位置和方向:X=-100,Y=-100,正方形的左下角,面向90°方向。
  7. 落笔。
  8. 重复执行4次:
    • 移动200步。(正方形的边长为200)
    • 左转90°。
  9. 抬笔。

4. 评分标准

(1)画笔颜色设为黑色,画笔粗细设为4;(4分)

(2)能绘制出一个正方形;(4分)

(3)正方形边长为200;(2分)

(4)正方形起点坐标正确,正方形中心在舞台中心。(5分)

5. 知识块

二级知识块

相关文章:

  • 【学习笔记】内存的连续分配管理方式
  • 图解 cv2.HoughLines cv2.line 参数原理
  • 使用简易网络实现二分类
  • XAML笔记
  • 5个自动化小技巧:聪明的员工和管理者如何提升效率?
  • JAVA轻量级错误码设计最佳实践
  • Nidia的Deepstream,官方给的案例介绍,deepstream-test1\deepstream-tes2\deepstream-test5
  • RESTful风格学习笔记【包含示例】
  • Java:单例模式详解
  • 第十九天人工智能课程总结
  • opencv入门 二
  • Java:在Java中使用函数接口
  • 百度小程序SEO指南
  • 【C++提高】一篇文章了解 C++ 操作 TDengine(详解)
  • CSDN客诉周报第8期|本周解决15个用户问题
  • 【笔记】你不知道的JS读书笔记——Promise
  • 【编码】-360实习笔试编程题(二)-2016.03.29
  • canvas 绘制双线技巧
  • CSS相对定位
  • ES6系统学习----从Apollo Client看解构赋值
  • js 实现textarea输入字数提示
  • JSDuck 与 AngularJS 融合技巧
  • LeetCode刷题——29. Divide Two Integers(Part 1靠自己)
  • PHP CLI应用的调试原理
  • React Transition Group -- Transition 组件
  • storm drpc实例
  • swift基础之_对象 实例方法 对象方法。
  • 等保2.0 | 几维安全发布等保检测、等保加固专版 加速企业等保合规
  • 翻译:Hystrix - How To Use
  • 高程读书笔记 第六章 面向对象程序设计
  • 工作手记之html2canvas使用概述
  • 后端_ThinkPHP5
  • 项目实战-Api的解决方案
  • 仓管云——企业云erp功能有哪些?
  • ​七周四次课(5月9日)iptables filter表案例、iptables nat表应用
  • #Linux(帮助手册)
  • #在 README.md 中生成项目目录结构
  • $.ajax,axios,fetch三种ajax请求的区别
  • $Django python中使用redis, django中使用(封装了),redis开启事务(管道)
  • (delphi11最新学习资料) Object Pascal 学习笔记---第7章第3节(封装和窗体)
  • (Java)【深基9.例1】选举学生会
  • (附源码)ssm基于jsp高校选课系统 毕业设计 291627
  • (三)c52学习之旅-点亮LED灯
  • (十一)手动添加用户和文件的特殊权限
  • (原+转)Ubuntu16.04软件中心闪退及wifi消失
  • (转) Android中ViewStub组件使用
  • .Net Attribute详解(上)-Attribute本质以及一个简单示例
  • .NET Core WebAPI中封装Swagger配置
  • .NET/C# 如何获取当前进程的 CPU 和内存占用?如何获取全局 CPU 和内存占用?
  • /ThinkPHP/Library/Think/Storage/Driver/File.class.php  LINE: 48
  • ??在JSP中,java和JavaScript如何交互?
  • @Documented注解的作用
  • [ CTF ]【天格】战队WriteUp- 2022年第三届“网鼎杯”网络安全大赛(青龙组)
  • [Android Pro] android 混淆文件project.properties和proguard-project.txt
  • [bzoj1901]: Zju2112 Dynamic Rankings