opengl里的对球形的建模:首先要把球形表式由点组成的模型。现在的问题是:怎么把这个球用点集进行表示。
代码如下:
final int UNIT_SIZE=10000;
ArrayList<Integer> alVertix=new ArrayList<Integer>();//存放顶点坐标的ArrayList
final int angleSpan=18;//将球进行单位切分的角度
for(int vAngle=-90;vAngle<=90;vAngle=vAngle+angleSpan){//垂直方向angleSpan度一份
for(int hAngle=0;hAngle<360;hAngle=hAngle+angleSpan)//水平方向angleSpan度一份
{//纵向横向各到一个角度后计算对应的此点在球面上的坐标
double xozLength=scale*UNIT_SIZE*Math.cos(Math.toRadians(vAngle));
int x=(int)(xozLength*Math.cos(Math.toRadians(hAngle)));
int z=(int)(xozLength*Math.sin(Math.toRadians(hAngle)));
int y=(int)(scale*UNIT_SIZE*Math.sin(Math.toRadians(vAngle)));
//将计算出来的XYZ坐标加入存放顶点坐标的ArrayList
alVertix.add(x);alVertix.add(y);alVertix.add(z);
}
}
讲解:
1. 首先把球想成由很多的半径不一样的圆所组成的。把球想像成由很多平形于x,z平面的圆所组成的。
2. x,z轴的圆的角度是由0-360,y轴的变动由-90到90。
3. 在java里,三角函数要用弧度计算,而我们平实一般都是角度来计算。其实不管三角函数用的是角度和弧度,其都是度量的是角的大小,所以对于同一个角,其三角函数的值都是一样的(不管是用角度计算,还是用弧度计算)。所以sin(x)就不要注重其x是角度还是弧度,只要关心,其是由对边/斜边(前题是直角三角形)。
4. 如果对于计算球上每个点的坐标,不太理解,可以在笛卡尔级坐标系里,画一个点,再把这个点进行映射到三个坐标轴上去,就可以了。
注:角度和弧度的理解:http://hi.baidu.com/kent_edwin/blog/item/9425f0029e06967e3812bb28.html
- 大小: 10.1 KB
分享到:
相关推荐
面向全滚动的球形机器人动力学建模方法,北京邮电大学孙汉旭老师
#资源达人分享计划#
球形贮箱内流固耦合系统动力学建模,吕敬,张明明,本文研究了球形贮箱内流固耦合多体非线性系统在任意激励下的动力学建模问题,文中采用球形坐标进行分析。首先利用H-O原理推导了流
#资源达人分享计划#
tekla 实心球体建模 处理工程中遇到的问题及解决方案!
FLAC_3D中复杂模型的三维建模技巧
球形点云的3D逆向建模
#资源达人分享计划#
基于六螺旋桨和啮合转子的SPIROS全方位球形机器人的设计、建模与控制_Design, Modelling and Control of SPIROS The Six Propellers and Intermeshing Rotors Based Omnidirectional Spherical Robot.pdf
本文提出了一种有效的全向可视化同时本地化和映射(vSLAM)基于球形相机模型和3D建模的算法。在在本文中,机器人具有全向视觉的能力,这使得算法在未知情况下更具适应性环境。要获取球形全景图像,我们选择全景图像...
对球形机器人的设计方案进行了基于Lagrange-Routh方程方法的动力学建模,利用Matlab/Simulink对已有的球形机器人数学模型进行了仿真和简要分析.结合系统的硬件装配,分别对球形机器人直线行走、爬坡等动作进行了初步...
3D空间内随机投放球形纤维,用于实体建模
水下球形机器人BYSQ3的姿态控制研究,张金鹏,孙汉旭,以水下球形机器人BYSQ3为研究对象,因为整体建模分析时需要考虑多种因素,惯性质量、各种力矩等需要表示成六阶矩阵形式,求解计算�
#资源达人分享计划#
Matlab内运行看查看球体的三维生成结果, 所用的生成圆形骨料程序,骨料缺乏形状上的随机性,与实际骨料形状有所区别。
用于abaqus中进行混凝土模拟,三维随机骨料模型。
MATLAB建模仿真案例:30 多个小球碰撞模拟.zip
对球形机器人的设计方案进行了基于Lagrange-Routh方程方法的动力学建模,利用 Matlab/Simulink对已有的球形机器人数学模型进行了仿真和简要分析.结合系统的硬件装配,分别对球形机器人直线行走、爬坡等动作进行了...
研究了一种全向滚动球形机器人的动力学建模、分析与仿真方法根据机器人所受的非完整约束,建立了其运动学模型根据机器人的结构特征和Lagrange-Routh方程,建立了其动力学模型,给出了消去未知Lagrange乘子的策略得到...
基于水动力分析的两栖球形机器人新型水射流推进器建模与实验验证