C++ 使用Visual Studio创建新的VTK项目

C++ 使用Visual Studio创建新的VTK项目,c++,windows,visual-studio-2013,cmake,vtk,C++,Windows,Visual Studio 2013,Cmake,Vtk,我试图创建一个新的C++项目,它使用VisualStudio.V/P>中的VTK。 我按照说明使用CMake在Windows上下载、访问和构建VTK,看起来一切正常。然后,我尝试创建一个包含VTK功能和可视化的新项目,但在无法打开任何VTK头文件时会产生错误(这可能是由于项目属性中存在其他依赖项,但我不确定要更改或更新什么才能使其正常工作) 有人知道如何解决这个问题吗?(目前,我正在尝试使用以下代码查看一个简单的多维数据集): 您可以发布为应用程序创建的CMakeLists.txt吗?好的。行。

我试图创建一个新的C++项目,它使用VisualStudio.V/P>中的VTK。 我按照说明使用CMake在Windows上下载、访问和构建VTK,看起来一切正常。然后,我尝试创建一个包含VTK功能和可视化的新项目,但在无法打开任何VTK头文件时会产生错误(这可能是由于项目属性中存在其他依赖项,但我不确定要更改或更新什么才能使其正常工作)

有人知道如何解决这个问题吗?(目前,我正在尝试使用以下代码查看一个简单的多维数据集):


您可以发布为应用程序创建的
CMakeLists.txt
吗?好的。行。我对此也有问题,因为当我尝试配置它时,我得到一个“找不到由“VTK”提供的具有以下任何名称的包配置文件:VTKConfig.cmake VTK config.cmake”在
CMake gui
中,当您配置应用程序时,将VTK_BIN文件夹指向您用于VTK的构建文件夹。我的CMake基于我在网上看到的一个示例和一个视频,但只是更改了应用程序的名称(),所以我不明白为什么它不工作,我想我已经找到了它。谢谢你的帮助
#include <vtkSmartPointer.h>
#include <vtkActor.h>
#include <vtkCubeSource.h>
#include <vtkPolyData.h>
#include <vtkPolyDataMapper.h>
#include <vtkRenderWindow.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkRenderer.h>

#include <stdlib.h>
#include <stdio.h>
#include <iostream>
#include <string>
#include <sstream>
#include <fstream>
#include <cmath>
#include <algorithm>


int   main(int t) {
if (t==1) {
vtkSmartPointer<vtkCubeSource> cubeSource =
    vtkSmartPointer<vtkCubeSource>::New();

// Create a mapper and actor.
vtkSmartPointer<vtkPolyDataMapper> mapper =
    vtkSmartPointer<vtkPolyDataMapper>::New();
mapper->SetInputConnection(cubeSource->GetOutputPort());

vtkSmartPointer<vtkActor> actor =
    vtkSmartPointer<vtkActor>::New();
actor->SetMapper(mapper);

// Create a renderer, render window, and interactor
vtkSmartPointer<vtkRenderer> renderer =
    vtkSmartPointer<vtkRenderer>::New();
vtkSmartPointer<vtkRenderWindow> renderWindow =
    vtkSmartPointer<vtkRenderWindow>::New();
renderWindow->AddRenderer(renderer);
vtkSmartPointer<vtkRenderWindowInteractor> renderWindowInteractor =
    vtkSmartPointer<vtkRenderWindowInteractor>::New();
renderWindowInteractor->SetRenderWindow(renderWindow);

// Add the actors to the scene
renderer->AddActor(actor);
renderer->SetBackground(.3, .2, .1);

// Render and interact
renderWindow->Render();
renderWindowInteractor->Start();

        actor->Delete();
        mapper->Delete();
        renderer->Delete();
        renderWindow->Delete();
        renderWindowInteractor->Delete();

    }

  return 0;
 }
cmake_minimum_required(VERSION 2.8)

PROJECT(karman)

find_package(VTK REQUIRED)
include(${VTK_USE_FILE})

add_executable(karman MACOSX_BUNDLE karman)

if(VTK_LIBRARIES)
   target_link_libraries(karman ${VTK_LIBRARIES})
else()
     target_link_libraries(karman vtkHybrid vtkWidgets)
endif()