相关疑难解决方法(0)

使用GDI +使用不同颜色绘制线条的快捷方法?

我有一个动态List of Point,可以随时添加新Point.我想绘制线条以使用不同的颜色连接它们.颜色基于这些点的索引.这是代码:

    private List<Point> _points;
    private static Pen pen1 = new Pen(Color.Red, 10);
    private static Pen pen2 = new Pen(Color.Yellow, 10);
    private static Pen pen3 = new Pen(Color.Blue, 10);
    private static Pen pen4 = new Pen(Color.Green, 10);

    private void Init()
    {
        // use fixed 80 for simpicity
        _points = new List<Point>(80);

        for (int i = 0; i < 80; i++)
        {
            _points.Add(new Point(30 + i * 10, 30));
        }
    }

    private void DrawLinesNormal(PaintEventArgs e)
    {
        for (int i = …
Run Code Online (Sandbox Code Playgroud)

.net c# gdi+

4
推荐指数
1
解决办法
6814
查看次数

如何写入(Bitmap?)图像缓冲区以获得更快的GDI +显示?

使用C++和.net我想要显示一个数据流作为滚动图像.每次我得到一些新数据时,我想将其添加为新行(128x1像素)并将之前的内容滚动到一侧.

我对这个问题的第一次尝试涉及每次获得新行时渲染整个数据集.这有效,但速度太慢,所以我认为写入某种缓冲区可能更有意义(可能是位图?).问题是我无法看到我能做到这一点; Graphic对象允许你画得很开心,但我看不出一种明显的方法告诉我的控件使用一个Bitmap对象作为它的缓冲区?同样,我看不到一种绘制位图的方法,然后我可以将其写入屏幕.

这一定是可能的,但到目前为止我的google-foo已经失败了......

[编辑1]为了澄清,数据是一个频谱图.下图显示了我试图实现的那种事情:

alt text http://www.geekops.co.uk/photos/0000-00-02%20(Forum%20images)/ScrollingGraphicsAlgorithmExplanation.png

我正在绘制的数据来自浮点数组.没有什么可以限制我会得到多少,所以我只想忘记数据,因为它从情节的一侧掉落.

我目前正在从a继承System::Windows::Forms::UserControl,但如果有更好的替代品,可以切换到别的东西吗?

.net buffer drawing gdi+ bitmap

1
推荐指数
1
解决办法
2880
查看次数

标签 统计

.net ×2

gdi+ ×2

bitmap ×1

buffer ×1

c# ×1

drawing ×1