www.pudn.com > texture.rar > texture.cpp


#include "vtkOBJReader.h" 
#include "vtkPolyDataMapper.h" 
#include "vtkRenderWindow.h" 
#include "vtkCamera.h" 
#include "vtkActor.h" 
#include "vtkRenderer.h" 
#include "vtkRenderWindowInteractor.h" 
#include "vtkBMPReader.h" 
#include "vtkTexture.h" 
#include "vtkSphereSource.h" 
#include   
#include   
 
#pragma   comment(lib,"vtkRendering.lib") 
#pragma   comment(lib,"vtkCommon.lib") 
#pragma   comment(lib,"vtkImaging.lib") 
#pragma   comment(lib,"vtkGraphics.lib") 
#pragma   comment(lib,"vtkFiltering.lib") 
#pragma   comment(lib,"ws2_32.lib")   
#pragma   comment(lib,"vtkHybrid.lib") 
#pragma   comment(lib,"vtkIO.lib") 
 
void main( int argc, char *argv[] ) 
{ 
    vtkOBJReader *mod = vtkOBJReader::New(); 
    mod->SetFileName("standard.obj"); 
     
	vtkTexturedSphereSource *sphere = vtkTexturedSphereSource::New(); 
	 
	//ÎÆÀíͼƬ 
	vtkBMPReader *pic = vtkBMPReader::New(); 
	pic->SetFileName("text1.bmp"); 
    //¼ÓÔØÎÆÀí 
    vtkTexture *texture = vtkTexture::New(); 
    texture->SetInput( pic->GetOutput() ); 
 
	vtkPolyDataMapper *mMapper = vtkPolyDataMapper::New(); 
	vtkPolyDataMapper *spheremapper = vtkPolyDataMapper::New(); 
 
	mMapper->SetInput( mod->GetOutput() ); 
	spheremapper->SetInput( sphere->GetOutput() ); 
 
	vtkActor *mActor =  vtkActor::New(); 
 
    mActor->SetMapper( mMapper ); 
    mActor->SetTexture( texture ); 
    mActor->GetProperty()->SetColor(0, 0, 0); 
    mActor->GetProperty()->SetOpacity(1) ; 
	 
	vtkActor *sphereactor = vtkActor::New(); 
    sphereactor->SetMapper( spheremapper ); 
	sphereactor->SetTexture( texture ); 
 
    vtkRenderer *ren= vtkRenderer::New(); 
	//ren->AddActor( mActor ); 
	ren->AddActor(sphereactor ); 
	ren->SetBackground( 0.1, 0.2, 0.4 ); 
 
	vtkRenderWindow *renWin = vtkRenderWindow::New(); 
	renWin->AddRenderer( ren ); 
	renWin->SetSize( 600, 600 ); 
	 
	vtkRenderWindowInteractor *iren = vtkRenderWindowInteractor::New(); 
	iren->SetRenderWindow(renWin); 
     
	renWin->Render(); 
	iren->Start(); 
 
	mod->Delete(); 
	mMapper->Delete(); 
	mActor->Delete(); 
	ren->Delete(); 
	renWin->Delete(); 
	iren->Delete(); 
 
	 
}