用OpenGL实现地球仪,包含了纹理、映射、旋转等作用intmain(intargc,char**argv){glutInit(&argc;,argv);glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB|GLUT_DEPTH);glutInitWindowSize(600,600);glutInitWindowPosition(100,100);glutCreateWindow("OpenGL地球——LEILEI");glutDisplayFunc(draw_tellurion);glutIdleFunc(Moving);init();glutMainLoop();return0;}
2024/11/23 19:55:47 2KB OpenGL earth
1
3.几何图形(满分50分)版本1:满分10分设计抽象类GeometricObject及其子类Triangle和Circle。
GeometricObject类设计要求如下:■一个名为color的Color类型的私有数据域,表示对象的颜色■一个名为filled的Boolean类型的私有数据域,表示对象是否■一个名为dateCreated的Date类型的私有数据域,表示对象的■一个无参构造方法。
■一个能创建特定color和filled的有参构造方法。
■相关数据域的访问器和修改器。
■两个个名为draw和erase的抽象方法。
■一个名为getArea的抽象方法。
■一个名为getPerimeter的抽象方法。
■重写toString方法。
Triangle类设计要求如下:■三个名为side1、side2和side3的double类型的私有数据域表们的默认值是1.0。
要求三个数据域保留2位小数。
■一个无参的构造方法创建默认三角形。
■一个能创建带指定side1、side2和side3的有参构造方法。
■所有三个数据域的访问器和修改器方法。
■父类抽象方法的实现。
■重写toString方法。
Circle类设计要求如下:■一个名为radius的double类型的私有数据域,表示圆的半径,数据域保留2位小数。
■一个名为PI的静态常量,其值为3.14■一个无参的构造方法创建默认三角形。
■一个能创建带指定radius的有参构造方法。
■radius数据域的访问器和修改器方法。
■父类抽象方法的实现。
■重写toString方法。
测试类TestGeometricObject1设计要求如下:■一个能随机生成Circle类和Triangle类对象的静态方法GeometricObject[]RandomCreateGeometricObject()■以随机生成的数组为参数,输出数组中每个对象的基本信息、周长和面积。
■类中其它方法的测试版本2:满分20分将上面的抽象类GeometricObject改为接口,接口只保留其中四个抽象方法,声明类Circle、Triangle实现该接口,类的基本要求如上,同时为每个类增加一个将当前对象序列化到指定文件的方法writeToFile(Filef)。
测试类TestGeometricObject2设计要求如下:■一个能随机生成Circle类和Triangle类对象的静态方法,该方法将随机生成的象序列化到指定的文件GeometricObjects.dat中,序列化成功返回真,否则返回假。
BooleanRandomCreateGeometricObject()■将GeometricObjects.dat文件中对象全部读出,存储到GeometricObject对象数组中,然后以此数组为参数,输出数组中每个对象的基本信息、周长和面积。
■类中其它方法的测试。
新增一个类Rectangle,也实现接口GeometricObject,同时修改测试类TestGeometricObject2,体会开-闭原则。
版本3:满分20分在第2步的基础上设计实现一个具有GUI界面的几何图形绘制系统系统,要求实现根据选择的几何图形类型来绘制和删除相应的图形,其中相关参数应通过界面输入,并可计算图形的周长和面积。
2024/7/31 3:21:55 23KB 几何图形 jpanel 课程设计CQUT xhay
1
I.Unit2Period1教学内容1.Usingthekeywordsincontext:paint,draw,read,write,swim,jump2.Usingyes/noquestionstoelicitapositiveornegativeresponse:Cansheswim?Yes,shecanswimverywell.3.Usingwh-questiontofindoutaperson’sabilities:whatcanyoudo?II.学情分析通过三年英语的学习,学生能够熟练
2024/7/23 16:53:27 62KB 4AM1U2P1教案
1
多边形扫描线填充算法MFC实现
1
OpenLayers3地图框选Draw画多边形Polygon获取坐标
2024/4/14 21:13:57 6KB OpenLayers3 地图框选 Draw 画多边形
1
SVG的矢量绘图程序,基于SVG库,Draw库构成的,可以直接在VS2015下进行编译,很适合在上面做二次开发,里面的程序框架设计的很好,类之间的调用基本全是通过事件委托的形式构成的,可以修改成支持dxf和svg的一个比较好的绘图软件,也可以做成工业绘图类的CAM软件。
2024/2/17 0:14:15 436KB svg winform 矢量绘图 放大缩小拖动
1
适用于unity中出现Thetypeornamespacename`MySql'couldnotbefound.Areyoumissinganassemblyreference?错误的解决方案
2023/12/16 0:32:54 682KB mysql.data.d
1
基本信息原书名:WebGLProgrammingGuide:Interactive3DGraphicsProgrammingwithWebGL(OpenGL)原出版社:Addison-WesleyProfessional作者:(美)KouichiMatsudaRodgerLea(松田浩一,罗杰.李)译者:谢光磊出版社:电子工业出版社ISBN:9787121229428上架时间:2014-6-11出版日期:2014年6月开本:16开页码:470版次:1-1---------------------目录《WebGL编程指南》第1章WebGL概述1WebGL的优势3使用文本编辑器开发三维应用3轻松发布三维图形程序4充分利用浏览器的功能5学习和使用WebGL很简单5WebGL的起源5WebGL程序的结构6总结7第2章WebGL入门9Canvas是什么?10使用[canvas]标签11DrawRectangle.js13最短的WebGL程序:清空绘图区16HTML文件(HelloCanvas.html)16JavaScript程序(HelloCanvas.js)17用示例程序做实验22绘制一个点(版本1)22HelloPoint1.html24HelloPoint1.js24着色器是什么?25使用着色器的WebGL程序的结构27初始化着色器29顶点着色器31片元着色器33绘制操作34WebGL坐标系统35用示例程序做实验37绘制一个点(版本2)38使用attribute变量38示例程序(HelloPoint2.js)39获取attribute变量的存储位置41向attribute变量赋值42gl.vertexAttrib3f()的同族函数44用示例程序做实验45通过鼠标点击绘点46示例程序(ClickedPoints.js)47注册事件响应函数48响应鼠标点击事件50用示例程序做实验53改变点的颜色55示例程序(ColoredPoints.js)56uniform变量58获取uniform变量的存储地址59向uniform变量赋值60gl.uniform4f()的同族函数61总结62第3章绘制和变换三角形63绘制多个点64示例程序(MultiPoint.js)66使用缓冲区对象69创建缓冲区对象(gl.createBuffer())70绑定缓冲区(gl.bindBuffer())71向缓冲区对象中写入数据(gl.bufferData())72类型化数组74将缓冲区对象分配给attribute变量(gl.vertexAttribPointer())75开启attribute变量(gl.enableVertexAttribArray())77gl.drawArrays()的第2个和第3个参数78用示例程序做实验79HelloTriangle80示例程序(HelloTriangle.js)80基本图形82用示例程序做实验83HelloRectangle(HelloQuad)84用示例程序做实验85移动、旋转和缩放86平移87示例程序(TranslatedTriangle.js)88旋转91示例程序(RotatedTriangle.js)93变换矩阵:旋转97变换矩阵:平移1004×4的旋转矩阵101示例程序(RotatedTriangle_Matrix.js)102平移:相同的策略105变换矩阵:缩放106总结108第4章高级变换与动画基础109平移,然后旋转109矩阵变换库:cuon-matrix.js110示例程序(RotatedTriangle_Matrix4.js)111复合变换113示例程序(RotatedTranslatedTriangle.js)115用示例程序做实验117动画118动画基础119示例程序(RotatingTriangle.js)119反复调用绘制函数(tick())123按照指定的旋转角度绘制三角形(draw())123请求再次被调用(r
2023/11/21 1:55:21 59.95MB webgl
1
在android下实现ios的实时毛玻璃效果的demo。
使用非常简单,可以根据自己的需求对代码进行修改。
一般情况下只需要把需要模糊的view继承BlurringView,然后设置背景的blurredView。
然后在画面刷新的时候使用invalidate()就好。
如果BlurringView需要继承ViewGroup的话记得加上setWillNotDraw(false);如果mBlurredView.draw(mBlurringCanvas)无效,可以尝试用mBlurredView.getDrawingCache()后bitmap,在转换成mBlurringCanvas;
注意:需要support.v8.renderscript包。
(对低版本的api)效果图:http://www.jcodecraeer.com/uploads/150319/1-150319202G6305.gif如何有问题可以留言讨论
1
共 23 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡