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

GoC 图片指令

课堂学习

n.picL( id,fname );

名称:调入设置一张图片
功能:把文件名为fname的图片调入,并设置对应为编号id,供后面显示图片pic等命令使用。(L表示load)
说明:图片格式可以是png、bmp、jpg等多种; 调入图片文件比较“费时间”,通常在程序开头就完成picL命令。
样例:p.picL(1,"bird.png");

pen.picL( idBeign,idEnd,fnames );
pen.picL( idBeign,idEnd,fname,sBegin );

名称:调入设置多张图片
功能:设一次调入多张图片,并设置对应为编号idBegin到idEnd,供后面显示图片pic等命令使用。
说明:参考” 调入设置一张图片”命令。
第1种命令格式中的idBegin是id的开始编号,idEnd是id的结束编号。fnames是多个图形文件名的字符串,文件名中间用”,”隔开。
第2种命令格式中的sBegin是图片文件的开始编号,图片文件名格式为:文件名+编号+.+后缀。
样例1:pen.picL(0,2,"car.png,pen.png,tree.png");
这个命令相当于:
pen.picL(0,"car.png").picL(1,"pen.png").picL(2,"tree.png");
样例2:pen.picL(3,6,"bike.png",0);
这个命令相当于:
pen.picL(3,"bike0.png").picL(4,"bike1.png").picL(5,"bike2.png").picL(6,"bike3.png");

pen.pic( id );
pen.pic(id, w, h);
pen.pic(cav,id,w,h,angle,x,y);

名称:显示图片
功能:把编号为id的图片在笔位置显示。如果缺省w,h(宽和高)参数,就以图片原始大小显示。有7个参数的是增强格式,参数意义分别是:图层号、图片号、宽度、高度、方向、X坐标、Y坐标。
说明:默认的,笔的位置是图片的中心位置,显示时图片向上,如样例所示。可以参看picO和picUp命令来修改默认项。
样例
p.picL(1,"bird.png");
for (int i=0; i<4; i++)
p.fd(150).pic(1).bk(150).rt(90);

pen.picO( 1/0 );

名称:设置绘图位置
功能:如果执行pen.picO(1),就是设置笔的位置是图片的中心;如果执行pen.picO(0),就是设置笔的位置是图片的左下角。
说明:默认笔的位置是图片的中心位置。
样例
p.picL(1,"bird.png").picO(0);
for (int i=0; i<4; i++)
p.fd(150).pic(1) .o(10,1).bk(150).rt(90);

pen.picU( 0/1 );

名称:设置图片方向
功能:执行pen.picU(1),设置图片的方向始终向上;执行pen.picU(0),设置的图片方向不是一直向上,而是按照笔的方向显示。(U是up的意思)
说明:默认图片方向是始终朝上的。
样例
p.picL(1,"bird.png").picU(0);
for (int i=0; i<6; i++)
p.fd(150) .pic(1).bk(150).rt(60);

pen.cav( -1/0/1 );

名称:设置画布的层
功能:网络版GoC目前有三次画面供画笔绘图。pen.cav(-1)设置画笔在最下面一层;pen.cav(1)设置画笔在最上面一层;pen.cav(0)设置画笔在中间一层。
说明:默认画笔在中间层;cav对绘图命令和图片命令都影响。
样例: p.cav(1).ee(80,200,1).rt(60);
p.cav(0).ee(80,200,2).rt(60);
p.cav(-1).ee(80,200,3).rt(60);

pen.ani(cavId, picId );
pen.ani(cavId, picId, w, h);
pen.ani(cav,id,w,h,angle,x,y);

名称:动画图片
功能:与pic命令类似,但每次显示图片时,会自动清除画布上所以图形。cavId指定在第几层画布上显示,具体参见cav命令;picId为图形编号,具体参见cpicL命令。有7个参数的是增强格式,参数意义分别是:图层号、图片号、宽度、高度、方向、X坐标、Y坐标。
说明:这个命令在指定的画布层上,每次清除前面的图形,显示指定图片,比较方便一些动画制作。
样例
p.speed(10).picL(1,"car.png");
for (int i=0;i<20; i++)
p.fd(50).ani(-1,1).rt(18);

课堂训练

int main(){p.speed(6).c(1).size(150).picL(1,1,"car.png").hide();for(;;)  p.fd(45).ani(1,1).rt(17).picU(18);        return 0;
}

int main(){    p.picL(1,"jnb.jpg");p.pic(1).speed(5).hide();//画花环Ap.moveTo(100,-100);   p.c(13); for(int i=0;i<12;i++){p.e(15,15,15);p.fd(30);p.rt( 360.0 /12  ); }    //画花环Bp.moveTo(-200,-100);//画12个正方形for(int i=0;i<12;i++){p.c(15);for(int j=0;j<4;j++){p.fd(30).lt(90);                 }                  p.fd(30).rt( 360.0 /12  ); }    pen.moveTo(50,320).text("英雄永远留在人们心中!",1,50);return 0;
}

课后作业

把下列参考程序改画8个三角形


int main(){pen.c(11).speed(5);for(int i=0;i<12;i++){for(int j=0;j<4;j++)p.fd(30).lt(90);p.fd(30).rt( 360.0 /12 ); }return 0;
}

int main(){pen.c(11).speed(10);for(int i=0;i<8;i++){        for(int j=0;j<3;j++)p.fd(30).lt(120);p.fd(30).rt( 360.0 /8 ); }return 0;
}
http://www.dtcms.com/a/288279.html

相关文章:

  • BeanFactory 和 FactoryBean 的区别
  • 架构探索笔记【1】
  • 如何快速学习一门新技术
  • 实用的文件和文件夹批量重命名工具
  • 手撕Spring底层系列之:注解驱动的魔力与实现内幕
  • 【Linux】重生之从零开始学习运维之Nginx
  • 【服务器与部署 14】消息队列部署:RabbitMQ、Kafka生产环境搭建指南
  • Linux中添加重定向(Redirection)功能到minishell
  • 中小机构如何低成本搭建教育培训平台?源码开发+私有化部署攻略
  • 什么是帕累托最优,帕累托最优如何运用在组相联映像中
  • AspectJ 表达式中常见符号说明
  • GoogleBenchmark用法
  • 环形区域拉普拉斯方程傅里叶级数解
  • 电阻耐压参数学习总结
  • 再谈进程-控制
  • 敏感词 v0.27.0 新特性之词库独立拆分
  • 5-大语言模型—理论基础:注意力机制优化
  • 关于个人博客系统的测试报告
  • Typecho评论系统集成Markdown编辑器完整教程
  • Windows事件查看器完整指南
  • 最少标记点问题:贪心算法解析
  • 深入了解 find_element 方法:Web 自动化定位元素的核心​
  • Linux某个进程CPU占用率高原因定位手段
  • Vue基础(前端教程①-路由)
  • 从 C# 转 Python 第三天:文件操作、异常处理与错误日志实践
  • 量子计算与AI融合的技术突破与实践路径
  • 物联网系统中-告警配置功能的定义
  • #Datawhale组队学习#7月-强化学习Task2
  • Java行为型模式---状态模式
  • python类Keys