请问各位,如何将自定义图形在规定的矩形中显示,而不显示所超出的部分。。谢谢!

CandyCat 2001-04-28 09:01:00
在view中有一个矩形区域,我只想让所画的直线、圆显示在该区域中,而圆和直线在区域外超出的部分并不显示,该怎么办呢?谢谢啦。
...全文
291 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
brallow 2001-04-29
  • 打赏
  • 举报
回复
我告诉你吧:
在对wm_paint的消息处理中有一个ps结构变量其中有一个变量为rect类型
这一个变量中记录了需要重画的区域,你可一这样:每次受到一个wm_paint
消息了之后自己在发一个wm_paint给自己 但是在ps 中的那一个rect类型
的变量一定要设置为你所限定的那个范围,在对wm_paint的处理之前一定要
用begin...来获得hDC否则的话 还是会画到外面去的。
但是有一点:windows会自动把几个wm_paint 也就是说他回自动的把几个
wm_paint消息中的那几个矩形合成一个最大的矩形 所以你收到一个要重画
窗口的消息是一定要把窗口有效化,调用invaliadrect()函数 在发出消息
当然 还有一些逻辑上的问题要处理, 否则的话 他回一直这样画下去的
yinxingshu 2001-04-28
  • 打赏
  • 举报
回复
使用裁减,直线的裁减,圆的裁减,多边形的裁减。。。不过很麻烦,我做了:-(
还有,一般这种作图都讲求一种好的显示效果的(如果你做的是商业软件的话),所以总是先画到内存DC上(有很多好处),然后再贴过去的。
如果变动较多就使用区域吧,最方便了。不过裁减是最好的。
CandyCat 2001-04-28
  • 打赏
  • 举报
回复
没错!joke100(joke100),你说得对!谢谢!!!
fulaoxiao 2001-04-28
  • 打赏
  • 举报
回复
在你的draw 函数中处理嘛
CandyCat 2001-04-28
  • 打赏
  • 举报
回复
to joke100
我所画的直线和圆是自己所定义的类,可以将他们移动位置,改变大小。我不想让他们成为bitmap啊。
wjyasd 2001-04-28
  • 打赏
  • 举报
回复
跟上!
joke100 2001-04-28
  • 打赏
  • 举报
回复
sorry,
用区域
CRgn rgn;
rgn.CreateRectRgn(0, 0, 100, 100); // 设置矩形大小
pDC->SelectClipRgn();
...
joke100 2001-04-28
  • 打赏
  • 举报
回复
BOOL CDC::StretchBlt( int x, int y, int nWidth, int nHeight, CDC* pSrcDC, int xSrc, int ySrc, int nSrcWidth, int nSrcHeight, DWORD dwRop );


内容概要:本文围绕城市场景下无人机三维路径规划的导航变量多目标优化问题,提出了一种改进的多目标粒子群优化算法(NMOPSO),旨在应对高维、多约束条件下路径规划的复杂性。研究在Matlab平台上实现了算法仿真,通过构建精细化的城市三维环境模型,综合考虑路径长度、飞行安全性、能耗等多个优化目标,有效提升了无人机在复杂城市环境执行任务时的路径规划效率与可靠性。文系统阐述了NMOPSO算法的设计原理、实现流程及关键参数配置,并通过大量对比实验验证了该算法在收敛速度、解集多样性和Pareto前沿质量方面相较于传统多目标优化算法的显著优势; 适合人群:具备一定优化算法理论基础和Matlab编程能力的研究生、科研人员及从事无人机路径规划、智能优化算法研发的工程技术人员; 使用场景及目标:①应用于城市环境下的无人机物流配送、电力巡检、应急救援等实际任务的高效路径规划;②为高维多目标优化问题的研究与先进智能算法的改进提供高质量的参考案例,推动智能优化技术在无人系统自主决策领域的深入应用; 阅读建议:建议读者结合提供的Matlab代码进行动手实践,重点研读目标函数的数学建模、环境约束的处理机制以及算法性能评价指标的设计,以深入理解NMOPSO算法的核心创新点与工程实现细节。

16,550

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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