OSG
swety_gxy
一个IT行业的代码菜鸟,平时喜欢关注媒体类的事物,在此记录自己的修炼历程。
展开
-
求空间两点的距离
根据数学上两点之间的简单公式,在OSG环境下实现相关的代码。两点之间的数学公式:假设A(x0,y0,z0),B(x1,y1,z1),则两点之间的距离为L=sqrt(pow(x1-x0,2)+pow(y1-y0,2)+pow(z1-z0,2))实现的简约代码为:float Distance(osg::Vec3 A, osg::Vec3 B){ return sq原创 2016-11-19 22:26:36 · 1458 阅读 · 0 评论 -
圆周的绘制
圆周的绘制有很多的方法,这只是其中的一种,根据图形学中圆周生成的算法演变而来,生成圆周的顶点,实现环境为OSG。算法的公式为:P(X(u),Z(U))=P(D+A*(cos(u)),A*sin(u))A:圆周半径D:谝置距离实现的代码为://生成圆的顶点osg::ref_ptr CirclePoints(osg::Vec3 Opoint, osg::Vec2 Min原创 2016-11-19 23:01:57 · 515 阅读 · 0 评论 -
Catmull_Rom算法的实现
Catmull_Rom算法的具体原理在网络上都有,感兴趣的可以自己查找,此处只是它的代码实现,实现环境为OSG:给定一堆离散点,将该离散点进行插值,绘制的曲线经过每一个离散点。实现的代码://生成Catmull_Rom Spline算法顶点osg::Vec3 Catmull_Rom_SplinePoint_new(float u, osg::ref_ptr subconct原创 2016-11-19 23:10:19 · 8785 阅读 · 0 评论 -
OSG环境实现Coons曲面的拼接绘制
Coons曲面是工业设计上常用的一种曲面,也是学习计算机图形学要掌握的一种曲面构造方法,本文简单介绍了其原理,并给出实现的一些代码。原创 2016-12-02 19:51:00 · 2774 阅读 · 4 评论 -
三维空间中的几何变换-平移旋转缩放
深入学习了下图形几何变换,主要是绕任意轴旋转部分(其他的已有一定基础),现记录学习笔记。原创 2017-06-12 13:16:02 · 43616 阅读 · 1 评论 -
判断平面多边形的凹凸性
对于平面多边形的三角化处理也是计算机图形学里面的一个领域,最近由于项目的需要,需要对平面多边形进行剖分,特此对其作了些研究。在对平面多边形进行处理的时候,很多时候需要知道多边形的凹凸性,本文介绍两种方法来进行平面多边形凹凸性的判定,文章后面会给出示例代码。1、使用角度和判断凹凸性我们知道,任意n个顶点的凸多边形可以分解成(n-2)个三角形,一个三角形的内角和是180°,所有三角形的内角原创 2017-04-14 23:51:15 · 21743 阅读 · 7 评论