2020-10-19 activiz(VTK c#包)模型建立(一)——文字

vtk中文字分为二维和三维。

  1. 二维文字
    二维通常在窗口顶层绘制,相当于另一图层。用的是vtkTextActor,属于vtkActor2D。其中位置和大小均为相对窗口起始点(0,0)的绝对值,估计是像素。
vtkTextActor textActor = new vtkTextActor();
textActor.GetTextProperty().SetFontSize(10); //设置字体大小           
textActor.SetPosition(100, 100);                      
textActor.SetInput("12345"); //设置文字内容           
textActor.GetTextProperty().SetColor(1.0, 0.0, 0.0); //设置文字颜色
render.AddActor2D(textActor); //加入渲染引擎
  1. 三维文字
    主要用的是vtkVectorText来输入文本内容;vtkFollower创建Actor; vtkPolyDataMapper就是常规的3D Actor用的。
vtkFollower textActor = vtkFollower.New();
textActor.SetPosition(b.top_xyz[0], b.top_xyz[1]+5, b.top_xyz[2]+1);
//注意这里使相对于上面的位置的,默认为0,0,0
textActor.SetOrigin(0, -5, 0);
textActor.RotateZ(90);
textActor.SetScale(0.2,0.2,0.2);
vtkVectorText aText = vtkVectorText.New();
aText.SetText("R="+b.radius.ToString()+"\r\n"+"ID="+b.ID.ToString());
vtkPolyDataMapper textMapper = vtkPolyDataMapper.New();
textMapper.SetInputConnection(aText.GetOutputPort());
textActor.SetMapper(textMapper);
textActor.GetProperty().SetColor(0.5,0.5,0.44); //灰色
render.AddActor(textActor);
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值