vc程序设计实验报告-俄罗斯方块游戏(编辑修改稿)内容摘要:
|(posXwidth1)||(posY1)||(posY+1height1)) return 0。 if((image[posY][posX1]!=0)||(image[posY][posX]!=0)||(image[posY][posX+1]!=0)||(image[posY+1][posX]!=0)) return 0。 } return 1。 } void CTBrick::operator (unsigned char **binImage) {unsigned int orientation。 unsigned int posX。 unsigned int posY。 unsigned char colour。 posX=getPosX()。 11 posY=getPosY()。 orientation=getOrientation()。 colour=getColour()。 if(orientation==0) {binImage[posY1][posX]=colour。 binImage[posY][posX]=colour。 binImage[posY][posX1]=colour。 binImage[posY][posX+1]=colour。 } if(orientation==1) {binImage[posY1][posX]=colour。 binImage[posY][posX]=colour。 binImage[posY+1][posX]=colour。 binImage[posY][posX+1]=colour。 } if(orientation==2) {binImage[posY][posX1]=colour。 binImage[posY][posX]=colour。 binImage[posY][posX+1]=colour。 binImage[posY+1][posX]=colour。 } if(orientation==3) {binImage[posY][posX1]=colour。 binImage[posY][posX]=colour。 binImage[posY1][posX]=colour。 binImage[posY+1][posX]=colour。 } } void CTBrick::putAtTop(unsigned int newOrient, unsigned int newPosX) {setPosX(newPosX)。 setOrientation(newOrient)。 switch(newOrient) { case 0: setPosY(1)。 break。 case 1: setPosY(1)。 break。 case 2: setPosY(0)。 break。 case 3: setPosY(1)。 break。 } } //反 L 型砖块代码的实现部分: (黑色方块为程序中所选的坐标点 ) CFLBrick类型砖块: 12 (左移、右移、上键、下键消息响应函数与 I型砖块代码的实现部分相同,这里就不列出来了) ◆ shiftLeft(CBin*bin)◆ shiftDown(CBin*bin)◆ shiftRight(CBin*bin)◆ rotateClockwise(CBin*bin) int CFLBrick::checkCollision(CBin *bin) {unsigned int width。 unsigned int height。 unsigned char**image。 unsigned int orientation。 unsigned int posX。 unsigned int posY。 width=bingetWidth()。 height=bingetHeight()。 image=new unsigned char*[height]。 for(unsigned int i=0。 iheight。 i++) {image[i]=new unsigned char[width]。 } bingetImage(image)。 orientation=getOrientation()。 posX=getPosX()。 posY=getPosY()。 if(orientation==0) {if((posX1)||(posXwidth1)||(posY2)||(posYheight1)) return 0。 if((image[posY2][posX]!=0)||(image[posY1][posX]!=0)||(image[posY][posX]!=0)||(image[posY][posX1]!=0)) return 0。 } if(orientation==1) {if((posX+11)||(posX+2width1)||(posY1)||(posYheight1)) return 0。 if((image[posY1][posX]!=0)||(image[posY][posX]!=0)||(image[posY][posX+1]!=0)||(image[posY][posX+2]!=0)) return 0。 } if(orientation==2) {if((posX+11)||(posX+1width1)||(posY+11)||(posY+2height1)) return 0。 if((image[posY][posX]!=0)||(image[posY][posX+1]!=0)||(image[posY+1][posX]!=0)||(image[posY+2][posX]!=0)) return 0。 } if(orientation==3) 13 {if((posX2)||(posXwidth1)||(posY+11)||(posY+1height1)) return 0。 if((image[posY][posX2]!=0)||(image[posY][posX1]!=0)||(image[posY][posX]!=0)||(image[posY+1][posX]!=0)) return 0。 } return 1。 } void CFLBrick::operator (unsigned char **binImage ) {unsigned int orientation。 unsigned int posX。 unsigned int posY。 unsigned char colour。 posX=getPosX()。 posY=getPosY()。 orientation=getOrientation()。 colour=getColour()。 if(orientation==0) {binImage[posY2][posX]=colour。 binImage[posY1][posX]=colour。 binImage[posY][posX]=colour。 binImage[posY][posX1]=colour。 } if(orientation==1) {binImage[posY1][posX]=colour。 binImage[posY][posX]=colour。 binImage[posY][posX+1]=colour。 binImage[posY][posX+2]=colour。 } if(orientation==2) {binImage[posY][posX]=colour。 binImage[posY][posX+1]=colour。 binImage[posY+1][posX]=colour。 binImage[posY+2][posX]=colour。 } if(orientation==3) {binImage[posY][posX2]=colour。 binImage[posY][posX1]=colour。 binImage[posY][posX]=colour。 binImage[posY+1][posX]=colour。 } } void CFLBrick::putAtTop(unsigned int newOrient, unsigned int newPosX) { setPosX(newPosX)。 setOrientation(newOrient)。 14 switch(newOrient) {case 0: setPosY(2)。 break。 case 1: setPosY(1)。 break。 case 2: setPosY(0)。 break。 case 3: setPosY(0)。 break。 } } //反 S 型砖块代码的实现部分: (黑色方块为程序中所选的坐标点 ) CFSBrick类型砖块: (左移、右移、上键、下键消息响应函数与 I型砖块代码的实现部分相同,这里就不列出来了) ◆ shiftLeft(CBin*bin)◆ shiftDown(CBin*bin)◆ shiftRight(CBin*bin)◆ rotateClockwise(CBin*bin) int CFSBrick::checkCollision(CBin *bin) { unsigned int width。 unsigned int height。 unsigned char**image。 unsigned int orientation。 unsigned int posX。 unsigned int posY。 width=bingetWidth()。 height=bingetHeight()。 image=new unsigned char*[height]。 for(unsigned int i=0。 iheight。 i++) { image[i]=new unsigned char[width]。 } bingetImage(image)。 orientation=getOrientation()。 posX=getPosX()。 posY=getPosY()。 if(orientation==0) { if((posX1)||(posXwidth1)||(posY1)||(posY+1height1)) return 0。 15 if((image[posY1][posX]!=0)||(image[posY][posX]!=0)||(image[posY][posX1]!=0)||(image[posY+1][posX1]!=0)) return 0。 } if(orientation==1) { if((posX+11)||(posX+1width1)||(posY1)||(posYheight1)) return 0。 if((image[posY1][posX1]!=0)||(image[posY1][posX]!=0)||(image[posY][posX]!=0)||(image[posY][posX+1]!=0)) return 0。 } if(orientation==2) { if((posX+11)||(posX+1width1)||(posY1)||(posY+1height1)) return 0。 if((image[posY][posX]!=0)||(image[posY+1][posX]!=0)||(image[posY1][posX+1]!=0)||(image[posY][posX+1]!=0)) return 0。 } if(orientation==3) { if((posX1)||(posXwidth1)||(posY+11)||(posY+1height。vc程序设计实验报告-俄罗斯方块游戏(编辑修改稿)
相关推荐
为 1 秒。 信号整形电路 计数器 锁存器 译码驱动电路 数码显示 脉冲发生器 测频控制信号发生器 3 闸门时间也可以大于或小于一秒 [2]。 频率 信号易于传输,抗干扰性强,可以获得较好的测量精度。 因此,频率检测是电子测量 领域最基本的测量之一。 本文的数字频率计是按照计算每秒内待测信号的脉冲个数的基本原理来设计,此时取闸门时间为 1 秒。 数字频率计的关键组成部分包括一个测频控制信号发生器
会议厅名称牌 会议厅指示牌 会议室座位牌 各部门形象标识牌 室外标识灯箱 酒店桌旗 迎宾毯标识色彩规范 大堂副理标牌识 总台(咨询台)标识牌 新闻发布会的背板 宣传展示接待台及背板 防撞条应用规范 展板标识色彩规范 安全通道牌 消防疏散图 卫生间指示牌 客房房号牌 楼层房号指示牌 上、下楼层指示牌 中餐厅门牌 中餐厅包间门牌 西餐厅门牌 西餐厅包间门牌 茶坊门牌 茶坊包间门牌 KTV门牌
而发展。 伺服系统由伺服驱动电动机和伺服驱动装置组成,是数控系统的执行部件。 它的基本作用是接收数控装置发来的指令脉冲信号,控制机床执行部件的进给速度、方向和位移量,以完成零件的自动加工。 通常数控系统由数控装置和伺服系统两部分组成,各公司的数控产品也是将两者作为一体的。 机床主体也称主机,包括机床的主运动部件、进给运动部件、执行部件和基础部件,如底座、立柱、滑鞍、工作台 (刀架 )、导轨等。
, 但 是在 做 焦 点团体 访谈 之 前 , 公司 应 该 注 意 到 下列 几 项 : ( 1) 焦 点团体 应 该 是 随 机 抽选 员工来作 访谈 , 且 须 注 意 任 一 员工 不 能 参 加与其 直 属主 管 相同 的 访谈团体。 ( 2) 员工 必 须 了 解 焦 点团体 的 访谈 目 的是为了 改 善公司 与 公司 员工 的生 活 , 纵 使 在 访谈 的过程中,可 能 会
TCL 借助于不同颜色的跳接线和配线架的端口标识,系统管理人员能方便地进行系统的线路管理。 模块化 TCL 系统能够适应不同规模的综合布线环境,可随用户的需要而增减(跳线、跳线面板等)。 由于 TCL 系统采用了模块化结构,使 TCL 系统能够通过轻易地更改网络的结构和线路的连接方式,来满足科学技术的发展和应用环境的变化。 六、结构化布线系统的设计 建设结构及构能设计 本公司为二层建筑
号处理,数字滤波器常常被用来实现选频操作。 因此,指标的形式一般确定为频域中幅度和相位响应。 本文中 FIR滤波器着重于线性相位滤波器的设计,其优点为 ①在设计中,只包含实数算法,不涉及复数运算; ②线性相位滤波器中,不存在延迟失真,只有固定数量的延迟; ③ 长度为 M 的滤波器 (阶数为 M一 1),它的计算量为 M/ 2数量级。 ( 2) 逼近 确定了滤波器的技术指标后,就可以利用数学和