VC++环境下单文档SDI与OpenGL多视图分割窗口的实现-类似3DMAX的主界面

本文主要讲述如何在VC++环境下实现单文档SDI与OpenGL多视图分割窗口,最终的界面类似3DMAX的主界面。首先给出我实现的效果图:

  整个实现过程网络上有很多零散的博文,请各位自行搜索,在基于对话框、单文档或多文档下实现多视图分割窗口的原理是一致的。本文检索了众多相关论文,发现了几篇写的非常细致的论文。在此向相关作者表示感谢。下面给出龚勋的论文原文,大家可以仔细阅读和学习。相信一定能够做出来想要的效果的。但是文中对于全局变量的定义和初始化在VC++2015环境下编译不通过。经过排查,发现这些全局变量在定义的时候不用初始化即可。即论文中下面的代码:

HGLRC g_pBLRC=NULL;//左下RC
HGLRC g_pBRRC=NULL;//右下RC
HGLRC g_pTLRC=NULL;//左上RC
HGLRC g_pTRRC=NULL;//右上RC
CDC*g_pBLDC=NULL;//左下DC
CDC*g_pBRDC=NULL;//右下DC
CDC*g_pTLDC=NULL;//左上DC
CDC*g_pTRDC=NULL;//右上DC

应该修改为:

HGLRC g_pBLRC;//左下RC
HGLRC g_pBRRC;//右下RC
HGLRC g_pTLRC;//左上RC
HGLRC g_pTRRC;//右上RC
CDC*g_pBLDC;//左下DC
CDC*g_pBRDC;//右下DC
CDC*g_pTLDC;//左上DC
CDC*g_pTRDC;//右上DC

在VC++2015环境下即可编译通过,链接和执行都可以正常通过。关于外部全局变量的使用可以参考VC++定义全局变量及extern用法

参考论文下载:VC++和OpenGL多视图分割窗口设计与实现参考论文

实例源码下载:

1、RSQuickLook-MFC SD+OpenGL多分割窗口渲染框架-VC++2015-20180429I

2、MFC和OpenGL的多文档MDI分割窗口的实现

3、VCPP

4、glbase

原文地址:https://www.cnblogs.com/rainbow70626/p/8973354.html

时间: 2024-10-17 17:01:20

VC++环境下单文档SDI与OpenGL多视图分割窗口的实现-类似3DMAX的主界面的相关文章

在某公司时的java开发环境配置文档

1 开发环境配置 1.1.  MyEclipse 配置 1.MyEclipse下载地址:\\server\共享文件\backup\MyEclipse9.0 2.修改工作空间编码为UTF-8,如下图 3.注释配置 类注释配置:如下图 方法注释:如下图 2. 代码书写规范 2.1. Action 所有action类必须继承com.xx.util.BaseAction类,并且加上@Controller注解:对于service层注入,同意在set方法上写@Resource注解.例如 @Controlle

环境安装文档(for Ubuntu)

这个文档的目标是:各位小伙伴通过这个文档,可以在一台全新的 Ubuntu 电脑上搭建平常开发使用的环境,主要包含 Node.js, git 和 编辑器部分. 这是针对 Ubuntu 系统的安装文档,Windows 文档点击这里. git 和 git GUI git 是一个版本控制工具,我们使用 coding.net 存放 git 的远程仓库. git 已有 git? 在 bash 中查看 git 版本,建议使用 2.10 以后的 git (Windows). $ git --version 安装

VC操作WORD文档总结

一.写在开头 最近研究word文档的解析技术,我本身是VC的忠实用户,看到C#里面操作WORD这么舒服,同时也看到单位有一些需求,就想尝试一下,结果没想到里面的技术点真不少,同时网络上的共享资料很多,但是很多就是起了一个头没有完整的资料,因此在此记录一下,首先感谢怪兽哥哥(开源了了IOCP一整套开源库的家伙还有很多隐藏技能大家可以关注他).骨头哥(不少好资料).savageII哥(大牛)这些网友他们很有共享精神.废话不说了开始正题. 二.环境搭建 我用的VC2010,其实在VC6.0以上的版本设

环境搭建文档——Windows下的Python3环境搭建

前言 背景介绍: 自己用Python开发了一些安卓性能自动化测试的脚本, 但是想要运行这些脚本的话, 本地需要Python的环境. 测试组的同事基本都没有安装Python环境, 于是乎, 我就想直接在网上找一篇Python环境搭建的文章, 但是没有找到让我觉得简洁又满意的搭建文档,所以我就直接用虚拟机的环境去记录一次Python环境的搭建文档 说明: 此次搭建的是Windows下的Python3的环境, Python2的环境应该也可以参照这篇文章(建议大家使用Python3的环境, Python

OCP 11G 实验环境安装文档 ( RedHat5.5 + Oracle11g )

RedHat5.5 linux下Oracle11g软件安装 一.配置虚拟机 为了创建和配置虚拟机,你需要添加硬件设备如磁盘和cpu,在你开始安装之前,创建一个windows目录作为存放虚拟机的目录 目录不一定是E:\盘,找一个自己磁盘空间比较大的硬盘就可以. E:\>mkdir stu1(创建目录) 双击桌面上的虚拟机工作站图标以打开虚拟机 1.      Press CTRL-N to create a new virtual machine. 2.      New Virtual Mach

各种Java项目环境搭建-文档引用汇总记录

springmvc环境搭建 1.如何用Maven创建web项目(具体步骤) 2.springmvc环境搭建,一步一步超简单

openvpn生产环境部署文档

1.环境: cat/etc/redhat-release CentOS release 6.8(Final) uname -a Linuxnfs_server_177 2.6.32-642.4.2.el6.x86_64 #1 SMP Tue Aug 23 19:58:13 UTC 2016x86_64 x86_64 x86_64 GNU/Linux ntpdatepool.ntp.org 2.安装软件 lzo-2.06.tar.gz压缩模块 openvpn-2.2.2.tar.gz 2.1安装l

11g ADG环境实施文档-1204

11g adg 环境搭建实施手册-1204 2017年8月30日 9:16 s 11g adg 环境搭建实施手册-0824 2017年8月24日 10:18     ################################################################ 简介   从11g 开始oracle提供了一个新功能Active Database Duplication for A standby database来创建配置物理standby 数据库. Active

Linux上搭建OA环境帮助文档

目录 在linux中搭建OA环境 任何一个环境的搭建都是基于一台干净无毒, 符合最低配置的计算机或者虚拟机. 全新的环境,第一件事是检查硬件环境,适不适合搭建该OA环境象. 一.  查看linux系统发行版本 两种命令方法: $ cat /etc/issue $ cat /etc/redhat-release 发行版本为linux 5.4 二.查看 cpu系统 $ top (按数字键1,2,3去切换各个cpu的情况,如果只有1个cpu,就表示单核) 查看剩余内存大小,有个公式: mem中的fre