C# 4.0 如何画一条上下都有的曲线?
我使用下面的代码创建了3个点,将它们绘制成位图,然后将位图绘制到主窗体,但是它似乎总是在点2之前绘制点3,因为Y坐标低于点2。有没有办法克服这个问题,因为我需要一条上下弯曲的曲线,而不仅仅是向上弯曲C# 4.0 如何画一条上下都有的曲线?,c#-4.0,drawing,C# 4.0,Drawing,我使用下面的代码创建了3个点,将它们绘制成位图,然后将位图绘制到主窗体,但是它似乎总是在点2之前绘制点3,因为Y坐标低于点2。有没有办法克服这个问题,因为我需要一条上下弯曲的曲线,而不仅仅是向上弯曲 Bitmap bit = new Bitmap(490, 490); Graphics g = Graphics.FromImage(bit); Graphics form = this.CreateGraphics();
Bitmap bit = new Bitmap(490, 490);
Graphics g = Graphics.FromImage(bit);
Graphics form = this.CreateGraphics();
pntPoints[0] = this.pictureBox1.Location;
pntPoints[1] = new Point(100,300);
pntPoints[2] = new Point(200, 150);
g.DrawCurve(p, pntPoints);
form.DrawImage(bit, 0, 5);
bit.Dispose();
g.Dispose();
我建议您加入一个调试函数,该函数将标记和标识这些点本身,以便您可以准确地看到它们所在的位置。颜色不好的像素、点的索引和坐标一起将帮助您确定要去哪里
现在,我想知道,这两个点真的应该是绝对的,还是应该是相对于第一个点的?点3的Y坐标不是更低,而是更高。0;图形的0点位于左上角,Y值从上到下而不是从下到上增加。所以一个0点;100将大于0;在结果图像上显示200
如果你想要一条先上后下的曲线,你应该把你的第一个点放在0;489,你的第二个分数是100分、190分,第三个分数是200分、340分。谢谢你的回答,我发现了我的错误,所有的分数都是从表格的左上角,而不是左下角得出的,所以我的基础都不正确:|