【技术实现步骤摘要】
本专利技术涉及如何操纵虚拟三维(3D)对象,并且以一个特定实例解释如何使用非半球形轨迹球操纵虚拟三维对象的方向。
技术介绍
3D场景的开发和动画需要放置和移动虚拟三维对象。这通常需要在虚拟场景或对象编辑环境中改变对象的方向、位置和大小。对象的方向、位置和大小是通过旋转、平移和缩放技术来操作的。用户可通过一个方法来实现这些操纵,即直接输入对应于所需操作的数值。例如,通过选择对象,并指定三个旋转属性的值,其中每个值控制单个轴X、Y或Z的旋转,用户可以在一个计算机程序中改变该对象在三维空间的方向。尽管直接输入旋转数值为操纵三维对象的方向提供了一个精确方法,但也提出了许多挑战。例如,对不是非常熟悉旋转设置的用户来说,界面也许不是很友好。用户也可使用一个指向装置操纵虚拟三维对象。该指向装置沿探测表面的位置变化可以用来改变三维空间中对象的方向。当用户使用该指向装置选择检测表面上的两个位置,计算机程序可以使用这两个位置的坐标旋转三维对象。相对于直接输入数值来说,使用指向装置操纵三维对象对用户更友好,但操作对象的精确度如果很高,对用户是个挑战。现有的系统对提供高精确度的虚拟三维对象的操作没有用户友好性。因此,我们急需用户友好的、直观的和精确的技术,用来在三维空间中平稳地操纵三维对象。专利技术概述描述了在虚拟三维空间中操纵虚拟三维(3D)对象的过程。一个示例方法可包括在显示器上显示三 ...
【技术保护点】
一种计算机实现的在虚拟三维空间内操纵虚拟三维(3D)对象的方法,所述方法包括:在显示器上显示3D对象的呈现;确定有表面的非半球形轨迹球;将所述非半球形轨迹球与所述3D对象的呈现相关联;检测定位装置的第一定位和第二定位;将所述定位装置的所述第一定位转换到所述非半球形轨迹球所述表面的第一位置;将所述定位装置的所述第二定位转换到所述非半球形轨迹球所述表面的第二位置;及在所述显示器上显示3D对象呈现的旋转,所述旋转基于所述非半球形轨迹球表面的所述第一位置和所述第二位置之间的行进路径。
【技术特征摘要】 【专利技术属性】
2013.03.15 US 13/841,9271.一种计算机实现的在虚拟三维空间内操纵虚拟三维(3D)
对象的方法,所述方法包括:
在显示器上显示3D对象的呈现;
确定有表面的非半球形轨迹球;
将所述非半球形轨迹球与所述3D对象的呈现相关联;
检测定位装置的第一定位和第二定位;
将所述定位装置的所述第一定位转换到所述非半球形轨迹球
所述表面的第一位置;
将所述定位装置的所述第二定位转换到所述非半球形轨迹球
所述表面的第二位置;及
在所述显示器上显示3D对象呈现的旋转,所述旋转基于所述
非半球形轨迹球表面的所述第一位置和所述第二位置之间的行进路
径。
2.如权利要求1所述的计算机执行方法,其特征在于:
所述非半球形轨迹球有一带圆形周边的底部,所述底部有一中
心;并且
从所述底部中心到所述非半球形轨迹球所述表面测量到的所
述非半球形轨迹球的半径各不相同。
3.如权利要求2所述的计算机执行方法,进一步包括:
确定第一矢量,所述第一矢量从所述底部中心延伸到所述非半
球形轨迹球表面的所述第一位置;
确定第二矢量,所述第二矢量从所述底部中心延伸到所述非半
球形轨迹球表面的所述第二位置;
计算第一维度中的第一旋转度数,所述第一旋转度数通过确定
第一矢量和第二矢量之间的第一角度来计算;并且
其中,在所述显示器上显示3D对象的呈现的旋转,包括根据
所述计算出的第一旋转度数,旋转第一维度中3D对象的呈现。
4.如权利要求3所述的计算机执行方法,进一步包括:
计算第二维度中的第二旋转度数,所述第二旋转度数通过确定
所述第一矢量和所述第二矢量之间的第二角度来计算;
其中,在所述显示器上显示3D对象的呈现的旋转,包括根据
所述计算出的第二旋转度数,旋转第二维度中3D对象的呈现;
计算第三维度中的第三旋转度数,所述第三旋转度数通过确定
所述第一矢量和所述第二矢量之间的第三角度来计算;及
其中,在所述显示器上显示3D对象的呈现的旋转,包括根据
所述计算出的第三旋转度数,旋转第三维度中3D对象的呈现。
5.如权利要求2所述所述的计算机执行方法,进一步包括:
确定三维空间中的放置位置,所述放置位置基于三维空间中
3D对象的呈现的中心;及
根据所述放置位置将所述非半球形轨迹球置于所述3D空间
中。
6.如权利要求2所述的计算机执行方法,进一步包括:
确定非半球形轨迹球的尺寸,所述尺寸基于所述定位装置的所
述第一定位;及
其中,所述非半球形轨迹球的所述底部扩展超出二维空间中
3D对象的呈现的投影。
7.如权利要求2所述的计算机执行方法,进一步包括:
确定所述非半球形轨迹球的尺寸,所述尺寸基于所述定位装置
的所述第一定位;及
其中,所述非半球形轨迹球完全包裹了所述3D对象的呈现。
8.如权利要求2所述的计算机执行方法,进一步包括:
在计算机存储器中存储旋转值,其中,所述旋转值基于第一定
位和第二定位;及
将所述旋转值与网格数据结构相关联,其中,在显示器上显示
3D对象的呈现的旋转使用了所述网格数据结构和旋转值。
9.如权利要求2所述的计算机执行方法,其特征在于,检测
定位装置包括检测用户与触敏装置的交互。
10.如权利要求2所述的计算机执行方法,其特征在于,确定
有表面的非半球形轨迹球包括根据第一定位选择非半球形轨迹球的
形状。
11.如权利要求2所述的计算机执行方法,其特征在于,确定
有表面的非半球形轨迹球包括确定在非半球形轨迹球的边缘有个小
于90度的坡度的非半球形轨迹球。
12.如权利要求11所述的计算机执行方法,其特征在于,确定
有表面的非半球形轨迹球包括确定在非半球形轨迹球的边缘有个70
到85度的坡度的非半球形轨迹球。
13.如权利要求2所述的计算机执行方法,其特征在于,确定
有表面的非半球形轨迹球,包括使用基于(a)半径的乘方值和(b)
pi除以2的乘积的余弦的一个方程式。
14.如权利要求13所述的计算机执行方法,其特征在于,所述
乘方值在1.2和1.4之间。
15.一个非临时性计算机可读存储媒介,包括了在一个虚拟三
维空间中操纵一个虚拟三维(3D)对象的计算机可执行指令,计算机
可执行指令包括以下指令:
在显示器上显示3D对象的呈现;
确定有表面的非半球形轨迹球;
将非半球形轨迹球与3D对象的呈现相关联;
检测定位装置的第一定位和第二定位;
将所述定位装置的第一定位转换到所述非半球形轨迹球表面
的第一位置;
将所述定位装置的第二定位转换到所述非半球形轨迹球表面
的第二位置;及
在所述显示器上显示3D对象的呈现的旋转,旋转基于非半球
形轨迹球表面第一位置和第二位置的行进路径。
16.如权利要求15所述的非临时性计算机可读存储媒介,其
中:
所述非半球形轨迹球有一个带圆形周边的底部,底部有一个中
\t心;及
从底部中心到非半球形轨迹球表面测量到的所述非半球形轨
迹球的半径各不相同。
17.如权利要求16所述的非临时性计算机可读存储媒介,进一
步包括:
确定第一矢量,所述第一矢量从底部中心延伸到所述非半球形
轨迹球表面的所述第一位置;
确定第二矢量,所述第二矢量从底部中心延伸到所述非半球形
轨迹球表面的所述第二位置;
计算第一维度中的第一旋转度数,所述第一旋转度数通过确定
所述第一矢量和所述第二矢量之间的第一角度来计算;及
其中,在显示器上显示3D对象的呈现的旋转,包括根据计算
出的第一旋转度数,旋转第一维度中3D对象的呈现。
18.如权利要求17所述的非临时性计算机可读存储媒介,进一
步包括:
计算第二维度中的第二旋转度数,所述第二旋转度数通过确
定所述第一矢量和所述第二矢量之间的第二角度来计算;
其中,在所述显示器上显示3D对象的呈现的旋转,包括根据
所述计算出的第二旋转度数旋转第二维度中3D对象的呈现;
计算第三维度中的第三旋转度数,所述第三旋转度数通过确定
所述第一矢量和所述第二矢量之间的第三角度来计算;及
其中,在所述显示器上显示3D对象的呈现的旋转,包括根据
所述计算出的第三旋转度数,旋转第三维度中3D对象的呈现。
19.如权利要求16所述的非临时性计算机可读存储媒介,进一
技术研发人员:M·Q·麦卡蒂,A·P·鲍威尔,
申请(专利权)人:梦工厂动画公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。