生成网格
通过设置vtkPolyData的Points和lines来生成我们想要的网格。
为了不影响观看效果,例子中将交互性关闭了。
CMakeLists.txt
cmake_minimum_required(VERSION 2.8)
project(twoDimensionGird)
find_package( VTK REQUIRED )
include( ${VTK_USE_FILE} )
add_executable(${PROJECT_NAME} "main.cpp")
target_link_libraries( ${PROJECT_NAME} ${VTK_LIBRARIES} )
main.cpp
#include <iostream>
#include <vtkSmartPointer.h>
#include <vtkSphereSource.h>
#include <vtkActor.h>
#include <vtkConeSource.h>
#include <vtkRenderer.h>
#include <vtkRenderWindow.h>
#include <vtkPolyDataMapper.h>
#include <vtkProperty.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkLight.h>
#include <vtkCamera.h>
#include <vtkActor2D.h>
#include <vtkRendererCollection.h>
using namespace std;
int main()
{
int mmSize = 1;
vtkSmartPointer<vtkPolyDataMapper> v1mmMapper =
vtkSmartPointer<vtkPolyDataMapper>::New();
vtkSmartPointer<vtkPolyData> v1mmPolyData =
vtkSmartPointer<vtkPolyData>::New();
vtkSmartPointer<vtkCellArray> v1mmLines =
vtkSmartPointer<vtkCellArray>::New();
vtkSmartPointer<vtkPoints> v1mmPoints =
vtkSmartPointer<vtkPoints>::New();
v1mmPolyData->SetPoints( v1mmPoints );
v1mmPolyData->SetLines( v1mmLines );
v1mmMapper->SetInputData( v1mmPolyData );
vtkSmartPointer<vtkActor> v1mmLinesActor =
vtkSmartPointer<vtkActor>::New();
v1mmLinesActor->SetMapper( v1mmMapper );
v1mmLinesActor->GetProperty()->SetColor( 1, 0, 0 );