BoundingBox 函数,osg官方文档说明:
运行其它项目,进行调试,查看BoundingBox 变量的 局部变量
临时出现一个小问题:
遇到莫名的错误,之前都可以运行的,又出错了
vs关闭后,重新打开vs和项目,上述临时小问题解决!!
BoundingBox 局部变量如下:
通过set 函数进行赋值, vec3的生成方式 通过 osg::Vec3()函数 ,注意:Vec3 ,不是vec3
osg::Vec3 boxmin = osg::Vec3(xmin, ymin, zmin);
osg::Vec3 boxmax = osg::Vec3(xmax, ymax, zmax);
osg::BoundingBox bb;
bb.set(boxmin,boxmax);
最后顺利运行!
Vec3f表示的是3通道float类型的 Vect,就相当于3通道float类型的图像(这是其中一个具体化),解释可以从源代码中看出来。
下面给出一个具体的例子:
Vec3f point = Vec3f(10,10,3.2);//Float, 3 components
Mat mat(3,3,CV_32FC3,);//3 channel matrix
Vec3f v3f = mat.at<Vec3f>(y, x);//read color values for pixel (y,x)
这里注释一下:Vec3f是一种数据类型,其是3通道的float,后面的mat.at<Vec3f>(y, x)是访问图像的一种方式。(可以从定义形式上看出来 int a=....)
对于mat的理解,可以认为mat.at<Vec3f>是mat的一种访问形式,其有点类似vector。