用于三维图形绘制的装置和方法与流程

文档序号:22756986发布日期:2020-10-31 09:54阅读:来源:国知局

技术特征:

1.一种三维图形绘制的方法,包括如下步骤:

利用qt平台的原生控件进行三维图形绘制;

对每个原生控件创建一个非原生控件分身;

设定所述非原生控件分身,使所述原生控件的非原生控件分身在尺寸大小和位置上分别与原生控件同步;

所述原生控件的非原生分身配合其他非原生控件,接受qt布局管理,完成三维图形绘制。

2.如权利要求1所述的方法,其中:

设定所述非原生控件分身,使所述原生控件的非原生分身在大小上与原生控件同步的步骤中,在非原生控件分身的尺寸大小发生变化时,将原生控件的尺寸大小也设置为所述分身的大小。

3.如权利要求1所述的方法,其中:

设定所述非原生控件分身,使所述原生控件的非原生控件分身在位置上与原生控件同步的步骤中,在所述非原生控件分身(105)相对于原生控件(101)的父结点的位置发生变化时,将所述原生控件(101)设置为与所述非原生控件分身(105)同样的位置。

4.如权利要求3所述的方法,其中:

设定所述非原生控件分身,使所述原生控件的非原生分身在位置上与原生控件同步的步骤中还包括:

设置qt事件过滤器(205),用于监测所述非原生控件分身(105)及其所有非原生控件祖先结点,并分别对不同的事件做出不同的处理:

针对位置变化事件(qevent::move):同步设置所述原生控件(101)的位置;

针对父结点即将改变事件(qevent::parentabouttochange):解除所有非原生控件祖先结点对该事件过滤器(205)的关联;

针对父结点已改变事件(qevent::parentchange):对所有新的非原生控件祖先结点关联该事件过滤器(205)。

5.一种三维图形绘制的装置,包括下列装置:

绘制模块,利用qt平台的原生控件进行三维图形绘制;

分身创建模块,对每个原生控件创建一个非原生控件分身;

同步模块,设定所述非原生控件分身,使所述原生控件的非原生控件分身在尺寸大小和位置上分别与原生控件同步;

配合模块,所述原生控件的非原生分身配合其他非原生控件,接受qt布局管理,完成三维图形绘制。

6.如权利要求5所述的装置,其中:

同步模块中,在非原生控件分身的尺寸大小发生变化时,将原生控件的尺寸大小也设置为所述分身的大小。

7.如权利要求5所述的装置,其中:

同步模块中,在所述非原生控件分身(105)相对于原生控件(101)的父结点的位置发生变化时,将所述原生控件(101)设置为与所述非原生控件分身(105)同样的位置。

8.如权利要求7所述的装置,还包括:

qt事件过滤器(205)模块,用于监测所述非原生控件分身(105)及其所有非原生控件祖先结点,并分别对不同的事件做出不同的处理:

针对位置变化事件(qevent::move):同步设置所述原生控件(101)的位置;

针对父结点即将改变事件(qevent::parentabouttochange):解除所有非原生控件祖先结点对该事件过滤器(205)的关联;

针对父结点已改变事件(qevent::parentchange):对所有新的非原生控件祖先结点关联该事件过滤器(205)。

9.一种qt界面布局的方法,包括如下步骤:

对每个原生控件创建一个非原生控件分身;

设定所述非原生控件分身,使所述原生控件的非原生控件分身在尺寸大小和位置上分别与原生控件同步;

所述原生控件的非原生分身配合其他非原生控件,完成qt界面管理。

10.如权利要求9所述的方法,其中:

设定所述非原生控件分身,使所述原生控件的非原生分身在大小上与原生控件同步的步骤中,在非原生控件分身的尺寸大小发生变化时,将原生控件的尺寸大小也设置为所述分身的大小。

11.如权利要求9所述的方法,其中:

设定所述非原生控件分身,使所述原生控件的非原生控件分身在位置上与原生控件同步的步骤中,在所述非原生控件分身(105)相对于原生控件(101)的父结点的位置发生变化时,将所述原生控件(101)设置为与所述非原生控件分身(105)同样的位置。

12.如权利要求11所述的方法,其中:

设定所述非原生控件分身,使所述原生控件的非原生分身在位置上与原生控件同步的步骤中还包括:

设置qt事件过滤器(205),用于监测所述非原生控件分身(105)及其所有非原生控件祖先结点,并分别对不同的事件做出不同的处理:

针对位置变化事件(qevent::move):同步设置所述原生控件(101)的位置;

针对父结点即将改变事件(qevent::parentabouttochange):解除所有非原生控件祖先结点对该事件过滤器(205)的关联;

针对父结点已改变事件(qevent::parentchange):对所有新的非原生控件祖先结点关联该事件过滤器(205)。


技术总结
本发明涉及大型三维图形绘制的装置和方法,特别是涉及为软件界面的三维图形控件提供界面布局的装置和方法。本发明提供一种三维图形绘制的方法,包括如下步骤:利用Qt平台的原生控件进行三维图形绘制;对每个原生(Native)控件创建一个非原生(Alien)控件分身;设定所述非原生控件分身,使所述原生控件的非原生控件分身在尺寸大小和位置上分别与原生控件同步;所述原生控件的非原生分身配合其他非原生控件,接受Qt布局管理,完成三维图形绘制。利用了本发明的装置和方法,在绘制三维图形的过程中能够进行正常的Qt界面布局管理,用于复杂三维图形绘制的Native控件也能像一般的Alien控件一样,正常受到Qt界面布局管理,并且绘制性能不受影响,二者得以兼顾。

技术研发人员:陈治中
受保护的技术使用者:北京庚图科技有限公司
技术研发日:2020.07.30
技术公布日:2020.10.30
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1