#include #include // ------------------------------------------------------------------------- void cpPlugins::Interface::Mesh:: SetVTK( vtkObject* mesh ) { if( dynamic_cast< vtkPolyData* >( mesh ) != NULL ) this->m_VTKObject = mesh; else this->m_VTKObject = NULL; this->m_Mapper = NULL; this->m_Actor = NULL; this->Modified( ); } // ------------------------------------------------------------------------- void cpPlugins::Interface::Mesh:: CreateVTKActor( ) { vtkPolyData* pd = this->GetVTK< vtkPolyData >( ); if( pd != NULL && ( this->m_Mapper.GetPointer( ) == NULL || this->m_Actor.GetPointer( ) == NULL ) ) { double range[ 2 ]; pd->GetScalarRange( range ); this->m_Normals = vtkSmartPointer< vtkPolyDataNormals >::New( ); this->m_Stripper = vtkSmartPointer< vtkStripper >::New( ); this->m_Mapper = vtkSmartPointer< vtkPolyDataMapper >::New( ); this->m_Actor = vtkSmartPointer< vtkQuadricLODActor >::New( ); this->m_Normals->SetInputData( pd ); this->m_Normals->SetFeatureAngle( 60.0 ); this->m_Stripper->SetInputConnection( this->m_Normals->GetOutputPort( ) ); this->m_Mapper->SetInputConnection( this->m_Stripper->GetOutputPort( ) ); this->m_Mapper->UseLookupTableScalarRangeOff( ); this->m_Mapper->SetScalarRange( range[ 0 ], ( ( range[ 1 ] - range[ 0 ] ) * 0.75 ) + range[ 0 ] ); this->m_Actor->SetMapper( this->m_Mapper ); this->m_Actor->DeferLODConstructionOff( ); this->Modified( ); /* TODO: vtkQuadricLODActor : AllocatedRenderTime */ } // fi } // ------------------------------------------------------------------------- vtkActor* cpPlugins::Interface::Mesh:: GetVTKActor( ) { return( this->m_Actor ); } // ------------------------------------------------------------------------- const vtkActor* cpPlugins::Interface::Mesh:: GetVTKActor( ) const { return( this->m_Actor ); } // ------------------------------------------------------------------------- cpPlugins::Interface::Mesh:: Mesh( ) : Superclass( ), m_Mapper( NULL ), m_Actor( NULL ) { } // ------------------------------------------------------------------------- cpPlugins::Interface::Mesh:: ~Mesh( ) { } // eof - $RCSfile$