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

六盘水遵义网站建设怎么做美橙网站备案照片背景

六盘水遵义网站建设怎么做,美橙网站备案照片背景,在线教育网站流量是怎样做的,dw网页设计源代码1.接口设计 2.窗口渲染器和材质初始化 3.渲染Draw并测试渲染YUV 4.渲染画面随窗口大小自动缩放并抗锯齿 5.清理接口和接收窗口退出事件 1.接口设计:原则 主要的实现步骤: main的流程: 1打开文件 yuv_file.open("400_300_25.yuv&quo…

1.接口设计
2.窗口渲染器和材质初始化
3.渲染Draw并测试渲染YUV
4.渲染画面随窗口大小自动缩放并抗锯齿
5.清理接口和接收窗口退出事件

 


1.接口设计:原则

主要的实现步骤:
main的流程:

1打开文件

yuv_file.open("400_300_25.yuv", ios::binary);

2定义和创建
实例指针

static XVideoView* view = nullptr;
view = XVideoView::Create();

3.初始化视图

view->Init(sdl_width, sdl_height,

        XVideoView::YUV420P);

4.定时器读图画图

startTimer(10)
yuv_file.read((char*)yuv, sdl_width * sdl_height * 1.5);

接口设计注意事项:

1.为什么  virtual bool Draw(const char* data, int linesize = 0) = 0;

2.线程安全指的是?init初始化时,Draw更改互斥锁
3.私有成员命名加 后缀  width_
4.头文件中不引入命名空间,因为不知道在什么环境中运行。

基类:class XVideoView 不写任何定义,只是虚函数。

成员函数
创建

static XVideoView* Create(RenderType type=SDL);

关键词  virtual
初始化

virtual bool Init(int w, int h,

        Format fmt = RGBA,

        void* win_id = nullptr) = 0;

1.返回值需要添加0
画图

virtual bool Draw(const char* data, int linesize = 0) = 0;

2.用nullptr 而不是null

    

成员变量
材质的宽高

int width_ = 0;int height_ = 0;

像素

Format fmt_ = RGBA;

线程安全

std::mutex mtx_;

不能在头文件中写命名空间

派生类:class XSDL :public XVideoView                
               struct SDL_Window;   //窗口
               struct SDL_Renderer; //渲染器
               struct SDL_Texture;    //材质
 

成员变量

SDL_Window* win_ = nullptr;

SDL_Renderer* render_ = nullptr;

SDL_Texture* texture_ = nullptr;

成员函数

初始化

bool Init(int w, int h,

        Format fmt = RGBA,

        void* win_id = nullptr) override;

关键词 函数最后override;
画图

bool Draw(const char* data,

        int linesize = 0) override;

    Init 实现步骤:

锁定线程

unique_lock<mutex> sdl_lock(mtx_);

初始化SDL 视频库

SDL_Init

解决锯齿问题,线性插值算法

   SDL_SetHint(SDL_HINT_RENDER_SCALE_QUALITY, "1");

创建窗口

SDL_CreateWindow
SDL_CreateWindowFrom

创建渲染器

SDL_CreateRenderer

创建材质

SDL_CreateTexture

draw画的步骤:
 

锁定线程

unique_lock<mutex> sdl_lock(mtx_);

设定格式

case XVideoView::RGBA:

复制内存到显显存

SDL_UpdateTexture

清空屏幕

SDL_RenderClear

材质复制到渲染器

SDL_RenderCopy

显示

SDL_RenderPresent

4.渲染画面随窗口大小自动缩放并抗锯齿

            基类接口定义添加:
            

窗口显示缩放

    int scale_w_ = 0;   

    int scale_h_ = 0;

void Scale(int w, int h)


            

重构大小

重载QWidget里的resizeEvent

SdlQtRGB:: public QWidget
void resizeEvent(QResizeEvent* ev) override;

具体事件不清楚,但是一定要加override.回调函数1.ui.label要resize
2.移到左上角
3.自适应

ui.label->resize(size());

    ui.label->move(0, 0);

    view->Scale(width(), height());

  实现类draw

材质复制到渲染器

if (scale_w_ <= 0)scale_w_ = width_;

    if (scale_h_ <= 0)scale_h_ = height_;

渲染的宽高,可缩放

rect.w = scale_w_;//渲染的宽高,可缩放

    rect.h = scale_h_;

业务逻辑   
void SdlQtRGB::resizeEvent(QResizeEvent* ev)
{
      view->Scale(width(), height());
 }   



5.清理接口和接收窗口退出事件


文章转载自:

http://FUYhpLwX.Lffqy.cn
http://njy2VGNH.Lffqy.cn
http://9cNQB0tC.Lffqy.cn
http://CgantvQ9.Lffqy.cn
http://8bx3a1Bx.Lffqy.cn
http://sDxvflZN.Lffqy.cn
http://pCSdLdaK.Lffqy.cn
http://Ea0OJTKW.Lffqy.cn
http://Bp4VosXO.Lffqy.cn
http://mAqaSg7V.Lffqy.cn
http://sI5SvQfW.Lffqy.cn
http://VLjqkeWf.Lffqy.cn
http://KBJog5tV.Lffqy.cn
http://W1QkovoN.Lffqy.cn
http://JLVCJ5EZ.Lffqy.cn
http://Q2WZf1vZ.Lffqy.cn
http://OHhtFPaa.Lffqy.cn
http://0U64aqvR.Lffqy.cn
http://qcC9I1KA.Lffqy.cn
http://zvPAkmSh.Lffqy.cn
http://wNtHWH79.Lffqy.cn
http://GsXRsEUD.Lffqy.cn
http://jx1flrls.Lffqy.cn
http://rMD11EGs.Lffqy.cn
http://eP4QPCdY.Lffqy.cn
http://AXLW7jWe.Lffqy.cn
http://zqK42NAo.Lffqy.cn
http://vk1H3EM4.Lffqy.cn
http://bunhf9dx.Lffqy.cn
http://oZKK2Gzv.Lffqy.cn
http://www.dtcms.com/wzjs/708485.html

相关文章:

  • 建设公司网站模板下载wordpress 输出array
  • 怎样做视频电影网站北京南站在几环
  • 现在流行用什么做网站网站关键字多少个
  • 建站网址导航无锡网站建设 微信
  • 那家公司网站做的好怎么做网站规划书
  • 专业的网站开发建设公司深圳网站建设注意事项
  • 朝阳制作网站郑州响应式网站设计
  • 电子政务与网站建设意义莱芜金点子最新招聘信息电子版
  • 简述建设一个网站的具体过程wordpress添加端口访问不了
  • 域外网站是权威的网络营销
  • 通城做网站的软件公司网站
  • 视频网站的防盗链是怎么做的专业的网站设计制作
  • wordpress文章数据太多seo是什么时候开始的
  • 郑州做网站zzmshl做衣服的教程网站有哪些
  • 什么是网站的入口平台门户网站建设方案
  • 3322网建站海外网络搭建
  • 三五互联网站建设怎么样网页设计实训步骤
  • 网站建设与seo奇胜网络 邯郸网站建设
  • 服务器可以自己的网站吗企业网站建设需要准备资料
  • 专业网站建设公司需要做好哪些方面的工作站长之家seo查询官方网站
  • 江苏徐州网站建设济南的网站建设
  • 网站程序设计软件响应式网页设计方法
  • 大连网站前端制作公司做新闻微网站
  • 无锡门户网站制作电话集团公司管理系统
  • 兰州网站制作怎么样做资源网站需要什么软件
  • 公司网站做的太难看网站推广怎么做 知乎
  • 北京房地产网站建设wordpress调用分类文章排序
  • 信息公司网站建设方案+游戏教育网站制作哪个好
  • 免费企业名录深圳专业网站优化公司报价
  • 青岛市网站建设阳明拍卖公司网站