亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mp.cpp

?? 一個很有用的VTK程序
?? CPP
字號:
// #include "vtkalllibs.h"
// #include "vtkActor.h"
// #include "vtkPolyData.h"
// #include "vtkUnstructuredGrid.h"
// #include "vtkRenderWindow.h"
// #include "vtkRenderer.h"
// #include "vtkPointPicker.h"
// #include "vtkRenderWindowInteractor.h"
// #include "vtkPolyDataMapper.h"
// #include "vtkSphereSource.h"
// #include "vtkPolyDataReader.h"
// #include "vtkPolyDataMapper.h"
// #include "vtkShrinkFilter.h"
// #include "vtkDataSetMapper.h"
// #include "vtkRenderWindowInteractor.h"
// #include "vtkIdList.h"
// #include "vtkProperty.h"
// #include "vtkCamera.h"
// 
// static void PickCells(void *);
// static vtkActor *sphereActor;
// static vtkPolyData *plateOutput;
// static vtkUnstructuredGrid *cells;
// static vtkRenderWindow *renWin;
// static vtkActor *cellsActor, *plateActor;
// 
// //#include "SaveImage.h"
// 
// void main( int argc, char *argv[] )
// {
//   vtkRenderer *renderer = vtkRenderer::New();
//   renWin = vtkRenderWindow::New();
//     renWin->AddRenderer(renderer);
// 
//   vtkPointPicker *picker = vtkPointPicker::New();
//     picker->SetTolerance(0.01);
// 
//   vtkRenderWindowInteractor *iren = vtkRenderWindowInteractor::New();
//     iren->SetRenderWindow(renWin);
//     iren->SetPicker(picker);
// 
//   // read data file
//   vtkPolyDataReader *plate = vtkPolyDataReader::New();
//     plate->SetFileName("plate.vtk");
//     //plate->DebugOn();
//     plateOutput = plate->GetOutput();
//   vtkPolyDataMapper *plateMapper = vtkPolyDataMapper::New();
//     plateMapper->SetInput(plate->GetOutput());
//   plateActor = vtkActor::New();
//     plateActor->SetMapper(plateMapper);
//     plateActor->GetProperty()->SetColor(0.5000,0.5400,0.5300);
// 
//   // create marker for pick
//   vtkSphereSource *sphere = vtkSphereSource::New();
//     sphere->SetThetaResolution(8); sphere->SetPhiResolution(8);
//     sphere->SetRadius(0.01);
//   vtkPolyDataMapper *sphereMapper = vtkPolyDataMapper::New();
//     sphereMapper->SetInput(sphere->GetOutput());
//   sphereActor = vtkActor::New();
//     sphereActor->SetMapper(sphereMapper);
//     sphereActor->GetProperty()->SetColor(1,0,0);
//     sphereActor->PickableOff();
// 
//   // create actor and mapper to display picked cells
//   cells = vtkUnstructuredGrid::New();
//   vtkShrinkFilter *shrink = vtkShrinkFilter::New();
//     shrink->SetInput(cells);
//     shrink->SetShrinkFactor(0.75);
//   vtkDataSetMapper *cellsMapper = vtkDataSetMapper::New();
//     cellsMapper->SetInput(shrink->GetOutput());
//   cellsActor = vtkActor::New();
//     cellsActor->SetMapper(cellsMapper);
//     cellsActor->PickableOff();
//     cellsActor->VisibilityOff();
//     cellsActor->GetProperty()->SetColor(0.5000,0.5400,0.5300);
// 
//   renderer->AddActor(cellsActor);
//   renderer->AddActor(plateActor);
//   renderer->AddActor(sphereActor);
//   renderer->SetBackground(1,1,1);
//   renderer->GetActiveCamera()->Elevation(30.0);
//   renderer->GetActiveCamera()->Azimuth(30.0);
//   renderer->GetActiveCamera()->Zoom(0.75);
// 
//   renWin->SetSize(300,300);
// 
//   // interact with data
//   renWin->Render();
// 
// //  SAVEIMAGE( renWin );
// 
//   iren->AddObserver( EndPickEvent, PickCells,(void *)iren);
//   iren->Start();
// 
//   // Clean up
//   renderer->Delete();
//   renWin->Delete();
//   picker->Delete();
//   iren->Delete();
//   plate->Delete();
//   plateMapper->Delete();
//   plateActor->Delete();
//   sphere->Delete();
//   sphereMapper->Delete();
//   sphereActor->Delete();
//   cells->Delete();
//   shrink->Delete();
//   cellsMapper->Delete();
//   cellsActor->Delete();
// }
// 
// static void PickCells(void *arg)
// {
//   vtkRenderWindowInteractor *iren = (vtkRenderWindowInteractor *)arg;
//   vtkPointPicker *picker = (vtkPointPicker *)iren->GetPicker();
//   int i, cellId;
//   vtkIdList *cellIds = vtkIdList::New(); cellIds->Allocate(12);
//   vtkIdList *ptIds = vtkIdList::New(); ptIds->Allocate(12);
// 
//   sphereActor->SetPosition(picker->GetPickPosition());
// 
//   if ( picker->GetPointId() >= 0 )
//     {
//     cout << "Point id: " << picker->GetPointId() << "\n";
//     cellsActor->VisibilityOn();
//     plateActor->VisibilityOff();
// 
//     cells->Initialize();
//     cells->Allocate(100);
//     cells->SetPoints(plateOutput->GetPoints());
// 
//     plateOutput->GetPointCells(picker->GetPointId(), cellIds);
//     for (i=0; i < cellIds->GetNumberOfIds(); i++)
//       {
//       cellId = cellIds->GetId(i);
//       plateOutput->GetCellPoints(cellId, ptIds);
//       cells->InsertNextCell(plateOutput->GetCellType(cellId), ptIds);
//       }
//     }
//   else
//     {
//     cellsActor->VisibilityOff();
//     plateActor->VisibilityOn();
//     }
// 
//   renWin->Render();
//   cellIds->Delete();
//   ptIds->Delete();
// }

//#####################################################################
#include "vtkAllLibs.h"
#include "vtkActor.h"
#include "vtkCamera.h"
#include "vtkCellArray.h"
#include "vtkFloatArray.h"
#include "vtkPointData.h"
#include "vtkPoints.h"
#include "vtkPolyData.h"
#include "vtkPolyDataMapper.h"
#include "vtkRenderWindow.h"
#include "vtkRenderWindowInteractor.h"
#include "vtkRenderer.h"
#include "vtkCommand.h"
#include "vtkPropPicker.h"
#include "vtkPointPicker.h"
#include "vtkSphereSource.h"
#include "vtkProperty.h"
#include "vtkInteractorStyleImage.h"

#include <stdio.h>



class vtkMyCallback : public vtkCommand
{
public:
        vtkMyCallback::vtkMyCallback() { m_pvtkActorSelection = NULL; };
        static vtkMyCallback *New() { return new vtkMyCallback; }
        void PrintSelf(ostream&, vtkIndent) { }
        void PrintTrailer(ostream&, vtkIndent) { }
        void PrintHeader(ostream&, vtkIndent) { }
        void CollectRevisions(ostream&) {}
        void SetSelectionActor(vtkActor* pvtkActorSelection) { m_pvtkActorSelection = pvtkActorSelection; };

        virtual void Execute(vtkObject *caller, unsigned long, void*)
        {
                vtkRenderWindowInteractor *iren = reinterpret_cast<vtkRenderWindowInteractor*>(caller);
                vtkPointPicker *picker = (vtkPointPicker *)iren->GetPicker();
                cout << "PointId: " << picker->GetPointId() << "\n";
                if (picker->GetPointId() != -1)
                {
                        if (m_pvtkActorSelection)
                                m_pvtkActorSelection->SetPosition(picker->GetPickPosition());
                        iren->Render();
                }
        }
private:
        vtkActor* m_pvtkActorSelection;
};

class vtkTransInteractorStyle : public vtkInteractorStyleImage
{
	bool ctrldown;
	double mx,my,mz,oldpos[3],pickpos[3];
public:
	int MousePos[2];
	vtkPropPicker * mPicker;
	vtkRenderer	  * mRender;

	static vtkTransInteractorStyle *New() 
	{
		return new vtkTransInteractorStyle;
	}
//	virtual void OnLeftButtonDown();
//	virtual void OnLeftButtonUp();
//	virtual void OnRightButtonDown();
//	virtual void OnRightButtonUp();
//	virtual void OnMouseMove();

	
protected:
	vtkTransInteractorStyle()  {	ctrldown = false;
									mx = my = mz = 0;
								};
	~vtkTransInteractorStyle() {};
	
};

//void vtkTransInteractorStyle::OnLeftButtonDown()
//{
	 
// 	int x,y;		
//	if (0)
//	{
//		mPicker->Pick(x,y,0,mRender);
//		if (mPicker->PickProp(x,y,mRender) )
//		{
//			int r = mPicker->GetProp()->IsA("VtkImageActor");
//			ctrldown = true;
//			mx = x; my = y; 
//			
//			mPicker->GetPickPosition(pickpos);
//			mPicker->GetActor()->GetPosition(oldpos);
//			pickpos[0] = pickpos[0] - oldpos[0];
//			pickpos[1] = pickpos[1] - oldpos[1];
//			mz = mRender->GetZ(mx,my);
//			printf("Picked:%5.2f %5.2f %5.2f\0",oldpos[0],oldpos[1],oldpos[2]);
//
//		}
//	}
//	else
//		vtkInteractorStyleImage::OnLeftButtonDown();
//}
//void vtkTransInteractorStyle::OnLeftButtonUp()
//{
	 
 			
//	ctrldown = false;
//	if (0)
//	{
//	}
//	else
//		vtkInteractorStyleImage::OnLeftButtonUp();
//}

//void vtkTransInteractorStyle::OnRightButtonDown()
//{
//	char buf[100];
 
//		vtkInteractorStyleImage::OnRightButtonDown();
//}
//void vtkTransInteractorStyle::OnRightButtonUp()
//{
//	vtkInteractorStyleImage::OnRightButtonUp();
//}
//void vtkTransInteractorStyle::OnMouseMove()
//{
//		vtkInteractorStyleImage::OnMouseMove();
 
//}

int main( int argc, char *argv[] )
{
        int i;
        static float x[8][3]={{0,0,0}, {1,0,0}, {1,1,0}, {0,1,0},
                {0,0,1}, {1,0,1}, {1,1,1}, {0,1,1}};
        static vtkIdType pts[6][4]={{0,1,2,3}, {4,5,6,7}, {0,1,5,4},
                {1,2,6,5}, {2,3,7,6}, {3,0,4,7}};

        // We'll create the building blocks of polydata including data attributes.
        vtkPolyData *cube = vtkPolyData::New();
        vtkPoints *points = vtkPoints::New();
        vtkCellArray *polys = vtkCellArray::New();
        vtkFloatArray *scalars = vtkFloatArray::New();

        // Load the point, cell, and data attributes.
        for (i=0; i<8; i++) points->InsertPoint(i,x[i]);
        for (i=0; i<6; i++) polys->InsertNextCell(4,pts[i]);
        for (i=0; i<8; i++) scalars->InsertTuple1(i,i);

        // We now assign the pieces to the vtkPolyData.
        cube->SetPoints(points);
        cube->SetPolys(polys);
        cube->GetPointData()->SetScalars(scalars);

        // Now we'll look at it.
        vtkPolyDataMapper *cubeMapper = vtkPolyDataMapper::New();
        cubeMapper->SetInput(cube);
        cubeMapper->SetScalarRange(0,7);
        vtkActor *cubeActor = vtkActor::New();
        cubeActor->SetMapper(cubeMapper);

        // The usual rendering stuff.
        vtkCamera *camera = vtkCamera::New();
        camera->SetPosition(1,1,1);
        camera->SetFocalPoint(0,0,0);

        vtkRenderer *renderer = vtkRenderer::New();
        vtkRenderWindow *renWin = vtkRenderWindow::New();
        renWin->AddRenderer(renderer);

        vtkRenderWindowInteractor *iren = vtkRenderWindowInteractor::New();
        iren->SetRenderWindow(renWin);

        renderer->AddActor(cubeActor);
        renderer->SetActiveCamera(camera);
        renderer->ResetCamera();
        renderer->SetBackground(1,1,1);

        renWin->SetSize(300,300);

        // create marker for pick
        vtkSphereSource *sphere = vtkSphereSource::New();
        sphere->SetThetaResolution(8); sphere->SetPhiResolution(8);
        sphere->SetRadius(0.1);
        vtkPolyDataMapper *sphereMapper = vtkPolyDataMapper::New();
        sphereMapper->SetInput(sphere->GetOutput());
        vtkActor *sphereActor = vtkActor::New();
        sphereActor->SetMapper(sphereMapper);
        sphereActor->GetProperty()->SetColor(1,0,0);
        sphereActor->PickableOff();

        renderer->AddActor(sphereActor);

        // start renderer
        renWin->Render();

        // init picker
        vtkPointPicker *picker = vtkPointPicker::New();
		vtkPropPicker  *PropPicker = vtkPropPicker::New();
		vtkTransInteractorStyle *mStyle = vtkTransInteractorStyle::New();

		mStyle->mRender = renderer;
		mStyle->mPicker = PropPicker;
		
        //PropPicker->SetTolerance(0.01);
		picker->SetTolerance(0.01);
        iren->SetPicker(picker);
		iren->SetInteractorStyle(mStyle);

        // init callback
        vtkMyCallback *callback = vtkMyCallback::New();
        callback->SetSelectionActor(sphereActor);
        iren->AddObserver(vtkCommand::EndPickEvent, callback);

        // start interaction
        iren->Start();

        iren->RemoveObserver(callback);

        // Clean up
        cube->Delete();
        points->Delete();
        polys->Delete();
        scalars->Delete();
        cubeMapper->Delete();
        cubeActor->Delete();
        camera->Delete();
        sphere->Delete();
        sphereMapper->Delete();
        sphereActor->Delete();
        picker->Delete();
		PropPicker->Delete();
		mStyle->Delete();
        renderer->Delete();
        renWin->Delete();
        iren->Delete();
        callback->Delete();

        return 0;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区免费视频| 91丝袜国产在线播放| a级高清视频欧美日韩| 欧美日本在线播放| 国产精品乱子久久久久| 日日摸夜夜添夜夜添国产精品| 国产二区国产一区在线观看| 欧美亚男人的天堂| 亚洲国产成人私人影院tom| 日韩av中文字幕一区二区三区| 99re热这里只有精品视频| 91精品欧美一区二区三区综合在| 国产精品久久久久久妇女6080| 日本sm残虐另类| 色菇凉天天综合网| 国产精品福利一区二区三区| 国产精品乡下勾搭老头1| 欧美一区二区三区色| 亚洲一区影音先锋| 不卡的电视剧免费网站有什么| 91精品国产aⅴ一区二区| 亚洲三级小视频| 国产成人免费在线视频| 日韩一二三区不卡| 午夜精品一区二区三区三上悠亚| av爱爱亚洲一区| 中文字幕不卡的av| 国产精品123| 久久综合五月天婷婷伊人| 免费国产亚洲视频| 亚洲成人资源在线| 制服丝袜亚洲色图| 一区二区三区四区在线播放| 不卡电影免费在线播放一区| 国产午夜精品一区二区三区嫩草 | 欧美天堂一区二区三区| 国产精品视频九色porn| 国产成人综合精品三级| 久久婷婷综合激情| 蜜桃av一区二区| 日韩欧美专区在线| 理论片日本一区| 欧美tk—视频vk| 狠狠v欧美v日韩v亚洲ⅴ| 这里只有精品免费| 琪琪一区二区三区| 日韩精品一区二区三区老鸭窝| 精品夜夜嗨av一区二区三区| 久久久亚洲国产美女国产盗摄| 国产精品一区久久久久| 久久久激情视频| 风间由美性色一区二区三区| 久久综合久久鬼色| 不卡欧美aaaaa| 亚洲综合视频在线观看| 欧美美女直播网站| 久久国产精品99久久久久久老狼 | 69av一区二区三区| 日韩主播视频在线| 欧美xxxx老人做受| 国产成人精品aa毛片| 国产精品色哟哟网站| 欧美中文字幕一区二区三区亚洲| 亚洲18影院在线观看| 精品剧情v国产在线观看在线| 国产酒店精品激情| 亚洲人成精品久久久久久| 欧美色爱综合网| 久久精品国产99久久6| 国产欧美日韩综合| av一二三不卡影片| 亚洲国产视频网站| 欧美成人乱码一区二区三区| 粉嫩欧美一区二区三区高清影视| 综合激情成人伊人| 欧美一区二区私人影院日本| 国产一区二区三区在线观看免费视频| 亚洲国产精品成人综合| 欧美日韩综合在线免费观看| 国产在线看一区| 亚洲精品视频自拍| 日韩精品一区在线| 91九色最新地址| 国模一区二区三区白浆| 亚洲国产欧美一区二区三区丁香婷| 欧美大胆一级视频| 色哟哟在线观看一区二区三区| 麻豆精品一区二区综合av| 18欧美亚洲精品| 精品区一区二区| 欧美亚洲高清一区二区三区不卡| 国产美女久久久久| 日本一道高清亚洲日美韩| 日韩伦理av电影| 国产欧美日韩不卡免费| 日韩一区二区电影在线| 色综合久久久久久久久| 国产精品911| 捆绑调教美女网站视频一区| 亚洲一区二区在线免费观看视频| 中文字幕av不卡| 欧美videossexotv100| 欧美性猛交xxxxxx富婆| 成人午夜大片免费观看| 精品无人码麻豆乱码1区2区| 视频精品一区二区| 亚洲午夜一区二区| 一区二区在线免费观看| 国产精品成人免费在线| 亚洲国产岛国毛片在线| 亚洲精品一区二区三区福利| 日韩一区二区视频| 欧美精选午夜久久久乱码6080| 欧洲av在线精品| 欧美在线观看你懂的| 99re6这里只有精品视频在线观看| 丁香桃色午夜亚洲一区二区三区| 国产成人一区在线| 国产美女精品在线| 国产中文字幕精品| 国产精品亚洲午夜一区二区三区| 国产自产高清不卡| 国产麻豆精品在线观看| 国内久久精品视频| 国产一区二区0| 一区二区中文视频| 中文字幕在线免费不卡| 1024成人网色www| 亚洲婷婷综合久久一本伊一区| 亚洲欧美综合色| 一区二区三区中文字幕电影| 亚洲第一搞黄网站| 丝袜国产日韩另类美女| 理论片日本一区| 国产一区二区在线观看视频| 成人精品小蝌蚪| 色综合天天做天天爱| 欧美日韩精品欧美日韩精品 | 丝袜诱惑制服诱惑色一区在线观看| 亚洲成人先锋电影| 婷婷六月综合亚洲| 久久99热国产| 99国产欧美另类久久久精品| 欧美婷婷六月丁香综合色| 日韩免费在线观看| 欧美激情中文不卡| 一区二区三区不卡视频| 蜜臀a∨国产成人精品| 国内外成人在线| 成人性生交大片免费看视频在线| 91在线一区二区三区| 欧美乱熟臀69xxxxxx| 精品91自产拍在线观看一区| 欧美激情在线一区二区| 性久久久久久久久久久久| 久久国产综合精品| 99久久精品一区| 日韩午夜中文字幕| 亚洲欧洲美洲综合色网| 日日摸夜夜添夜夜添国产精品 | 国产在线精品免费| 91在线观看一区二区| 91麻豆精品国产自产在线| 久久久久久免费网| 亚洲一二三区在线观看| 国产精品亚洲а∨天堂免在线| 色偷偷成人一区二区三区91| 欧美电影免费观看高清完整版在线| 自拍av一区二区三区| 精品一区二区在线播放| 91亚洲大成网污www| 久久色中文字幕| 亚洲国产毛片aaaaa无费看| 国产69精品久久99不卡| 欧美年轻男男videosbes| 中文字幕一区二区三| 精品在线免费观看| 欧美日韩视频在线第一区| 中文字幕精品一区| 精品一区二区日韩| 欧美一区午夜精品| 亚洲一区在线观看免费观看电影高清| 国产不卡视频一区| 精品久久国产97色综合| 亚洲成人av一区二区三区| 91在线视频在线| 欧美国产精品专区| 激情综合色丁香一区二区| 欧美视频精品在线观看| 亚洲欧美乱综合| 成人av在线影院| 日本一区二区三区国色天香| 国产一区二区三区四区五区入口| 欧美精品久久天天躁| 亚洲午夜精品在线| 色诱亚洲精品久久久久久| 综合中文字幕亚洲| av在线播放不卡| 中文字幕在线观看不卡视频| 成人免费视频播放|