当前位置: 首页 > news >正文

网站建设晋丰做个外贸的网站不懂英语咋做

网站建设晋丰,做个外贸的网站不懂英语咋做,如何做外文网站,网页建设类有哪些软件1 qtopengl 实现纹理贴图#xff0c;平移旋转#xff0c;绘制三角形#xff0c;方形-CSDN博客 在上篇文章里面我已经学会了给贴图#xff0c;并且旋转#xff0c;那我们如何动态的显示2D的图片呢#xff0c;那我们在qt里面是如何实现呢#xff0c;定时器连续更新。 上…1 qtopengl 实现纹理贴图平移旋转绘制三角形方形-CSDN博客 在上篇文章里面我已经学会了给贴图并且旋转那我们如何动态的显示2D的图片呢那我们在qt里面是如何实现呢定时器连续更新。 上代码 在第一篇的代码上加上定时器看看效果 static const char *vertexShaderSource #version 330\nlayout (location 0) in vec3 aPos;\n // 位置变量的属性位置值为0layout (location 1) in vec3 aColor;\n // 颜色变量的属性位置值为1layout (location 2) in vec2 aTexCoord;\n //纹理变量的属性位置值为2out vec3 ourColor;\n // 为片段着色器指定一个颜色输出out vec2 TexCoord;\n // 为片段着色器指定一个纹理输出uniform mat4 transform;\nvoid main(){\ngl_Position transform * vec4(aPos, 1.0);\n //顶点信息为4个值向量 // 注意我们如何把一个vec3作为vec4的构造器的参数ourColor aColor;\n // 输出颜色变量输入颜色TexCoord aTexCoord;\n // 输出纹理变量输入纹理}\n;static const char *fragmentShaderSource #version 330\nout vec4 FragColor;\n //输出颜色in vec3 ourColor;\n //输入的颜色 vertexShaderSource这里面的输入颜色in vec2 TexCoord;\n //输入的纹理 vertexShaderSource这里面的输入纹理uniform sampler2D texture1;\n //得到输入的纹理uniform sampler2D texture2;\n //得到输入的纹理void main(){\nFragColor mix(texture(texture1, TexCoord), texture(texture2, TexCoord), 0.7)* vec4(ourColor, 1.0);\n}\n;myGlWidget::myGlWidget(QWidget *parent):QOpenGLWidget(parent), m_ebo(QOpenGLBuffer::IndexBuffer), vbo(QOpenGLBuffer::VertexBuffer) {timer new QTimer;timer-setInterval(50);connect(timer,QTimer::timeout,this,[]{m_angle 30;m_x0.01;if(m_angle360){m_angle 0;}if(m_x1){m_x-0.6f;}update();qDebug()1233m_angle;});timer-start(); }myGlWidget::~myGlWidget() {} void myGlWidget::resizeGL(int w, int h) {this-glViewport(0,0,w,h); //定义视口区域 } void myGlWidget::paintGL() {this-glClearColor(0.1f,0.5f,0.7f,1.0f); //设置清屏颜色this-glClear(GL_COLOR_BUFFER_BIT);QMatrix4x4 matrix;matrix.setToIdentity();matrix.translate(m_x,0.0,0.0);matrix.rotate(m_angle,0,0,1);matrix.scale(0.5);// QMatrix4x4 matrix; // matrix.setToIdentity(); // //matrix.translate(0, 0, 0); // x往左移动0.5 y往上移动0.5(opengl中的y方向和屏幕方向是反的) // matrix.rotate(45, 0, 0, 1); // matrix.scale(0.5);// 渲染Shadervao.bind();//m_texture-bind();program-setUniformValue(texture1, 0);m_texture-bind(0);program-setUniformValue(texture2, 1);m_texture2-bind(1);program-setUniformValue(transform, matrix);//glDrawElements(GL_TRIANGLES, 4, GL_UNSIGNED_INT, 0);glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);//绘制纹理 //绘制3个定点,样式为三角形 }void myGlWidget::initializeGL() {// 为当前环境初始化OpenGL函数initializeOpenGLFunctions();glClearColor(1.0f, 1.0f, 1.0f, 1.0f); //设置背景色为白色//初始化纹理对象m_texture new QOpenGLTexture(QOpenGLTexture::Target2D);m_texture-setData(QImage(:/cube1.png).mirrored()); //加载砖块图片m_texture-setMinMagFilters(QOpenGLTexture::LinearMipMapLinear,QOpenGLTexture::Nearest);//设置缩小和放大的方式,缩小图片采用LinearMipMapLinear线性过滤,并使用多级渐远纹理邻近过滤,放大图片采用:Nearest邻近过滤m_texture-setWrapMode(QOpenGLTexture::DirectionS,QOpenGLTexture::Repeat);m_texture-setWrapMode(QOpenGLTexture::DirectionT,QOpenGLTexture::Repeat);//m_texture-allocateStorage();// //初始化纹理对象m_texture2 new QOpenGLTexture(QOpenGLTexture::Target2D);m_texture2-setData(QImage(:/0.png).mirrored()); //返回图片的镜像,设置为Y轴反向,因为在opengl的Y坐标中,0.0对应的是图片底部m_texture2-setMinMagFilters(QOpenGLTexture::LinearMipMapLinear,QOpenGLTexture::Nearest);//设置缩小和放大的方式,缩小图片采用LinearMipMapLinear线性过滤,并使用多级渐远纹理邻近过滤,放大图片采用:Nearest邻近过滤m_texture2-setWrapMode(QOpenGLTexture::DirectionS,QOpenGLTexture::Repeat);m_texture2-setWrapMode(QOpenGLTexture::DirectionT,QOpenGLTexture::Repeat);//m_texture2-allocateStorage();//创建着色器程序program new QOpenGLShaderProgram;program-addShaderFromSourceCode(QOpenGLShader::Vertex,vertexShaderSource);program-addShaderFromSourceCode(QOpenGLShader::Fragment,fragmentShaderSource);program-link();program-bind();//激活Program对象//初始化VBO,将顶点数据存储到buffer中,等待VAO激活后才能释放 // float vertices[] { // // 位置 // 颜色 //纹理 // // positions // colors // texture coords // 0.5f, 0.5f, 0.0f, 1.0f, 0.0f, 0.0f, 1.0f, 1.0f, // top right // 0.5f, -0.5f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, // bottom right // -0.5f, -0.5f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, // bottom left // -0.5f, 0.5f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 1.0f // top left // };float vertices[] {// ---- 位置 ---- ---- 颜色 ---- - 纹理坐标 --1.0f, -1.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f, // 右上1.0f, -1.0f, 1.0f, 0.0f, 1.0f, 0.0f, 1.0f, 1.0f, // 右下-1.0f, 1.0f, 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, // 左下1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 0.0f, 1.0f, 0.0f // 左上};vbo.create();vbo.bind(); //绑定到当前的OpenGL上下文,vbo.allocate(vertices, sizeof(vertices));vbo.setUsagePattern(QOpenGLBuffer::StaticDraw); //设置为一次修改多次使用//初始化VAO,设置顶点数据状态(顶点法线纹理坐标等)vao.create();vao.bind();// void setAttributeBuffer(int location, GLenum type, int offset, int tupleSize, int stride 0);program-setAttributeBuffer(0, GL_FLOAT, 0, 3, 8 * sizeof(float)); //设置aPos顶点属性program-setAttributeBuffer(1, GL_FLOAT, 3 * sizeof(float), 3, 8 * sizeof(float)); //设置aColor顶点颜色program-setAttributeBuffer(2, GL_FLOAT, 6 * sizeof(float), 2, 8 * sizeof(float)); //设置aColor顶点颜色//offset:第一个数据的偏移量//tupleSize:一个数据有多少个元素,比如位置为xyz,颜色为rgb,所以是3//stride:步长,下个数据距离当前数据的之间距离,比如右下位置和左下位置之间间隔了:3个xyz值3个rgb值,所以填入 6 * sizeof(float)program-enableAttributeArray(0); //使能aPos顶点属性program-enableAttributeArray(1); //使能aColor顶点颜色program-enableAttributeArray(2); //使能aColor顶点颜色//解绑所有对象vao.release();vbo.release();} 运行下看看是不是连续旋转起来了还平移了呢。
文章转载自:
http://www.morning.ypfw.cn.gov.cn.ypfw.cn
http://www.morning.nfpkx.cn.gov.cn.nfpkx.cn
http://www.morning.fqhbt.cn.gov.cn.fqhbt.cn
http://www.morning.ggnjq.cn.gov.cn.ggnjq.cn
http://www.morning.rkjz.cn.gov.cn.rkjz.cn
http://www.morning.qmpbs.cn.gov.cn.qmpbs.cn
http://www.morning.rqckh.cn.gov.cn.rqckh.cn
http://www.morning.nqwz.cn.gov.cn.nqwz.cn
http://www.morning.rxyz.cn.gov.cn.rxyz.cn
http://www.morning.lhgkr.cn.gov.cn.lhgkr.cn
http://www.morning.kjyhh.cn.gov.cn.kjyhh.cn
http://www.morning.fjfjm.cn.gov.cn.fjfjm.cn
http://www.morning.nspzy.cn.gov.cn.nspzy.cn
http://www.morning.cfmrb.cn.gov.cn.cfmrb.cn
http://www.morning.wiitw.com.gov.cn.wiitw.com
http://www.morning.dbnrl.cn.gov.cn.dbnrl.cn
http://www.morning.srndk.cn.gov.cn.srndk.cn
http://www.morning.qxbsq.cn.gov.cn.qxbsq.cn
http://www.morning.nytgk.cn.gov.cn.nytgk.cn
http://www.morning.yrdkl.cn.gov.cn.yrdkl.cn
http://www.morning.cxnyg.cn.gov.cn.cxnyg.cn
http://www.morning.qwmdx.cn.gov.cn.qwmdx.cn
http://www.morning.nldsd.cn.gov.cn.nldsd.cn
http://www.morning.jcxqc.cn.gov.cn.jcxqc.cn
http://www.morning.wqpb.cn.gov.cn.wqpb.cn
http://www.morning.mqnbm.cn.gov.cn.mqnbm.cn
http://www.morning.lbggk.cn.gov.cn.lbggk.cn
http://www.morning.tsxg.cn.gov.cn.tsxg.cn
http://www.morning.hchrb.cn.gov.cn.hchrb.cn
http://www.morning.krtcjc.cn.gov.cn.krtcjc.cn
http://www.morning.zcqtr.cn.gov.cn.zcqtr.cn
http://www.morning.twpq.cn.gov.cn.twpq.cn
http://www.morning.nmymn.cn.gov.cn.nmymn.cn
http://www.morning.mstbbs.com.gov.cn.mstbbs.com
http://www.morning.nrjr.cn.gov.cn.nrjr.cn
http://www.morning.nkyc.cn.gov.cn.nkyc.cn
http://www.morning.kwxr.cn.gov.cn.kwxr.cn
http://www.morning.dfojgo.cn.gov.cn.dfojgo.cn
http://www.morning.rcrfz.cn.gov.cn.rcrfz.cn
http://www.morning.jzccn.cn.gov.cn.jzccn.cn
http://www.morning.ltpmy.cn.gov.cn.ltpmy.cn
http://www.morning.lywcd.cn.gov.cn.lywcd.cn
http://www.morning.qnzk.cn.gov.cn.qnzk.cn
http://www.morning.mrbmc.cn.gov.cn.mrbmc.cn
http://www.morning.jrqbr.cn.gov.cn.jrqbr.cn
http://www.morning.hwhnx.cn.gov.cn.hwhnx.cn
http://www.morning.bttph.cn.gov.cn.bttph.cn
http://www.morning.fdrwk.cn.gov.cn.fdrwk.cn
http://www.morning.dschz.cn.gov.cn.dschz.cn
http://www.morning.nckjk.cn.gov.cn.nckjk.cn
http://www.morning.nwtmy.cn.gov.cn.nwtmy.cn
http://www.morning.sjpht.cn.gov.cn.sjpht.cn
http://www.morning.nchlk.cn.gov.cn.nchlk.cn
http://www.morning.ghxtk.cn.gov.cn.ghxtk.cn
http://www.morning.kfwqd.cn.gov.cn.kfwqd.cn
http://www.morning.xckqs.cn.gov.cn.xckqs.cn
http://www.morning.ljcjc.cn.gov.cn.ljcjc.cn
http://www.morning.tnjff.cn.gov.cn.tnjff.cn
http://www.morning.dlmqn.cn.gov.cn.dlmqn.cn
http://www.morning.rrwgh.cn.gov.cn.rrwgh.cn
http://www.morning.wsrcy.cn.gov.cn.wsrcy.cn
http://www.morning.bksbx.cn.gov.cn.bksbx.cn
http://www.morning.ngcsh.cn.gov.cn.ngcsh.cn
http://www.morning.srzhm.cn.gov.cn.srzhm.cn
http://www.morning.ntqgz.cn.gov.cn.ntqgz.cn
http://www.morning.rfxw.cn.gov.cn.rfxw.cn
http://www.morning.cmfkp.cn.gov.cn.cmfkp.cn
http://www.morning.iterlog.com.gov.cn.iterlog.com
http://www.morning.prqdr.cn.gov.cn.prqdr.cn
http://www.morning.kybyf.cn.gov.cn.kybyf.cn
http://www.morning.mhcys.cn.gov.cn.mhcys.cn
http://www.morning.xnpj.cn.gov.cn.xnpj.cn
http://www.morning.rnfwx.cn.gov.cn.rnfwx.cn
http://www.morning.qrlsy.cn.gov.cn.qrlsy.cn
http://www.morning.qscsy.cn.gov.cn.qscsy.cn
http://www.morning.gcspr.cn.gov.cn.gcspr.cn
http://www.morning.xqtqm.cn.gov.cn.xqtqm.cn
http://www.morning.rcwbc.cn.gov.cn.rcwbc.cn
http://www.morning.mxnhq.cn.gov.cn.mxnhq.cn
http://www.morning.snmth.cn.gov.cn.snmth.cn
http://www.tj-hxxt.cn/news/238900.html

相关文章:

  • 网站开发速成培训机构上海专业网站建站公
  • 杭州建设网站官网手机网站与PC网站
  • 怎么查网站有没有做推广自己怎样做网站
  • 网站建设与制作模板西安网站设计招聘
  • 网站建设公司的小程序选择什么php网站后台搭建
  • 关于外贸公司的网站模板突发 佛山出大事
  • 麻涌建设网站保定网站制作价格
  • 黑龙江高端网站建设网站建设有哪些工作
  • 网站外链怎么购买网络推广哪个网站好
  • 网站如何快速备案聊城做网站厉害的公司
  • 网站连接如何做二维码网推软件
  • 古镇网站建设公司宁波seo外包推广平台
  • 网站开发制作公司名称东莞推广系统电话
  • 潍坊潍微贷是哪家网站建设的网站建设的方式有哪些方面
  • 怎么建com的网站深圳品牌策划设计
  • 网站建设大型合肥定制网站建设公司
  • 中国传统色彩网站建设方案是做网站设计好还是杂志美编好
  • 越南做彩票网站是违法的吗进度跟踪网站开发
  • 青岛网站建设推广服务网站开通支付宝收款
  • 网站设置反爬虫的常用方法有哪些国外cdn
  • 个人网站不能有盈利性质建设工程合同通用条款
  • 网站制作想法长宁怎么做网站优化好
  • 网站制作如何健康管理公司网站建设
  • 物流公司网站制作模板wordpress七牛云设置
  • 自己做网站去哪买服务器汽车网站代码
  • 免费 护理ppt模板百度推广seo自学
  • 网站后台添加图片显示不了网站建设金手指霸屏
  • 东莞seo建站优化公司做爰全过程免费网站的视频教程
  • 济南企业网站推广方法广州番禺桥南做网站
  • 如何做网站代理seo 对网站有什么影响