您的位置:首页 > 其它

BCB使用TImage做探地雷达图形动态显示

2014-02-16 17:52 435 查看
我所需要的动态显示不是摄像头或视频的图像显示,而是类似于任务管理器CUP、内存使用率的动态显示,在显示界面动态绘制彩图、二维/三维坐标图,以前使用过TeeChart用来数学作图,但显然不适合用在现在所作的探地雷达图形显示。

探地雷达图像显示的基本要求:

1. 探地雷达原始数据得到的灰度图、光谱图,随接收数据包从右至左移动

2. 显示当前采集波形

3. 有固定的时间距离坐标尺

4. 图形生成和显示代码执行效率要高,便于移植到ARM平台上也能顺畅运行

今天学习到TImage可以加载TStream,将雷达原始数据处理后放在内存中,再将内存中的图像显示出来,这样将会提高图形动态刷新的速度。

具体的方法:

1. 初始化时生成一张所需大小的Bitmap

2. 调用SaveToStream得到一个内存流

3. 根据Bitmap文件结构定位每个像素点所在内存地址,即TMemoryStream->Memory + 偏移地址

4. 每次接收到数据后修改TMemoryStream->Memory中的数据,然后LoadFromStream()、Repaint()刷新图像。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  动态显示
相关文章推荐