level 7
浩繁星尘
楼主
请问 各位大神 我使用斯坦福的Bunny txt坐标文件 加 vtkOutlineFilter 来构造一个包围盒 但是 执行后提示 error C2664: “void vtkAlgorithm::SetInputConnection(vtkAlgorithmOutput *)”: 不能将参数 1 从“vtkSmartPointer<T>”转换为“vtkAlgorithmOutput *”
想请教各位帮我看看我这错在什么地方??
谢谢各位了
// 点云读取2.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
return 0;
}
#include <vtkSmartPointer.h>
#include <vtkSimplePointsReader.h>
#include <vtkPolyDataMapper.h>
#include <vtkActor.h>
#include <vtkProperty.h>
#include <vtkRenderer.h>
#include <vtkRenderWindow.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkOutlineFilter.h>
int main( )
{
// Read the file
vtkSmartPointer<vtkSimplePointsReader> reader = vtkSmartPointer<vtkSimplePointsReader>::New();
reader->SetFileName ( "E:\\obj\\斯坦福兔子3000点法向量.txt" );
reader->Update();
// Visualize
vtkSmartPointer<vtkOutlineFilter> outlineData =vtkSmartPointer<vtkOutlineFilter>::New();//画出包围盒
outlineData->SetInputConnection(reader); //就是这个->符号出错
vtkSmartPointer<vtkPolyDataMapper> mapper = vtkSmartPointer<vtkPolyDataMapper>::New();
mapper->SetInputConnection(reader->GetOutputPort());
vtkSmartPointer<vtkActor> actor = vtkSmartPointer<vtkActor>::New();
actor->SetMapper(mapper);
actor->GetProperty()->SetPointSize(4);
actor->GetProperty()->SetColor(0.0,0.0,0.0);
vtkSmartPointer<vtkRenderer> renderer = vtkSmartPointer<vtkRenderer>::New();
renderer->AddActor(actor);
renderer->SetBackground(1.3, 1.6, 1.3); // Background color green
vtkSmartPointer<vtkRenderWindow> renderWindow = vtkSmartPointer<vtkRenderWindow>::New();
renderWindow->AddRenderer(renderer);
vtkSmartPointer<vtkRenderWindowInteractor> renderWindowInteractor = vtkSmartPointer<vtkRenderWindowInteractor>::New();
renderWindowInteractor->SetRenderWindow(renderWindow);
renderWindow->Render();
renderWindowInteractor->Start();
return EXIT_SUCCESS;
}
2017年08月29日 16点08分
1
想请教各位帮我看看我这错在什么地方??
谢谢各位了
// 点云读取2.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
return 0;
}
#include <vtkSmartPointer.h>
#include <vtkSimplePointsReader.h>
#include <vtkPolyDataMapper.h>
#include <vtkActor.h>
#include <vtkProperty.h>
#include <vtkRenderer.h>
#include <vtkRenderWindow.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkOutlineFilter.h>
int main( )
{
// Read the file
vtkSmartPointer<vtkSimplePointsReader> reader = vtkSmartPointer<vtkSimplePointsReader>::New();
reader->SetFileName ( "E:\\obj\\斯坦福兔子3000点法向量.txt" );
reader->Update();
// Visualize
vtkSmartPointer<vtkOutlineFilter> outlineData =vtkSmartPointer<vtkOutlineFilter>::New();//画出包围盒
outlineData->SetInputConnection(reader); //就是这个->符号出错
vtkSmartPointer<vtkPolyDataMapper> mapper = vtkSmartPointer<vtkPolyDataMapper>::New();
mapper->SetInputConnection(reader->GetOutputPort());
vtkSmartPointer<vtkActor> actor = vtkSmartPointer<vtkActor>::New();
actor->SetMapper(mapper);
actor->GetProperty()->SetPointSize(4);
actor->GetProperty()->SetColor(0.0,0.0,0.0);
vtkSmartPointer<vtkRenderer> renderer = vtkSmartPointer<vtkRenderer>::New();
renderer->AddActor(actor);
renderer->SetBackground(1.3, 1.6, 1.3); // Background color green
vtkSmartPointer<vtkRenderWindow> renderWindow = vtkSmartPointer<vtkRenderWindow>::New();
renderWindow->AddRenderer(renderer);
vtkSmartPointer<vtkRenderWindowInteractor> renderWindowInteractor = vtkSmartPointer<vtkRenderWindowInteractor>::New();
renderWindowInteractor->SetRenderWindow(renderWindow);
renderWindow->Render();
renderWindowInteractor->Start();
return EXIT_SUCCESS;
}
