当前位置:   article > 正文

VTK_3D坐标系(vtkAxesActor/vtkCubeAxesActor)_vtk绘制背景刻度

vtk绘制背景刻度

vtkAxesActor

  1. # 创建vtkActor对象
  2. actor = vtk.vtkActor()
  3. actor.SetMapper(mapper)
  4. # 创建xyz轴
  5. axes = vtk.vtkAxesActor()
  6. axes.SetTotalLength(2*L, 2*L, 2*L)
  7. axes.AxisLabelsOff()
  8. axes.SetAxisLabels(1)
  9. axes.SetShaftTypeToCylinder()
  10. axes.SetCylinderRadius(0.001)
  11. axes.GetXAxisShaftProperty().SetColor(0, 1, 0) #将xyz轴的杆颜色设置为绿色
  12. axes.GetYAxisShaftProperty().SetColor(0, 1, 0) #将xyz轴的杆颜色设置为绿色
  13. axes.GetZAxisShaftProperty().SetColor(0, 1, 0) #将xyz轴的杆颜色设置为绿色
  14. axes.GetXAxisTipProperty().SetColor(0, 1, 0) #将xyz轴的箭头颜色设置为绿色
  15. axes.GetYAxisTipProperty().SetColor(0, 1, 0) #将xyz轴的箭头颜色设置为绿色
  16. axes.GetZAxisTipProperty().SetColor(0, 1, 0) #将xyz轴的箭头颜色设置为绿色

vtkCubeAxesActor

使用实例:vtkCubeAxes的相关使用_vtkcubeaxesactor-CSDN博客

 

接口函数 

枚举值

  1. # 设置网格坐标轴CubeAxesActor
  2. m_cubeAxesActor = vtk.vtkCubeAxesActor()
  3. # #先设置相机,将相机设置为renderer的相机。这样可将场和cubeaxesactor放在一块
  4. m_cubeAxesActor.SetCamera(renderer.GetActiveCamera())
  5. m_cubeAxesActor.SetBounds(data.GetBounds()) #设置CubeAxesActor的轴线范围是imagedata的范围
  6. # #轴的设置
  7. # # #设置XYZ轴的标签
  8. m_cubeAxesActor.SetXTitle("X")
  9. m_cubeAxesActor.SetYTitle("Y")
  10. m_cubeAxesActor.SetZTitle("Z")
  11. # # #设置XYZ轴标题和对应的标度的颜色
  12. m_cubeAxesActor.GetTitleTextProperty(0).SetColor(1, 0.0, 1.0)# 设置x轴的标题的颜色为
  13. m_cubeAxesActor.GetLabelTextProperty(0).SetColor(1, 0.0, 1.0)# 设置x轴的标度label颜色
  14. m_cubeAxesActor.GetTitleTextProperty(1).SetColor(0.0, 1.0, 0.0)
  15. m_cubeAxesActor.GetLabelTextProperty(1).SetColor(0.0, 1.0, 0.0)
  16. m_cubeAxesActor.GetTitleTextProperty(2).SetColor(0.5, 0.5, 1.0)
  17. m_cubeAxesActor.GetLabelTextProperty(2).SetColor(0.5, 0.5, 1.0)
  18. # # #设置x、y、z轴的起始和终止值
  19. m_cubeAxesActor.SetXAxisRange(0, L)
  20. m_cubeAxesActor.SetYAxisRange(0, L)
  21. m_cubeAxesActor.SetZAxisRange(0, L)
  22. # # #设置坐标轴线的宽度
  23. m_cubeAxesActor.GetXAxesLinesProperty().SetLineWidth(0.5)
  24. m_cubeAxesActor.GetYAxesLinesProperty().SetLineWidth(0.5)
  25. m_cubeAxesActor.GetZAxesLinesProperty().SetLineWidth(0.5)
  26. # # #设置标题和标签文本的屏幕大小。默认值为10.0
  27. m_cubeAxesActor.SetScreenSize(10)
  28. # # #指定标签与轴之间的距离。默认值为20.0
  29. m_cubeAxesActor.SetLabelOffset(10)
  30. # # #显示坐标轴
  31. m_cubeAxesActor.SetVisibility(True)
  32. # # #指定一种模式来控制轴的绘制方式 0:外边缘 1:最近位置 2:最远位置
  33. # 3:静态最近位置,不随摄像头动而跳变位置 4 :静态所有外边缘位置,不随摄像头动而跳变位置。
  34. m_cubeAxesActor.SetFlyMode(3)
  35. # # #设置惯性因子,该惯性因子控制轴切换位置的频率(从一个轴跳到另一个轴)
  36. m_cubeAxesActor.SetInertia(1)
  37. # #网格设置
  38. # # #开启x、y、z轴的网格线绘制
  39. m_cubeAxesActor.DrawXGridlinesOff()
  40. m_cubeAxesActor.DrawYGridlinesOff()
  41. m_cubeAxesActor.DrawZGridlinesOff()
  42. # # #设置x、y、z轴的内部网格线不绘制
  43. m_cubeAxesActor.SetDrawXInnerGridlines(0)
  44. m_cubeAxesActor.SetDrawYInnerGridlines(0)
  45. m_cubeAxesActor.SetDrawZInnerGridlines(0)
  46. # # #设置x、y、z轴网格线的颜色
  47. m_cubeAxesActor.GetXAxesGridlinesProperty().SetColor(0.5, 0.5, 0.5)
  48. m_cubeAxesActor.GetYAxesGridlinesProperty().SetColor(0.5, 0.5, 0.5)
  49. m_cubeAxesActor.GetZAxesGridlinesProperty().SetColor(0.5, 0.5, 0.5)
  50. # # #指定网格线呈现的样式
  51. m_cubeAxesActor.SetGridLineLocation(2)
  52. # #刻度的设置
  53. # # #不显示x、y、z轴的次刻度
  54. m_cubeAxesActor.XAxisMinorTickVisibilityOff()
  55. m_cubeAxesActor.YAxisMinorTickVisibilityOff()
  56. m_cubeAxesActor.ZAxisMinorTickVisibilityOff()
  57. # # #设置刻度标签的显示方式(参数1false,刻度标签按0-200000显示;为true时,按0-200显示)
  58. m_cubeAxesActor.SetLabelScaling(0, 0, 0, 0)
  59. # # #设置刻度线显示的位置(内部、外部、两侧)
  60. m_cubeAxesActor.SetTickLocation(1)

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号