热门标签 | HotTags
当前位置:  开发笔记 > 开发工具 > 正文

还是这个opengl问题,有谁回答?OpenGl中如何擦除一条线?

在windowsgdi中可用pDC->SetROP2(XOR_PEN),然后再绘一次即可擦除,但在opengl中如何处理?回复人:Phourm()()信誉:100200
在windows gdi中可用pDC->SetROP2(XOR_PEN),然后再绘一次即可擦除,但在opengl中如何处理?

 回复人: Phourm() (  ) 信誉:100  2002-3-26 9:22:10  得分:50  
  glLogicOp(GL_XOR);

 回复人: dycdyc123(微笑江湖) (  ) 信誉:97  2002-3-26 9:24:21  得分:50  
  glLogicOp(GL_XOR)可以!

有两朋友说用glLogicOp(GL_XOR),但这只能用于颜色索引方式,rgba模式怎么办?

 
 

22 个解决方案

#1


OpenGL中也是再绘制一次就可以擦除啊!

#2


但在不想重画时如何擦除?就象autoCAD中的十字光标一样,每一次移动都是先擦除旧的十字线,再在新位置画十字线。(比如重画要耗时3分钟,总不能一动鼠标就让用户等3分钟吧?)

#3


考虑速度问题,如果在模型比较大的时候,还是重绘场景更快一些。我作过一个项目,就是这样处理的,没有速度或其他方面的问题。

#4


再绘一次可以

#5


有一种方法可以,就是把每种图形封装起来,以后想删除,直接调用封装好的delete函数就可以了!

#6


重绘吧。

#7


怎么都是重绘,重绘,效率太低!有其他办法吗?
 

#8


重绘效率很低吗?没有吧!再说如果不是配置很差的机器,考虑效率有必要吗?

#9


大家有其他办法吗?我的模型很大,几千万个三角形,重画要耗时3分钟,总不能为了擦去一个十字光标就重画这几千万个三角形,一动鼠标就让用户等3分钟吧?

#10


我们是做GIS的,模型更大,也是用OpenGL,但是设计的好还是可以解决的!

#11


实现一个功能可能有多种方法,为什么不多考虑几种,选择最优或可接受的方法呢?况且在不同的环境或应用中,可能采取不同的方法。请大家各出妙招!
分数不是问题!!

#12


有没有搞错喔,你把场景画到一个内存DC里面,然后显示时先显示内存DC再在上面绘你的光标,ok?

#13


显示内存DC不还是要重绘吗!
我也遇到你的这种情况,不过我想一定有办法搞定的!
1)找到一个删除的方法;
2)能否把三角形少画一点而解决问题,这样就可以用重绘;
3)光标用另外的方法输出,不和你画三角形的用同样的方式输出;
我以前也遇到你这种情况,但我的不要画多少,所以用的重绘!要我那时候搞懂了现在就可以吹了!:(

#14


To kevin_qing: 场景不是静态的,从开始绘到结束要3分钟,在绘的过程中,
要求可以移动横贯场景的十字光标,所以不能如你所说:
把场景画到一个内存DC里面,然后显示时先显示内存DC再在上面绘你的光标。
有何法子?请大家各出妙招!

#15


请问你程序绘图时怎么个流程,难道没用显示列表吗?

#16


几千万个三角形,双缓冲,每画10个三角形交换缓冲显示出来,(在画的过程中,要可以移动横贯场景的十字光标,所以模仿gdi中pDC->SetROP2(XOR_PEN),然后再绘一次即可擦除成为关键。)
没有用显示列表。

#17


不用全部画的,就是设成 XOR_PEN 再在你原来的地方画一次,不就没了,。再设回来。再在你新的地方设一次不就可以了吗!

#18


glLogicOp(GL_XOR),但这只能用于颜色索引方式,rgba模式怎么办?

#19


To   Robin_Hood_POT(令狐冲)  
  有一种方法可以,就是把每种图形封装起来,以后想删除,直接调用封装
好的delete函数就可以了!

  请问有这种函数吗?

 
 

#20


关注

#21


study

#22


没有其他法子吗?
我再开第三贴,请大家各出妙招!

推荐阅读
  • 本文探讨了如何通过最小生成树(MST)来计算严格次小生成树。在处理过程中,需特别注意所有边权重相等的情况,以避免错误。我们首先构建最小生成树,然后枚举每条非树边,检查其是否能形成更优的次小生成树。 ... [详细]
  • 本文详细介绍了IBM DB2数据库在大型应用系统中的应用,强调其卓越的可扩展性和多环境支持能力。文章深入分析了DB2在数据利用性、完整性、安全性和恢复性方面的优势,并提供了优化建议以提升其在不同规模应用程序中的表现。 ... [详细]
  • Windows服务与数据库交互问题解析
    本文探讨了在Windows 10(64位)环境下开发的Windows服务,旨在定期向本地MS SQL Server (v.11)插入记录。尽管服务已成功安装并运行,但记录并未正确插入。我们将详细分析可能的原因及解决方案。 ... [详细]
  • 深入理解 Oracle 存储函数:计算员工年收入
    本文介绍如何使用 Oracle 存储函数查询特定员工的年收入。我们将详细解释存储函数的创建过程,并提供完整的代码示例。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • 在 Windows 10 中,F1 至 F12 键默认设置为快捷功能键。本文将介绍几种有效方法来禁用这些快捷键,并恢复其标准功能键的作用。请注意,部分笔记本电脑的快捷键可能无法完全关闭。 ... [详细]
  • 本文总结了2018年的关键成就,包括职业变动、购车、考取驾照等重要事件,并分享了读书、工作、家庭和朋友方面的感悟。同时,展望2019年,制定了健康、软实力提升和技术学习的具体目标。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 在计算机技术的学习道路上,51CTO学院以其专业性和专注度给我留下了深刻印象。从2012年接触计算机到2014年开始系统学习网络技术和安全领域,51CTO学院始终是我信赖的学习平台。 ... [详细]
  • CSS 布局:液态三栏混合宽度布局
    本文介绍了如何使用 CSS 实现液态的三栏布局,其中各栏具有不同的宽度设置。通过调整容器和内容区域的属性,可以实现灵活且响应式的网页设计。 ... [详细]
  • Linux 系统启动故障排除指南:MBR 和 GRUB 问题
    本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ... [详细]
  • 本文介绍了如何使用jQuery根据元素的类型(如复选框)和标签名(如段落)来获取DOM对象。这有助于更高效地操作网页中的特定元素。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
author-avatar
龍的闖人_399_664
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有