opengl20面体#include#defineX.525731112119133606#defineZ.850650808352039932staticGLfloatvdata[12][3]={//各顶点坐标{-X,0.0,Z},{X,0.0,Z},{-X,0.0,-Z},{X,0.0,-Z},{0.0,Z,X},{0.0,Z,-X},{0.0,-Z,X},{0.0,-Z,-X},{Z,X,0.0},{-Z,X,0.0},{Z,-X,0.0},{-Z,-X,0.0},};staticGLuinttindices[20][3]={//构成各面(三角形)的顶点索引{1,4,0},{4,9,0},{4,5,9},{8,5,4},{1,8,4},{1,10,8},{10,3,8},{8,3,5},{3,2,5},{3,7,2},{3,10,7},{10,6,7},{6,11,7},{6,0,11},{6,1,0},{10,1,6},{11,0,9},{2,11,9},{5,2,9},{11,2,7},};voiddisplay(){glClear(GL_COLOR_BUFFER_BIT);glBegin(GL_TRIANGLES);for(inti=0;i<20;++i){glColor3f(1.0,1.0,i*1.0/20);//颜色设置glVertex3fv(&vdata;[tindices[i][0]][0]);glVertex3fv(&vdata;[tindices[i][1]][0]);glVertex3fv(&vdata;[tindices[i][2]][0]);}glEnd();glFlush();}voidinit(){glClearColor(0.0,0.0,0.0,0.0);}intmain(intargc,char**argv){glutInit(&argc;,argv);glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);glutInitWindowSize(250,250);glutInitWindowPosition(100,100);glutCreateWindow("Polygon");init();glutDisplayFunc(display);glutMainLoop();return0;}
2024/6/21 7:15:38 749B opengl 20面体
1
MFC程序openGL绘制三维地形含有读取文件绘制为线性绘制为三角形打开关闭灯光可鼠标拖动移动
2024/6/20 11:29:07 4.1MB Opengl
1
自己封装的鼠标封装的鼠标场景漫游工具类RoamingScenceManager,跟界面没有任何关系,压缩包里面有三个工程,分别是Qt,Win32(原生OpenGL界面),MFC三个环境,里面都用到了RoamingScenceManager,用法简单,适合刚刚学opengl的新手构建场景。
2024/6/20 8:54:20 4.8MB OPenGL
1
Thishands-onguidecutsshortthepreambleandgetsstraighttothepoint–actuallycreatinggraphics,insteadofjusttheoreticallearning.Eachrecipeisspecificallytailoredtosatisfyyourappetiteforproducingreal-time3-DgraphicsusingGLSL4.0.IfyouareanOpenGLprogrammerlookingtousethemodernfeaturesofGLSL4.0tocreatereal-time,three-dimensionalgraphics,thenthisbookisforyou.FamiliaritywithOpenGLprogramming,alongwiththetypical3Dcoordinatesystems,projections,andtransformationsisassumed.ItcanalsobeusefulforexperiencedGLSLprogrammerswhoarelookingtoimplementthetechniquesthatarepresentedhere.
2024/6/17 21:28:51 7.28MB OpenGL GLSL
1
在OpenGL中读取OBJ模型,并在窗口中设置四个视图,每个视图分别显示一个三维模型,鼠标左、右键分别控制模型的平移和旋转操作。
可以作为图形编程练习的重要参考。
2024/6/17 5:55:36 3.24MB OpenGL Viewport
1
使用Qt5自带的QSerialPort和QSerialPortInfo写的控制台程序,可读取串口数据。
环境:win764位系统,Qt版本:qt-opensource-windows-x86-mingw482_opengl-5.3.0
2024/6/16 21:39:50 3KB Qt5 串口 控制台
1
以前在研究半透明不规则窗口的时候,用的是gdi的TextOut/DrawText绘制字体,但绘制出的字体是透明的,现在我完全放弃了GDI的TextOut()、BitBlt()的方式,而用SetDIBitsToDevice()代替,就是直接贴像素到DC里。
今天尝试用SetDIBitsToDevice()+UpdateLayeredWindow()实现半透明不规则窗口,结果非常顺利!贴出来,共享给需要的朋友.另外,本程序还附带了一个使用MMX汇编优化的32位alpha混合函数(57行,有详尽注释),需要的朋友可以直接copy了。
PS:关于字体的绘制我建议大家用GetGlyphOutline()手动提取字形像素去绘制,因为TextOut这类绘制函数功能有限,只适合初级软件使用,而要想画出丰富多彩的界面,比如字体alpha渐变,就必须自己操作像素,所以GetGlyphOutline()才是专业级的,而且兼容性好,可以抽象出来提供给ddraw、d3d、opengl等使用
2024/6/16 14:41:52 328KB 不规则窗口
1
实验一OpenGL+GLUT开发平台搭建5小实验1:开发环境设置5小实验2:控制窗口位置和大小6小实验3:默认的可视化范围6小实验4:自定义可视化范围7小实验5:几何对象变形的原因8小实验6:视口坐标系及视口定义8小实验7:动态调整长宽比例,保证几何对象不变形9实验二动画和交互10小实验1:单缓冲动画技术10小实验2:双缓冲动画技术11小实验3:键盘控制13小实验4:鼠标控制【试着单击鼠标左键或者右键,试着按下鼠标左键后再移动】14实验三几何变换、观察变换、三维对象16小实验1:二维几何变换16小实验2:建模观察(MODELVIEW)矩阵堆栈17小实验3:正平行投影119小实验4:正平行投影219小实验5:正平行投影320小实验6:透射投影121小实验6:透射投影222小实验7:三维对象24实验四光照模型和纹理映射26小实验1:光照模型1----OpenGL简单光照效果的关键步骤。
26小实验2:光照模型2----光源位置的问题28小实验3:光照模型3----光源位置的问题31小实验4:光照模型4----光源位置的问题33小实验5:光照模型5----光源位置的问题35小实验6:光照模型6----光源位置的问题38小实验7:光照模型7----光源位置的动态变化40小实验8:光照模型8----光源位置的动态变化43小实验9:光照模型9---光源位置的动态变化45小实验10:光照模型10---聚光灯效果模拟48小实验11:光照模型11---多光源效果模拟50小实验12:光照效果和雾效果的结合53小实验13:纹理映射初步—掌握OpenGL纹理映射的一般步骤56小实验13:纹理映射—纹理坐标的自动生成(基于参数的曲面映射)59小实验14:纹理映射—纹理坐标的自动生成(基于参考面距离)61
2024/6/16 6:22:25 10.68MB opengl 计算机图形学
1
兔子三维obj模型,可以直接导入OpenGL。
2024/6/14 8:56:55 178KB obj模型
1
使用ffmpeg实现视频的解封装,解码,使用QTopenGl实现视频画面的显示,使用QTQAudioOutputQIODevice实现声音的播放视音频同步采用的是视频同步音频的方法
2024/6/13 15:43:35 16.38MB ffmpeg qt c++
1
共 647 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡