关于IDirectDrawPalette::SetEntries函数

dongqings001 2009-03-25 12:55:34
IDirectDrawPalette::SetEntries书上说该函数来改变 DirectDrawPalette 对象的入口的,什么是DirectDrawPalette 入口呀,是颜色的索引值么?还用每个参数的作用和设置,详细点,谢谢了
...全文
264 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
qingmeisu2009 2010-09-20
  • 打赏
  • 举报
回复
留着以后看
dongqings001 2009-03-31
  • 打赏
  • 举报
回复
还是不太明白,我知道当载入一个位图时要用SetEntries这个函数把该位图的调色版信息更新一下,但还是不明白DirectDrawPalette 入口,打个比方举个例子说说好么,谢谢了
shhpj11 2009-03-26
  • 打赏
  • 举报
回复
ding
hndth 2009-03-26
  • 打赏
  • 举报
回复
ding
zzz822163 2009-03-26
  • 打赏
  • 举报
回复
网上有个directdraw中文手册,可以去弄来看看
zzz822163 2009-03-26
  • 打赏
  • 举报
回复
What Are Palettes?
基于调色板的页面需要调色板才能真正有意义的显示出来.一个基于调色板的页面,通常也被称作一个"色彩索引"页面,仅仅是一些数字的集合,其中的每一个数字代表一个像素.每一个数字的值都对应于一个色彩表(color table)中的项,这个表告诉 DirectDraw 对这个像素使用什么样的颜色. DirectDrawPalette 对象,通常简称为"调色板",给你提供了一个及其方便的途径来管理调色板.那些使用16位或更高位像素格式的页面并不使用调色板.

提供 DirectDrawPalette 对象是为了拥有直接操作 16 和 256 色调色板的特性(一个 DirectDrawPalette 对象通常与一个 DirectDrawSurface 对象相依属).一个 DirectDrawPalette 对象保留了一个从 0 到 255 的 256 色调色板的入口;它不保留 16 色调色板的任何入口.它允许直接对色彩表(color table)的直接操作.一个色彩表是一系列颜色值(典型的是 RGB 三个一组).这个表可以包含 16 或 24 位的 RGB 色彩入口,代表与每一个索引相对应的颜色.对 16 色调色板来说,色彩表可以包含另一个 256 色调色板的索引.调色板被材质图,离屏页面(off-screen surfaces),覆盖页面(overlay surfaces)所支持,它们并不需要与主页面(primary surface)拥有同样的调色板.

你可以通过调用 IDirectDraw4::CreatePalette 函数来创建一个调色板.该函数将返回一个指向 IdirectDrawPalette 接口的调色板对象的指针.你可以使用该接口的函数来操作调色板入口,获得关于调色板对象能力的信息,或初始化该对象(如果你用 CoCreateInstance 函数创建它).

你可以通过调用 IDirectDrawSurface4::SetPalette 函数将一个调色板连接到一个页面上.一个调色板可以被连接到若干个页面.

DirectDrawPalette 对象为一个 8 位的调色板保留了从 0 到 255 的入口,除非你指定了 DDPCAPS_ALLOW256 标志请求所有这些入口都可以被你所用.

通过调用 IDirectDrawPalette::GetEntries, 应用程序可以获得这些表的入口,并且可以通过 IDirectDrawPalette::SetEntries 改变这些入口.这个函数有一个 dwFlags 参数,指定对于调色板的改动是否立即生效.

IDirectDrawPalette::SetEntries
该函数立即改变一个 DirectDrawPalette 对象的调色板入口。

HRESULT SetEntries(
DWORD dwFlags,
DWORD dwStartingEntry,
DWORD dwCount,
LPPALETTEENTRY lpEntries
);

参数
dwFlags
该参数目前未用,必须设为0。
dwStartingEntry
要改变的第一个调色板入口。
dwCount
要改变的调色板入口个数。
lpEntries
调色板入口的地址。如果给调色板设置了 DDPCAPS_8BITENTRIES 标志(为索引调色板),则每个入口为1字节,其余类型调色板的每个入口为4字节。其内容为颜色值的描述。
dongqings001 2009-03-25
  • 打赏
  • 举报
回复
这个问题这么难呀,没人会????
内容概要:本文围绕“空地多无人平台协同路径规划技术”的论文复现展开,重点介绍了基于Matlab的多无人机与地面无人平台协同路径规划的算法实现与仿真研究。研究系统性地整合了无人机三维路径规划、动态避障、多机协同、任务分配及防撞机制等核心技术,结合智能优化算法(如遗传算法、粒子群算法、灰狼优化算法等)与经典路径规划模型(如Dubins路径、A*、RRT等),在复杂威胁环境下实现了高效、安全的协同路径规划。文中提供了完整的Matlab代码支持,便于科研人员进行算法验证、性能对比与二次开发,并强调通过复现高水平学术论文(如EI、SCI期刊及硕博论文)深入掌握该领域的前沿方法与技术路线。; 适合人群:具备一定Matlab编程基础,从事无人机系统、自动化控制、人工智能、路径规划等相关领域研究的研究生、科研人员及工程技术人员,尤其适用于正在开展科研项目、撰写学位论文或希望提升算法实践能力的研究者。; 使用场景及目标:① 复现并深入理解空地协同路径规划领域的高水平论文算法;② 掌握Matlab在多智能体路径规划中的建模、仿真与可视化方法;③ 应用于科研课题、毕业设计、项目申报及算法创新实践中,提升研究的技术深度与工程可行性。; 阅读建议:建议结合文中提供的网盘资源(含完整代码、仿真模型及参考文献资料)同步学习,优先选择与自身研究方向契合的案例进行复现,注重算法原理与代码实现之间的映射关系,并在掌握基础方案后尝试进行参数调优、算法融合或引入新约束条件以实现改进与创新。

19,464

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧