osgText中的setAxisAlignment和setAlignment的区别

本文详细介绍了osgText库中Text类的setAxisAlignment方法,用于设置文字在3D空间中的方向,包括XY_PLANE, REVERSED_XY_PLANE, XZ_PLANE, REVERSED_XZ_PLANE, YZ_PLANE, REVERSED_YZ_PLANE, SCREEN和USER_DEFINED_ROTATION等选项。每个方向的解释都配合了相应的示意图,帮助理解文字在不同平面上的排列方式。
  1. Alignment是设置文本对齐的方式的,和Qt的QLabel中的setAlignment(Qt::Alignment)作用相同,在此不详述。
  2.  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如下:文字所在平面和屏幕所在平面平行,且文字所在平面法线从屏幕里指向屏幕外。

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值