一种通过计算机与基础数学结合的演示系统

文档序号:35212857发布日期:2023-08-24 14:17阅读:32来源:国知局
一种通过计算机与基础数学结合的演示系统

本发明涉及计算机,尤其涉及一种通过计算机与基础数学结合的演示系统。


背景技术:

1、素质教育改革持续深化背景下,教育新时期面临着严峻的挑战,传统的数学学习理念和学习方法较为陈旧,学习方法局限性较大,学习效率偏低,尤其是教育信息化背景下,在基础数学学习中应用计算机技术,可以有效整合学习内容,辅助数学学习活动开展,同时还可以促使复杂的数学内容精简化,将数学知识生动,形象的展现在学生面前,辅助数学学习活动高效开展的同时,培养学生良好的数学素养,就基础数学和计算机技术结合模式展开分析,客观阐述计算机技术优势,提出合理的对策予以实践。

2、现有的计算机与基础数学结合一般只是教职人员通过对于课件的编辑,将课程内容以图片形式为学员播放,无法将基础数学的教学内容构建为成体系的教学知识为学员展示,条理性不够清晰,为此,我们提出一种通过计算机与基础数学结合的演示系统来解决上述问题。


技术实现思路

1、本发明的目的是为了解决现有技术中的计算机与基础数学结合一般只是教职人员通过对于课件的编辑,将课程内容以图片形式为学员播放,无法将基础数学的教学内容构建为成体系的教学知识为学员展示,条理性不够清晰的问题,而提出的一种通过计算机与基础数学结合的演示系统。

2、为了实现上述目的,本发明采用了如下技术方案:

3、一种通过计算机与基础数学结合的演示系统,包括基础数学结合体系、软件体系及算法体系,所述基础数学结合体系包括计算机技术与几何学结合、计算机与线性代数学结合、计算机与微积分结合及计算机与统计学结合,所述软件体系包括通用软件、优化设计软件及统计分析软件,所述算法体系包括边缘填充算法、有效边填充算法及种子填充算法。

4、优选的,所述计算机技术与几何学结合,将结构性的问题转变成程序化问题,所述计算机与线性代数学结合,计算机将矢量和矩阵进行计算和处理,将矢量和矩阵进行旋转、平移、缩放,将线性代数问题转化为程序语言,所述计算机与微积分结合,将积分和几何学相结合,将积分问题转化为线、面、体问题,计算机构建相关的二维及三维模型,将微分问题转化成几何问题进行求解,所述计算机与统计学结合,计算机统计学软件对统计学数据分析。

5、优选的,所述通用软件包括mathematica、matlab、maple,所述优化设计软件为lingo与lindo,所述统计分析软件为sp、sa、state。

6、优选的,所述边缘填充算法:找到多边形每一条边与扫描线的交点,以交点为边界分为左右两部分,填充将交点右侧像素点的颜色取反;所述有效边填充算法:找到多边形纵坐标的最小值与最大值,确定扫描线范围,扫描线从多边形最低点向上移动,找到每一条扫描线与多边形各边的交点,算出交点横坐标,以横坐标递增的次序排序,确定填充区间,填充该区间内的像素点;所述种子填充算法:用鼠标在填充图形内部任意区域选取种子结点,搜索上下左右像素点,由内向外进行指定点的填充,直到遇到边界位置。

7、优选的,一种通过计算机与基础数学结合的演示系统,所述演示系统运行包括以下步骤:

8、步骤1.重要类说明:数据存储在cstudydoc类文档,结果显示在cstudyview类中;

9、cstudyframe是程序主框架;

10、cstudyapp表示开发程序的主线程;

11、cstudydoc是文档类,主要负责维护和管理程序数据;

12、cstudyview表示文档数据,也是用户操作的主要界面;

13、步骤2.运行界面架设:菜单项、工具条及绘图区域;

14、菜单项:菜单项有快捷方式和下拉子菜单,在资源视图menu下的idr_mainframe中进行设计;

15、工具条:工具条在toolbar下的idr_mainframe中,工具条的id与子菜单的id相对应;

16、绘图区域:在资源视图中添加dialog即可产生对话框视图,同时生成一个对话框类,在内部进行控件的编辑与操作;

17、步骤3.类、数据、函数运行:头文件中添加3个类,分别为桶结点类bucket、边表类edge和栈结点类stack;

18、studyview.h的公有数据成员包括colorref choosecolor;cpoint point[7];edge a[num],*firsta,*nowa,*t1,*t2;bucket*firstb,*nowb;分别为调色板、多边形定义、有效边表结点定义、桶结点的初始节点和当前结点定义;

19、消息响应函数在studyview.h中定义,在studyview.cpp具体实现,组织结构清晰,多边形填充涉及到的成员函数主要包括:

20、获取屏幕最大宽度void maxx();

21、获取屏幕最大高度void maxy();

22、多边形填充函数void fill();

23、构造桶结点函数void makebucket();

24、建立边表函数void et();

25、将新边插入边表函数void add(edge*);

26、对已产生的边表排序void order();

27、将结点压入堆栈void push(cpoint p);

28、将结点从栈中弹出stack*pop();

29、步骤4.调色运行;

30、填充颜色直接调用系统调色板,运行界面已有定义的颜色模板菜单,在类向导studyview中找到它的id,双击即可自动生成消息响应函数onfillcolor(),在该函数中添加以下代码:

31、onfillcolor();

32、ccolordialog ccd(fillcolor);

33、if(ccd.domodal()==idok);

34、fillcolor=ccd.getcolor();

35、步骤5.双缓冲技术运行;

36、添加响应函数onerasebkgnd(cdc*pdc)屏蔽背景刷新,然后在ondraw中进行如下操作:

37、定义一个位图对象:

38、cbitmap?bitmap,membitmap;

39、cdc mycdc;

40、bitmap.loadbitmap(idb_bitmap1);

41、bitmap bmp;

42、bitmap.getbitmap(&bmp);

43、建立与前端缓冲区兼容的后备缓冲区:

44、mycdc.createcompatibledc(null);

45、建立位图:

46、membitmap.createcompatiblebitmap(pdc,260,260);

47、将位图选入到内存设备描述表,将图形画到指定的位图:

48、cbitmap*poldbit=memdc.selectobject(&membitmap);

49、mycdc.createcompatibledc(pdc);

50、mycdc.selectobject(&bitmap)。

51、与现有技术相比,本发明的有益效果是:能够分别将计算机技术与几何学、线性代数、微积分及统计学结合,将几何学、线性代数、微积分及统计学问题转化为计算机技术问题进行求解,将基础数学知识通过计算机技术构建为成体系的教学知识,条理性清晰。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1