股票图形中的真理

2022-06-30

第一篇:股票图形中的真理

关于“真理与价值在实践中的辩证统一”的学习心得

本次学习的讨论题目为“真理与价值在实践中是如何统一的?”,根据我们组的讨论结果,解决该问题的实质即认识到真理与价值在实践中的辩证统一。在小组讨论分别讨论了关于真理、价值的定义,对其要点进行阐述,各抒己见地谈论对于该问题看法之后,我分到了最后总结陈述的这一部分。即我对前面组员所讲的所有细节要点进行概括,再对一些重点问题进行补充。

此次课堂演讲我的部分主要有一下几点内容:

一、认识到价值与真理在实践中的辩证统一

1. 人类活动中的两大原则:真理原则与价值原则。

2. 真理与价值相互包含、相互渗透,共存于人类的认识、实践活动过程之中

3. 真理与价值在实践中相互引导、相互促进。

二、在实践中坚持真理与价值的辩证统一,就要求我们要坚持和弘扬科学精神和人文精神。

1. 坚持和弘扬科学精神

2. 坚持和弘扬人文精神

在本次学习过程中我本人的收获主要有两点。第一,由于我本人是理科生,较缺乏这方面的知识,所以在小组讨论的过程当中并没能提出更有深度、全面的看待此类问题的视角,相反其他同学的看待问题的不同思路与视角对我自己有较大的启发;其次,在查找资料的过程中,我学会了要自己去鉴别网上水平参差不齐的参考论文、书目等等,从中筛选出对自己有用的部分,同时要注意甄别其中不正确或已经不具有时效性的信息。比如当时在网上找到了很多分2000年以前的参考文章,在自习阅读之后发现里面有很多观点或者说法已经与现行的教材有出入,或者不符合现在的社会情况,在自习斟酌后还是舍弃了一些材料。

第二篇:例谈图形计算器在图形变换教学中的应用

哈尔滨市第十八中学

师赫阳

摘要:随着信息技术高速发展,其已经渗透到数学教学中。借助新技术不仅可以简化很多传统的数学计算,更为重要的是有助于学生深刻理解数学知识。作为信息技术时代产物的图形计算器有着强大的符号运算系统和图形运算系统,这一技术可以广泛应用于解决图形变换问题、深刻认识曲线平移的几何意义。 关键词:图形计算器;图形变换;曲线平移

一、引言

电子信息技术在教学中的应用对数学课程内容、教学和学习等方面产生了深刻的影响。其优势在计算功能、图形呈现与制作功能、处理功能、提供交互式的学习和研究环境等方面均有出色的表现。因此,在教学中,合理地使用电子信息技术,发挥其在创建情境、探究交流、动态演示、展现过程、数据信息的收集处理和教学方式的丰富更新等诸多方面的优势,帮助学生更好地认识和理解数学,激发学生对数学学习的兴趣,改善学生的学习方式。CASIO图形计算器正是上述现代信息技术在数学学习教育领域的工具性、技术性、方法性、实践性、简谐性的典范。学习和运用现代信息技术,培养和发展学生科学探究的愿望和能力已成为当今数学教学的先进工具。

遵循新课标中将图形计算器列入高中理科教学仪器配备标准的新理念,结合教材内容特点笔者设计了《平移》的一节课:借助CASIO图形计算器,让学生动手操作图形计算器,观察、尝试、发现、归纳、再试验。整个教学过程,均是在“做”、“思”、“辩”、“表”、“析”、“展”的相互作用和相互转化中不断深入和逐渐完成的,真正让学生领略了知识发生、发展的动态过程,加深了理解与记忆。课后调查显示,学生对这种教学模式十分满意,教学效果颇佳。以下就谈谈笔者对本课的教学设计及思考。

二、体验探究过程

探究1:(用计算器)画出以下yfx函数图像,并说明下列各组两个图像间的位置关系:

【1 / 5】

(1)y2x y2x11(2)ylgx ylgx21

总结以往学过的函数平移规律(a0,b0)

yfxyfxa 向左平移a个单位yfxyfxa 向右平移a个单位 yfxyfx+b 向上平移b个单位yfxyfxb 向下平移b个单位口诀:上加下减、左加右减。

探究2:(用计算器)画出以下fx,y0方程的图像,并说明下列各组两个图像间的位置关系:

(1)x2y24 (x2)2(y2)24x2(2)4x2(3)2y2(x1)2(y2)2 1 1343y2(x2)2(y1)21 1222以上探究过程让学生通过观察点与坐标、坐标与位置、图形平移变化方向与坐标的过程,进一步培养学生的转化意识及识图能力,感受数形结合思想的微妙。通过借助图形计算器经历“形”动“数”变、“数”变“形”动有趣的实验和探究过程,激发学生的学习兴趣,让学生学习有条理的思考与表达,培养其认真观察、思考、总结的习惯,体验成功的喜悦。

借助 CASIO 图形计算器的画图操作,让学生积极参与观察、讨论、猜想和归纳,使学生深刻理解方程和函数的平移规律:

(1)

(2)

(横向平移h,纵向平移k)。

建构主义教学强调要努力创造一个适宜的学习环境,使学生在教师的帮助下,通过自身的经历和图式,积极主动地构建自己的知识。此时,图形计算器等电子信息技术就为数学教学提供了一个很好的学习环境,极大拓展了师生的实践活动空间,使学生有机会在一种真实的、体现数学发明与证明过程的环境中接受

【2 / 5】

挑战性的学习任务,进行实验、探究和发现。

教师在教学中可通过教学情境、协作共享、对话交流和意义建构,在实践活动中逐渐丰富、提高学生的知识、智慧和思维能力,使学生把思维和实践活动有机地结合起来,达到发展学生思维的目的。

三、培养探知能力

现代教育观认为,教学的目的不仅是要让学生掌握知识、了解世界、更重要的是让学生学会分析问题、解决问题,提高其根据自身经验去建构有关知识的意义的能力。为了让学生对所学知识更好的理解,笔者在探究

1、探究2后分别增设了弹性教学内容,让不同学生收获不同的数学体验、感受与知识。

应用1:函数yf(2x1)是偶函数,则函数yf(2x)的对称轴。 分析:

,图像总体向左平移个单位

应用2:求方程|x+2|+|y+3|=1确定的图形所围成的面积。

分析:|x+2|+|y+3|=1可看做由|x|+|y|=1平移得到,因此只需求出|x|+|y|=1所围成的图形面积即可。

x>0,y>0

x+y=1 x>0,y<0

x-y=1 x<0,y>0

-x+y=1 x<0,y<0

-x-y=1 解决以上问题,传统教学通常是借助数形结合的思想方法在黑板上画示意图进行,而图形计算器的优势在于可呈现每个时刻图形变化过程、曲线扫过的图形形状、大小等,学生只需设置相应的参数、不必进行烦琐计算就可得出结果。同时图形计算器对该课教学难点的突破起了显著作用。

通过对以上应用的讲解,让学生经历了一个由特殊到一般再到特殊的变化过程,掌握了不仅从图形的平移可以得出曲线方程的变化,还可以从曲线方程的某种变化,得出该方程对应的图形进行了怎样的平移。

通过 CASIO 图形计算器让学生认识图形生成、变化、找到图形中的关键点,使学生进一步了解图形平移的特点,建立数形结合思想,从有形到无形,揭示数

【3 / 5】

学本质,完成学生对图形平移变换的初步认识,逐步培养以不变应万变的解题思维能力。

四、与教学相结合

1、注重情境创设

教学设计要注重情境创设,要能够从“旧知”引出“新知”。我国传统的教学设计,通常有五个环节,即组织教学、引入新课、讲解新课、巩固新课和布置作业。其中,“引入新课”往往是数学教师最为精心设计的部分。它符合人的认识规律,也与现代认知主义理论和建构主义思想相一致。教师设计了一串问题,让学生在对新知识相关的已知内容的“温故”之中,水到渠成地学习新知识,这是一种较高水平的教学艺术。情境创设中是否需要利用图形计算器,要视情况而定。

2、注重建构知识

引导学生用探索法和发现法去建构知识的意义。在建构意义的过程中要求学生主动去搜集和分析有关的信息资料,对所学的问题提出各种假设并努力加以验证。使学生善于把当前学习内容尽量与自己已有的知识经验联系起来,并对这种联系加以认真思考。通过教学工具(如图形计算器),使学生将意义建构与协商过程结合起来,以达到最佳的教学效果。

五、结束语

本节课从学科角度出发,根据教学目标,突出重点,突破难点,注重数学思想方法的渗透,注重在活动中表达数学的体验感受。本节课突出活动设计、突出探究、突出学科性,突出方法性的不断深入和展开,注重各环节之间相互关联,注重每个环节的衔接。注重方法上、内容上的衔接,思维度的衔接,整节课设计流畅、自然,符合学生思维习惯和学习方式。在几个环节中特别突出了对探究过程性的内容的思考,以期达到深刻理解平移的实质。从教学环节上注重数学几种语言的转换,特别是数形结合,注重教学的效率,总结升华,练习巩固,注重梯度,最大限度地达到预期目的。

学生借助 CASIO 图形计算器,对平面直角坐标系下图形的平移与坐标变化的规律进行探索,使学生更深入体会到平面直角坐标系的作用,体现了数学活动充满创造与探索的魅力,增加了课堂教学的全效性,同时把听教师讲解演变成了

【4 / 5】

一节有趣的动手实践课,使课堂教学更生动活泼,教学效果更好。

CASIO图形计算器的使用不受时空的限制,为学生的学习和发展提供丰富多彩的教学环境和有利的学习工具,图形计算器的积极作用毋庸质疑。然而也给我们带来新的困惑,如部分学生过度依赖图形计算器而降低了计算力;部分学生只注重图形计算器的结果而忽视知识形成过程,造成两极分化进程的加速等问题。如何克服这些问题,充分发挥信息技术的优势,有效优化课堂教学,是今后我们要深入思考的问题。

参考文献

1王芝平.图形技术支持下的数学探索.数学通报,2004,2:33~36。 2王江东.对中学数学实验教学的认识与思考.教改探索,2007年第三期。 3王尚志.数学教学研究与案例.高等教育出版社,2006年12月。 4张奠宙等.数学教学学导论.高等教育出版社,2003.4。

5刘静,宋乃庆.图形计算器支持下的数学学习.西南师范大学学报,2002.8。

6叶立军.关于图形计算器与高等数学教学改革的若干思考.宁波教育学院学报,2003.6。

【5 / 5】

第三篇:生活中的立体图形教案

一、教材分析:几何学习最重要的目标是使学生更好地理解自己所生活的三维世界,发展空间观念。新教材在重新审视几何教学目标的基础上,对传统的几何内容进行了较大幅度的改革:将"对图形的初步认识"安排在几何学习的第一章,让其成为平面几何的入门知识。以日常生活中随处可见的物体为研究对象,具有现实性。教材的编排在这里巧妙地以生活中的物体──空间图形──面──点、线为序,丰富对现实空间及图形的认识,建立初步的空间观念,充分体现了数学来源于生活的道理。而"生活中的立体图形"是本章的第一节,它从观察我们身边的立体图形入手,勾勒出图形的形状,利用类比的方法找出图形间的区别与联系。既是本章知识的基础,又是几何学习的开端,更是对学生小学已有的立体图形知识的提高和完善,同时也成为今后学习的铺垫,具有重要的引领地位。新教

二、教学目标:

知识与技能目标:

1、通过观察,.能够识别具体图形。

2、识别圆柱与棱柱、圆锥与棱锥的区别与联系。

3、使学生对物体形状的认识逐步由模糊的、感性的、上升到抽象的数学图形美。

旨在培养学生探究、创造、实践的能力。

过程与方法目标:

经历从现实世界中抽象出图形的过程,感受图形世界的丰富多彩,同时通过比较不同的物体,学会观察物体间的不同特征,体会几何体间的联系与区别。在探索物体形状的认识过程:即观察、比较、分析、归纳中,体会类比、转化的思想方法。

旨在让学生体验和理解生活中的立体图形。

情感目标:

1、通过直觉增进学生的理解力,提高学生的审美意识,使他们获得成功的体验。

2、激发学生对丰富的图形世界的好奇心及兴趣,初步形成积极参与活动,主动与他人合作交流的意识。

旨在让学生体会立体图形在生活中的广泛应用和丰富的文化价值;体验数学学习的乐趣,提高应用数学的意识。

教学重点:

由于本节内容是对学生小学已有的立体图形知识的提高和完善,同时结合新课程改革充分体现数学来源于生活的要求,确定本课重点为:

1.感受图形世界的丰富多彩。

2.认识现实背景中的圆柱、圆锥、棱柱、棱锥、球。

教学难点:

柱体的锥体是学生日常生活中常见的图形,像电冰箱、足球等,学生很容易识别,但要找出它们之间的联系与区别,对七年级的学生来讲,难度较大,所以根据学生现有的知识水平与认知规律,将本课难点确定为:

认识圆柱、圆锥、棱柱、棱锥间的区别与联系,并能用自己的语言描述它们的某些特征。培养学生空间感的形成。

教学设备或教辅工具:

多媒体、投影仪、展示的图形。

三、说教法、学法:

1、教法:

新课程改革体现了"重结论,更重过程"的思想。所以,在讲授本节课时,我采用以下方法进行教学:

(1)视觉图象法:以参观世界着名的建筑为开端,让孩子们在欣赏这些雄伟、奇特建筑的同时,感受其中蕴涵的数学图形的美,也提升学生的审美意识。充分运用多媒体的教学优势是本课的一个最佳切入点。

(2)情景教学法:创设丰富的图片情境,引发学生自主探求,亲自感受,让学生在视听结合的环境中激发学习热情,加深体验,将数学与图片中涉及到的地理、历史、美术等学科进行整合。

(3)比较学习法:利用比较的方法,认识各种几何图形的共性和各自的特点。

2、学法:

学生都渴望与他人交流,合作探究可使学生感受到合作的重要和团队的精神力量,增强集体意识,所以本课采用小组合作的学习方式,让学生遵循"观察--猜想--验证--归纳--反馈--实践"的主线进行学习。

四、教学程序:

教学环节教学流程教学内容设计意图教学方式时间

分配创设情景

1、展示蜜蜂营造蜂房、燕子做窝的动画,提出问题:

瞧,它们也懂数学的图形美!

2、展示生活中立体图形的实物,同时勾勒出立体图形的形状。让学生亲自动手触摸,感知几何体的形状。

3、观察你周围的环境,我们会发现建筑物的形状千姿百态,自然物品的各种形态既美化了我们生活的空间,同时也带给我们许多的遐想:这些美妙的精美绝纶的图形是自然的造化还是建筑师们的创新与构思?通过实例的电脑展示,唤起学生的好奇心,提出问题,引导学生进入新知识的学习,创造一种探索的情景。在学习中,只有调动学生的非智力因素,特别是内在动机,才能使他们以强烈的求知欲和饱满的热情来学习新知识。

电脑动画显示3分钟

实物与图片欣赏

教学过程中,要尽可能地让学生多观察各种几何体或实物图,通过大量例子形成对各种几何体的直观认识。同时体现从生活中不规则的图形到规则的图形的认识。播放图片

新课讲解

1、把学生分成6人一组,组长进行小组内分工。发给每个学生合作题卡。

2、首先让学生看书,看完后合作完成题卡上

1、2题。

3、组织学生分组讨论柱体与锥体、柱体与柱体、锥体与锥体间的区别与联系。(老师巡场指导)

4、小组代表汇报讨论成果。其他组的同学纠正、补充。

1、让学生进行小组合作活动,培养学生合作交流的精神。

2、让学生大胆想像,并通过讨论确认想像结果的正确性,发展学生的空间观念。组织

学生小组合作交流探讨16分钟

教师演示归纳

1、教师利用动画演示圆柱、棱柱、圆锥、棱锥的组成以及它们的展开图。

2、教师与学生共同探讨得出几种几何体间的联系与区别。如何对以上几何体进行分类:

(1)按底面

(2)按侧面

3、围成图4.1.2和图4.1.5等立体图形的面是平的面,像这样的立体图形,又称为多面体。

使学生对物体形状的认识逐步由感性上升到理性、由具体形象到抽象的数学图形。Flash

动画演示5分钟

反馈练习

4道星级测试闯关题供学生抢答,极大限度地调动学生的积极性。同时及时反馈课堂信息。巩固新知,深化学习内容。抢答方式5分钟

课题拓展

教师补充演示圆柱、圆锥、球体的形成过程。

遵循巩固与发展相结合的原则,培养学生的创新意识和空间想象能力。播放

动画3分钟

总结启发学生回顾新知、激励学生代表总结发言。注重学生间的相互评价方式的运用。个体总结、集体补充

实践操作

用牙签和橡皮泥制做三棱柱、三棱锥、四棱柱、四棱锥体现课改理念,增强学生动手能力。28分钟

作业

1、预习

4、2画立体图形128~130页

2、准备正方体、圆柱、四棱锥

五、教学设计说明:

社会经济高速发展,需要全新思维,创新性人才,而这种人才是靠教育培养的,在过去的教育体制中,只是把学生作为"受体",强加地把所有东西都填装进去,这就难以开拓学生思维,挖掘他们的潜力,课改正是要改变这一点,要留给学生更多的时间,更多的实践。所以本节课我在教学过程中着重体现两大特色:

1、让学生体验数学。

2、让学生自主掌握数学。

通过本课的学习,让学生感受到生活中处处有数学,课堂中安排学生欣赏生活中的立体图形。使学生感受到数学与人类生活的联系,数学是来源于生活中的,通过实践,学生更加体验到数学对人类历史发展所作的贡献,从而立志学好数学,为祖国建设添砖加瓦。

最后,请允许我以几句在课改中感受颇深的话语来作为我今天的结束语:

教育是探索和启蒙,而不是宣传和灌输;教育是平等对话和自由交流,而不是指示和命令;教育是丰富认识,而不是统一思想;教育是信任,而不是防范。

板书设计:

§4.1生活中的立体图形

圆柱

柱体棱柱

多面体

规则的锥体棱锥

生活中的立体图形圆锥

球体

不规则的

小组合作题卡(第______组)

一、

1、写出下面与实物相类似的立体图形的名称。.()()()()()()

二、讨论题

(一)讨论圆柱与棱柱的区别与联系

(二)讨论圆锥与棱锥的区别与联系

(三)论棱柱与棱锥的区别与联系

第二次讨论:

(一)讨论多面体的特征

多面体顶点数(V)面数(F)棱数(E)顶点数+面数-棱数(V+F-E)正四面体正方体正八面体多面体具有的顶点数、面数和棱数满足欧拉公式:____________________

第四篇:《图形中的规律》教案(精选)

《图形中的规律》教案

教学目标:

1通过摆图形活动,让学生尝试找出图形中的规律,并用字母表示这一规律。

2、通过活动,发展学生的抽象概括能力。 教学重难点:

教学重点:让学生经历一个动手操作、探索发现的过程,找到探究这一类数学知识的方法。

教学难点:让学生能用准确地语言描述自己探究发现的过程,并说出这样列式的算理。 教具,学具准备:

PPT课件,小棒,三角形个数与小棒根数的表格 教学过程:

同学们喜欢玩游戏吗?今天老师要和大家一起来玩个猜数游戏,看看谁是火眼精金?(课件出示)

1、

3、

5、„„

师追问:你怎么这么快就猜出后面的数字了?为什么?

3、

6、

9、„„

你的眼睛可真亮!那么老师要来考考你的听力了?竖起小耳朵哦! (一)创设情景,谈话引入

1、“听”

师:请同学们听(拍手)

师:你们能将掌声继续吗?(生拍手)

师:好!你们有什么发现?(先拍一下,再两下„„)有规律 师:我们用有规律的掌声表扬一下这位同学! 板书:规律

在生活中,只要我们仔细观察,认真分析就会发现很多规律,数学图形中也存在着许多的规律,这节课老师想带领大家一起去探索图形中的规律! 揭示课题:图形中的规律

(二)动手操作,探索新知

1、摆三角形(探索三角形个数与小棒根数之间的关系) 师:看,这是个什么图形?(三角形) 师:摆一个三角形要多少根小棒?(3根) 师:摆两个的三角形呢?(6根) 师:有不同的摆法吗?(5根)你是怎么摆的?指明上黑板摆一摆 师:请大家数一数他用了几根小棒(5根)

师:同样是摆了两个三角形,为什么他用的小棒根数比独立摆用的少呢? (找出公用边)(生找出后,课件闪烁)

师:对,这也叫公用边,每相邻两个三角形公用了一条边。

师:那我要再摆一个呢?需要几根小棒?谁愿意来摆一摆?指明学生上黑板 师:如果用这种方法继续往下摆,三角形个数和小棒根数之间有什么关系呢?我们就来研究一下这种摆法!

师:我们来动手摆一摆,算一算,研究一下三角形个数和小棒根数之间有什么关系?(拿出作业纸和小棒,同桌两个合作,一人摆一人记录,边摆边记录)

师:我们可以从简单入手,先摆一个、再摆两个、三个„„以此类推,直到10个三角形,并数一数每次所摆的三角形共需要几根小棒,记录在表

(一)里。(学生摆、并记录、师指导)

师:现在谁愿意汇报一下,你们所摆的图形个数和所需要的小棒根数 师:(课件出示)统计表. 请大家仔细观察上表,看看你有什么发现?

师:引导得出“每多摆一个三角形就增加2个小棒(板书)

师:摆10个三角形需要21根小棒,我们可以摆出来之后再数一数。那如果我要知道摆100个、1000个或更多个三角形需要多少根小棒,我们摆出来之后再数会怎么样?(很麻烦)那你有什么更简便的办法吗?又节约时间! (用算式计算)

师:你能不能列算式计算一下,像这样摆10个三角形需要多少根小棒? 请你将自己的方法写在本子上,并说说理由。 注:每一种方法都需要多个人说明

生说完之后追问:这种方法你听明白了吗?谁再来说一说?

方法:A; 1+10×2 (先摆1根,后面都是2根,10个就是10×2)

B; 3+9×2 (第1个三角形要3根,后面9个都要2根)

C; 1+2+9×2

D、3×10-9

(摆1个三角形要3根,单独摆10个就是三十根,去掉重合的公用边有9根)

师:同学们真爱动脑筋!其实方法还有很多,课后同学们可以自己再去探索。

师:根据这一发现,你能很快的算得出摆20个三角形,需要多少根小棒吗?比一比看看谁最快!

3+(20-1)×2=3+19×2=41

20×2+1=41 师:看,那种方法更快啊?

师:如果这样摆100个三角形要几根小棒呢?(100×2+1=201) 让学生思考并写下算式,并说说自己的想法

师:如果这样摆n个三角形,要用多少根小棒,你能用一个算式表示出来吗?

公式:2N+1 (板书)

师:谁来说一说N表示什么意思?2n呢?后面的1呢?

(N是三角形的个数,2是去掉第一根,每个三角形需要2根小棒) 回顾:我们刚才在探索三角形的规律时是怎么研究的?先是动手实践(摆三角形)然后观察分析,找出规律,最后总结归纳。 师:通过摆三角形,大家发现了这么重要的规律,如果像摆正方形会有什么样的规律呢? 你能利用我们刚才的方法寻找到他们的规律吗?

(三)拓展延伸:

(1)摆正方形规律的探索

师:(课件出示例图)如果也像摆三角形一样公用一条边,请大家用摆三角形的方法列表,同桌合作,看每一次需要多少根小棒,并记录完成统计表

(二) (同桌两人,一人摆一人记录,生摆正方形,师巡视)

师:谁愿意汇报一下你的记录,汇报完后(课件出示)统计表: 师:请大家仔细观察,从这个表中你发现了什么? 板书:每多摆一个正方形就增加3根小棒

师:你是怎样发现这一重要规律的?(引导学生从数,图形中思考)

师:根据这一重要的发现,你能很快算出摆10个正方形需要多少根小棒吗?

4+(10-1)×3

1+10×3 师:如果要摆20个呢?怎么算?1+20×3 师:照这样,摆N个正方形,需要多少根小棒呢?谁能列出算式?

3n+1 (板书)

师:当n=100时,需要几根小棒?

师:今天我们通过摆三角形、正方形、来探索这些图形中的规律。同学们能不能利用今天学习的知识解决一下生活中的问题呢! 智慧屋:按下列方式摆餐桌和椅子:

1、摆n张餐桌可以坐多少个人?

2、有50个人,需要摆多少张桌子?

(四)全课总结

师:这节课我们也当一回探索的小主人,谁愿意来说一说你都有哪些收获?

师:希望你们在今后的生活中,多留心、多观察,主动去探索、去思考,做生活的主人,做学习的主人。

第五篇:Visual C++中的图形特技

随着计算机信息表示及实现的多媒体化,在许多学习软件、游戏软件,以及多媒体课件制作软件中,经常使用各种图形显示技巧,如图形的推拉、交错、雨滴状、百页窗、积木随机堆叠等显示模式。这样使画面变得更为生动活泼,更能吸引用户,也为更好地发挥软件的功能奠定了基础。本文就Visual C++ 6.0中实现图形的各种显示技巧的原理及具体方法做些探讨。

基本原理

在Visual C++6.0中,显示位图的方法及过程如下:

1. 显示程序资源中的位图(位图的所有数据均存在于可执行文件中)

(1)从资源中装入位图

● 定义位图对象数据成员CBitmap m_Bitmap;

● 调用CBitmap成员函数LoadBitmap(),如m_Bitmap.LoadBitmap(IDB_BITMAP1);

● 传入LoadBitmap的参数是位图在图形编辑器中生成或从位图文件中引入时赋予的识别符。

(2)生成与位图相联系的内存设备情境对象

CDC MemDC;

MemDC.CreateCompatibleDC(NULL);

MemDC.SelectObject(&m_Bitmap);

(3)显示位图

CClientDC ClientDC(this);

BITMAP BM;

m_Bitmap.GetObject(sizeof(BM),&BM);

ClientDC.BitBlt

( X,Y, //目标设备逻辑横、纵坐标

BM.bmWidth, BM.bmHeight, //显示位图的像素宽、高度

&MemDC, //待显示位图数据的设备情境对象

0,0, //源数据中的横、纵坐标

SRCCOPY); //位操作方式

这种方法显示位图速度快,但不是很灵活,而且会使可执行文件增大。

2. 显示独立文件方式的位图(位图的所有数据独立于可执行文件)

HBITMAP *hBitmap; //定义位图对象句柄

BITMAP BM;

CDC MemDC;

CClientDC ClientDC(this);

MemDC.CreateCompatibleDC(&ClientDC);

hBitmap=(HBITMAP*):: LoadImage

( AfxGetInstanceHandle(),

//取得应用程序句柄

“demo1.bmp”,

//位图文件名

IMAGE_BITMAP,

//类型为Windows位图

0,0,

LR_LOADFROMFILE);

//从文件中取位图数据

MemDC.SelectObject(hBitmap);

:: GetObject(hBitmap,sizeof(BM),&BM); ClientDC.BitBlt(……)

//使用格式与方法一同

这种方法显示位图速度较之前一种慢了一点,但其灵活性较大,可以任意变换位图文件,而无需重新编译源程序, 也减小了可执行文件的大小。

实现方法

下面介绍各种图形显示技巧的具体实现原理及方法。以下所有程序算法的实现均可放在视类(CView,也可视自己的需要放在其他类)中处理,且有必要进行如下的相关操作:

增加如下类成员变量:

BITMAP m_Bm;

//保存位图的宽、高度等数据

HBITMAP *m_hBitmap;

//保存位图数据句柄

CDC m_MemDC; //内存设备情境对象

在类构造函数中加入如下代码:

m_MemDC.CreateCompatibleDC(NULL); //产生内存设备情境对象

m_hBitmap=(HBITMAP *)::LoadImage(

//从文件中装入位图数据

AfxGetInstanceHandle(),

“demo1.bmp”,

IMAGE_BITMAP,

0,0,

LR_LOADFROMFILE );

m_MemDC.SelectObject(m_hBitmap); //将位图选入内存设备情境对象

::GetObject(m_hBitmap,sizeof(m_Bm),&m_Bm);

1. 水平交错效果

原理:将内存设备情境对象(如MemDC)中的位图数据拆分成奇、偶扫描线两部分,其中奇数条扫描线由上往下移动,偶数条扫描线则由下往上移动,且两者同时进行。屏幕上的效果为分别由上下两端出现的较淡栅栏图形,逐渐相互靠近,直至整个位图完全清楚。垂直交错效果的实现原理与之类似。

程序算法:

int i,j;

for ( i=0; i<=m_Bm.bmHeight; i+=2 )

{j = i;

while ( j>0 )

{ClientDC.StretchBlt(

//奇数,由上至下

0,j-1,

//目标设备逻辑横、纵坐标

m_Bm.bmWidth,1,

//显示位图的像素宽、高度

&m_MemDC,

//源位图设备情境对象

0,m_Bm.bmHeight-(i-j-1),

//源位图的起始横、纵坐标

m_Bm.bmWidth,1,

//源位图的像素宽、高度

SRCCOPY); ClientDC.StretchBlt(

//偶数,由下至上

0,m_Bm.bmHeight-j,

//目标设备逻辑横、纵坐标

m_Bm.bmWidth,1,

//显示位图的像素宽、高度

&m_MemDC,

//源位图设备情境对象

0,i-j,

//源位图的起始横、纵坐标

m_Bm.bmWidth,1,

//源位图的像素宽、高度

SRCCOPY);

j-=2; }

// while ( j>0 )

Sleep(10);

}

//for ( i=0; i<=m_Bm.bmHeight; i+ =2 )

2. 雨滴效果

原理:将内存设备情境对象(如MemDC)中位图数据的最后一条扫描线,顺序地从目标设备(如ClientDC)中待显示位图的第一条扫描线所在位置移动至最后一条处,并保留此条扫描线在屏幕上移动时留下的轨迹。接着再把MemDC中位图数据的倒数第二条扫描线,顺序地从目标设备(如ClientDC)中待显示位图的第一条扫描线所在位置移动至倒数第二条处。其余的扫描线依此类推。

程序算法: int i,j;

for ( i=0; i<=m_Bm.bmHeight; i++ )

{for ( j=0; j<=m_Bm.bmHeight-i; j++ )

ClientDC.StretchBlt(

0,j,

//目标设备逻辑横、纵坐标

m_Bm.bmWidth,1,

//显示位图的像素宽、高度

&m_MemDC,

//源位图设备情境对象

0,m_Bm.bmHeight-i,

//源位图的起始横、纵坐标

m_Bm.bmWidth,1,

//源位图的像素宽、高度

SRCCOPY);

Sleep(20);

}

//for ( i=0; i<=m_Bm.bmHeight; i++ )

3. 百叶窗效果

原理:将内存设备情境对象(如MemDC)中的位图数据分成若干组,然后分别从第一组到最后一组进行搬移,第一次搬移每组中第一条扫描线到目标设备(如ClientDC)中待显示位图的相应位置,第二次搬移每组中第二条扫描线,接着第三条、第四条扫描线。

程序算法:

int i,stepi,j;

stepi=m_Bm.bmHeight/10;

for ( i=0; i<=stepi; i++ )

{for ( j=0; j<10; j++ )

ClientDC.StretchBlt(

0,j*stepi+i,

//目标设备逻辑横、纵坐标

m_Bm.bmWidth,1,

//显示位图的像素宽、高度

&m_MemDC,

//源位图设备情境对象

0,j*stepi+i,

//源位图的起始横、纵坐标

m_Bm.bmWidth,1,

//源位图的像素宽、高度

SRCCOPY);

Sleep(20);

} //for ( i=0; i<=stepi; i++ )

4. 随机积木效果

原理:将内存设备情境对象(如MemDC)中的位图数据分成纵横十等份共一百组数据,然后随机地取出这一百组数据中的某一组显示到目标设备(如ClientDC)中待显示位图的相应位置,如此反复直到所有一百组数据均显示完毕为止。

程序算法:

int i,j,stepx,stepy,dispnum,x,y;

int pxy[10][10];

//使用本数组记录已显示过的数据组

for ( i=0; i<10; i++ )

for ( j=0; j<10; j++ )

pxy[i][j]=0;

stepx=m_Bm.bmWidth/10;

stepy=m_Bm.bmHeight/10;

srand( (unsigned)time( NULL ) );

dispnum=0;

//记录已显示过的数据组的个数

while(1)

{ x=rand() % 10;

y=rand() % 10;

if ( pxy[x][y] )

//本组x,y所代表的数据组是否已显示过?

continue;

pxy[x][y]=1;

//表明本组x,y所代表的数据组已显示过

ClientDC.StretchBlt(

x*stepx, y*stepy,

//目标设备逻辑横、纵坐标

stepx,stepy,

//显示位图的像素宽、高度

&m_MemDC,

//源位图设备情境对象

x*stepx, y*stepy,

//源位图的起始横、纵坐标

stepx,stepy,

//源位图的像素宽、高度

SRCCOPY);

dispnum++;

if ( dispnum >=100 )

break;

Sleep(30);

} // while(1)

结 语

以上程序代码均在Visual C++ 6.0中调试通过,所有片断均可编写成独立的函数,灵活使用。如果对以上几种显示效果进行变换,我们还可以实现多种其他特技效果。

上一篇:过年说话注意事项下一篇:工具车的定置管理