VTK Chart坐标轴
来源:互联网 发布:2011网络春晚大张伟 编辑:程序博客网 时间:2024/06/18 12:24
虽然用vtk绘制坐标轴有点大才小用,但vtk绘制出来到坐标轴着实挺清秀的:
#include “mainwindow.h”
#include “QApplication”
include “vtkAutoInit.h”
if VTK_MAJOR_VERSION >=7
VTK_MODULE_INIT(vtkRenderingOpenGL2)
VTK_MODULE_INIT(vtkInteractionStyle)
VTK_MODULE_INIT(vtkRenderingFreeType)
VTK_MODULE_INIT(vtkRenderingContextOpenGL2)
endif
include “vtkVersion.h”
include “vtkSmartPointer.h”
include “vtkChartXY.h”
include “vtkContextScene.h”
include “vtkContextView.h”
include “vtkFloatArray.h”
include “vtkPlotPoints.h”
include “vtkRenderWindow.h”
include “vtkRenderWindowInteractor.h”
include “vtkRenderer.h”
include “vtkTable.h”
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
// MainWindow w;
// w.show();
// return a.exec();
// Set up a 2D scene, add an XY chart to it vtkSmartPointer<vtkContextView> view = vtkSmartPointer<vtkContextView>::New(); view->GetRenderer()->SetBackground(1.0, 1.0, 1.0); view->GetRenderWindow()->SetSize(400, 300); vtkSmartPointer<vtkChartXY> chart = vtkSmartPointer<vtkChartXY>::New(); view->GetScene()->AddItem(chart); chart->SetShowLegend(true); // Create a table with some points in it... vtkSmartPointer<vtkTable> table = vtkSmartPointer<vtkTable>::New(); vtkSmartPointer<vtkFloatArray> arrX = vtkSmartPointer<vtkFloatArray>::New(); arrX->SetName("X Axis"); table->AddColumn(arrX); vtkSmartPointer<vtkFloatArray> arrC = vtkSmartPointer<vtkFloatArray>::New(); arrC->SetName("Cosine"); table->AddColumn(arrC); vtkSmartPointer<vtkFloatArray> arrS = vtkSmartPointer<vtkFloatArray>::New(); arrS->SetName("Sine"); table->AddColumn(arrS); vtkSmartPointer<vtkFloatArray> arrT = vtkSmartPointer<vtkFloatArray>::New(); arrT->SetName("Sine - Cosine"); table->AddColumn(arrT); // Test charting with a few more points... int numPoints = 40; float inc = 7.5 / (numPoints-1); table->SetNumberOfRows(numPoints); for (int i = 0; i < numPoints; ++i) { table->SetValue(i, 0, i * inc); table->SetValue(i, 1, cos(i * inc) + 0.0); table->SetValue(i, 2, sin(i * inc) + 0.0); table->SetValue(i, 3, sin(i * inc) - cos(i * inc)); } // Add multiple scatter plots, setting the colors etc vtkPlot *points = chart->AddPlot(vtkChart::POINTS);
#if VTK_MAJOR_VERSION <= 5
points->SetInput(table, 0, 1);
#else
points->SetInputData(table, 0, 1);
#endif
points->SetColor(0, 0, 0, 255);
points->SetWidth(1.0);
vtkPlotPoints::SafeDownCast(points)->SetMarkerStyle(vtkPlotPoints::CROSS);
points = chart->AddPlot(vtkChart::POINTS);
#if VTK_MAJOR_VERSION <= 5
points->SetInput(table, 0, 2);
#else
points->SetInputData(table, 0, 2);
#endif
points->SetColor(0, 0, 0, 255);
points->SetWidth(1.0);
vtkPlotPoints::SafeDownCast(points)->SetMarkerStyle(vtkPlotPoints::PLUS);
points = chart->AddPlot(vtkChart::POINTS);
#if VTK_MAJOR_VERSION <= 5
points->SetInput(table, 0, 3);
#else
points->SetInputData(table, 0, 3);
#endif
points->SetColor(0, 0, 255, 255);
points->SetWidth(1.0);
vtkPlotPoints::SafeDownCast(points)->SetMarkerStyle(vtkPlotPoints::CIRCLE);
//Finally render the scene view->GetRenderWindow()->SetMultiSamples(0); view->GetInteractor()->Initialize(); view->GetInteractor()->Start(); return EXIT_SUCCESS;
}
sleep;gnome-screenshot截图:
- VTK Chart坐标轴
- vtk实战(五十三)—坐标轴
- .NET chart 毫秒级坐标轴
- 改变chart坐标轴的起始值
- SWt chart 坐标轴绘制函数入口
- Extjs学习 图表Chart 坐标轴组件详解(axes)
- extjs4 chart 坐标轴都为Numberic时,坐标不正确问题
- C# 画图控件CHART 自定义坐标轴刻度标签
- 坐标轴
- 坐标轴
- flex 折线图 line chart 图表 Legend 修改字体大小 AxisRenderer 坐标轴
- 按指定的值将形状定位到 Chart 的坐标轴中
- EXT根据数据绘制chart柱状图和饼图,动态改变坐标轴
- VTK
- VTK
- vtk
- vtk
- vtk
- java在标签对内赋值
- 国家图书馆提示“对不起,系统检测您还没有安装PDF阅读器”的解决方法 | 国家电子图书馆
- dijkstra拓展(规划最短航线问题)
- cookie的删除与替换
- HDU-1043 Eight(BFS)
- VTK Chart坐标轴
- 作业代码
- Json返回通用对象,工具类
- Struts的运行原理及开发流程
- 列表
- linux学习笔记(一)
- UVA 12563 Jin Ge Jin Qu hao
- 【java笔记】day05
- Json四大拼接方式