osgText中的setAxisAlignment和setAlignment的区别

    科技2022-08-17  94

    Alignment是设置文本对齐的方式的,和Qt的QLabel中的setAlignment(Qt::Alignment)作用相同,在此不详述。 setAxisAlignment是设置文字方向的,其取值有如下几个:

          

    XY_PLANE, // XY面 REVERSED_XY_PLANE, // xy面的反面 XZ_PLANE, // xz面 REVERSED_XZ_PLANE, // xz面的反面 YZ_PLANE, // yz面 REVERSED_YZ_PLANE, // yz面的反面 SCREEN, // 屏幕 USER_DEFINED_ROTATION // 用户自定义的旋转  XY_PLANE

           如下代码:

    spText->setAxisAlignment(osgText::Text::XY_PLANE); // 设置文字文字方向为osgText::Text::XY_PLANE

    此时绘制的X如下:文字所在平面和X、Y轴组成的平面平行,且文字所在平面法线和坐标系的Z轴平行,且指向z轴的正方向

    (说明:后续所有图中,红色表示X轴, 绿色表示Y轴,蓝色表示z轴)

     REVERSED_XY_PLANE

      

      如下代码:

    spText->setAxisAlignment(osgText::Text::REVERSED_XY_PLANE); 

    此时绘制的X如下:文字所在平面法线和坐标系的Z轴平行,且指向z轴的负方向。

     

     XZ_PLANE

     

    如下代码:

    spText->setAxisAlignment(osgText::Text::XZ_PLANE); 

    此时绘制的X如下:文字所在平面和X、Z轴组成的平面平行且法线和坐标系的Y轴平行,且指向Y轴的正方向

     REVERSED_XZ_PLANE

     

    如下代码:

    spText->setAxisAlignment(osgText::Text::REVERSED_XZ_PLANE); 

    此时绘制的X如下:文字所在平面和X、Z轴组成的平面平行,且文字所在平面法线和坐标系的Y轴平行,且指向Y轴的负方向

     YZ_PLANE

    如下代码:

    spText->setAxisAlignment(osgText::Text::YZ_PLANE); 

    此时绘制的X如下:文字所在平面和Y、Z轴组成的平面平行,且文字所在平面法线和坐标系的X轴平行,且指向X轴的正方向

      REVERSED_YZ_PLANE

    spText->setAxisAlignment(osgText::Text::REVERSED_YZ_PLANE); 

    此时绘制的X如下:文字所在平面和Y、Z轴组成的平面平行,且文字所在平面法线和坐标系的X轴平行,且指向X轴的负方向

        SCREEN

        spText->setAxisAlignment(osgText::Text::SCREEN); 此时绘制的X如下:文字所在平面和屏幕所在平面平行,且文字所在平面法线从屏幕里指向屏幕外。

     

    Processed: 0.019, SQL: 9