资源简介
VS2008+OpenGL读取三维点云数据,旋转,缩放。点云文件格式为txt
代码片段和文件信息
// ChildView.cpp : CChildView 类的实现
//
#include “stdafx.h“
#include “GL_MFC.h“
#include “ChildView.h“
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
GLuint Buffer_ID;
const int BUFFER_NUMBER = 1;
GLuint VAO_ID;
GLuint VAO_NUMBER = 1;
const int vPosition = 0;
// CChildView
CChildView::CChildView()
{
m_hGLContext = NULL;
m_GLPixelIndex = 0;
}
CChildView::~CChildView()
{
wglMakeCurrent(NULL NULL) ;
wglDeleteContext(hglrc); //删除绘图描述表
::ReleaseDC (m_hWnd hDC) ; //释放设备描述表
}
BEGIN_MESSAGE_MAP(CChildView CWnd)
ON_WM_PAINT()
ON_WM_CREATE()
ON_WM_DESTROY()
ON_WM_SIZE()
ON_WM_MOUSEMOVE()
ON_WM_LBUTTONDOWN()
ON_COMMAND(ID_NEW &CChildView::OnNew)
ON_WM_MOUSEWHEEL()
END_MESSAGE_MAP()
// CChildView 消息处理程序
BOOL CChildView::PreCreateWindow(CREATESTRUCT& cs)
{
if (!CWnd::PreCreateWindow(cs))
return FALSE;
cs.dwExstyle |= WS_EX_CLIENTEDGE;
//cs.style &= ~WS_BORDER;
cs.style |= (WS_CLIPCHILDREN | WS_CLIPSIBLINGS);//创建子窗口使用的Windows风格,用于重绘时剪裁其他子窗口所覆盖的区域
cs.lpszClass = AfxRegisterWndClass(CS_HREDRAW|CS_VREDRAW|CS_DBLCLKS
::LoadCursor(NULL IDC_ARROW) reinterpret_cast(COLOR_WINDOW+1) NULL);
return TRUE;
}
void CChildView::OnPaint()
{
CPaintDC dc(this); // 用于绘制的设备上下文
// TODO: 在此处添加消息处理程序代码
// 不要为绘制消息而调用 CWnd::OnPaint()
//glLoadIdentity();
//glClear(GL_COLOR_BUFFER_BIT);
//glBegin(GL_POLYGON);
//glColor4f(1.0f 0.0f 0.0f 1.0f);
//glVertex2f(100.0f 50.0f);
//glColor4f(0.0f 1.0f 0.0f 1.0f);
//glVertex2f(450.0f 400.0f);
//glColor4f(0.0f 0.0f 1.0f 1.0f);
//glVertex2f(450.0f 50.0f);
//glEnd();
//glFlush();
//glutDisplayFunc(DisPlay);
// glutIdleFunc(DisPlay); //设置不断调用显示函数
// glutMouseFunc(OnLButtonDown);
// glutMotionFunc(onmousemove);
//DisPlay();
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
//printf(“At:%.2f %.2f %.2f\n“r*cos(c*du)hr*sin(c*du)); //这就是视点的坐标
glLoadIdentity();
TRACE(“x=%fy=%fz=%fduz=%d\n“xyzduz);
if((duz%360<90)&&((duz%360)>-90))
gluLookAt(x yz 0 0 0 0 0 1); //从视点看远点y轴方向(010)是上方向
else gluLookAt(x yz 0 0 0 0 0 -1); //从视点看远点y轴方向(010)是上方向
if(PointArray.empty())
{
glBegin(GL_LINES);
glColor3f(255.00.0f0.0f); glVertex3f(0.0f 0.0f 0.0f);
glColor3f(255.00.0f0.0f); glVertex3f(1.0f 0.0f 0.0f); //X轴
glColor3f(0.0255.0f0.0f); glVertex3f(0.0f 0.0f 0.0f);
glColor3f(0.0255.0f0.0f); glVertex3f(0.0f 1.0f 0.0f); //Y轴
glColor3f(0.00.0f255.0f); glVertex3f(0.0f 0.0f 0.0f);
glColor3f(0.00.0f255.0f); glVertex3f(0.0f 0.0f 1.0f); //Z轴
glEnd();
}
else
{
glBegin(GL_LINES);//画出坐标轴
glColor3f(255.00.0f0.0f); glVertex3f(0.0f 0.0f 0.0f);
glColor3f(255.00.0f0.0f); glVertex3f(1.0f 0.0f 0.0f); //X轴
glColor3f(0.0255.0f0.0f); glVertex3f(0.0f 0.0f 0.0f);
glColor3f(0.0255.0f0.0f); glVertex3f(
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2016-05-31 16:58 GL_MFC\
文件 3202640 2016-05-18 10:30 GL_MFC\3Ddata_cube_s.iom
目录 0 2016-05-31 16:32 GL_MFC\bin\
文件 374981 2016-05-31 16:29 GL_MFC\bin\ChildView.obj
文件 331776 2011-08-26 17:19 GL_MFC\bin\glew32.dll
文件 229376 2011-08-26 17:22 GL_MFC\bin\glew32mx.dll
文件 315392 2011-08-26 17:19 GL_MFC\bin\glewinfo.exe
文件 169984 1998-08-18 16:25 GL_MFC\bin\glut.dll
文件 169984 1998-08-18 16:25 GL_MFC\bin\glut32.dll
文件 920 2016-05-31 16:10 GL_MFC\bin\GL_MFC.exe.em
文件 984 2016-05-31 16:10 GL_MFC\bin\GL_MFC.exe.em
文件 861 2016-05-31 16:29 GL_MFC\bin\GL_MFC.exe.intermediate.manifest
文件 58694 2016-05-31 16:29 GL_MFC\bin\GL_MFC.obj
文件 24748 2016-05-31 16:10 GL_MFC\bin\GL_MFC.res
文件 56790 2016-05-31 16:29 GL_MFC\bin\MainFrm.obj
文件 65 2016-05-31 16:29 GL_MFC\bin\mt.dep
文件 1092608 2016-05-31 16:29 GL_MFC\bin\vc90.idb
文件 212992 2011-08-26 17:19 GL_MFC\bin\visualinfo.exe
目录 0 2016-05-31 16:41 GL_MFC\GL_MFC\
文件 884 2016-05-24 16:19 GL_MFC\GL_MFC.sln
文件 43008 2016-05-31 16:41 GL_MFC\GL_MFC.suo
文件 9525 2016-05-31 16:41 GL_MFC\GL_MFC\ChildView.cpp
文件 1488 2016-05-31 16:15 GL_MFC\GL_MFC\ChildView.h
目录 0 2016-05-31 16:06 GL_MFC\GL_MFC\Debug\
文件 6536 2016-05-31 16:06 GL_MFC\GL_MFC\Debug\BuildLog.htm
文件 377826 2016-05-31 16:05 GL_MFC\GL_MFC\Debug\ChildView.obj
文件 920 2016-05-31 14:48 GL_MFC\GL_MFC\Debug\GL_MFC.exe.em
文件 984 2016-05-31 14:48 GL_MFC\GL_MFC\Debug\GL_MFC.exe.em
文件 861 2016-05-31 16:05 GL_MFC\GL_MFC\Debug\GL_MFC.exe.intermediate.manifest
文件 58758 2016-05-31 15:36 GL_MFC\GL_MFC\Debug\GL_MFC.obj
文件 26673152 2016-05-31 14:47 GL_MFC\GL_MFC\Debug\GL_MFC.pch
............此处省略35个文件信息
- 上一篇:3DxWare-SDK_v2-0-4_win32
- 下一篇:智能车程序智能车资料
评论
共有 条评论