65.9K
CodeProject 正在变化。 阅读更多。
Home

获取抛物线的点

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.30/5 (6投票s)

2009年1月26日

CPOL

1分钟阅读

viewsIcon

27165

downloadIcon

494

获取绘制抛物线所需的所有点。

ParabollaSourceC_

介绍 

最近,我有很多关于绘制抛物线的代数作业。为所有问题重复相同的过程有点烦人,所以我决定制作一个工具来提供我绘制图形所需的所有值。

  • 顶点:线条相交的点
  • 对称轴:将穿过抛物线中点的直线,在X轴上
  • Y轴截距:Y轴被截断的点,X = 0
  • Y轴反射:绘制抛物线的另一个点

代码

这段代码非常基础,处理整数和小数,所以我将稍微解释一下。

decimal A = int.Parse(txt1.Text);
decimal B = int.Parse(txt2.Text);
decimal C = int.Parse(txt3.Text);
decimal X;
decimal Y;
decimal X_rf;
//Axis Of Sym Op                
decimal Axis_Sym = -1 * B / (2 * A);
axis_sym.Text = Axis_Sym.ToString();
X = Axis_Sym;
//Vertex Op
Y = A * (X * X) + B * X + C;
vertex.Text = X + " , " + Y;
//Y-Intercept Op
y_int.Text = X + " , " + C;
//Y_Ref Op              
X_rf = X + X;
y_ref.Text = X_rf + " , " + C; 

代码从表单中的3个文本框获取string值,使用Int.Parse(String)string值转换为decimal。一旦我们得到十进制值(我使用decimal以防所有操作的结果都是decimal),我将描述获取所需点的公式。

  • 对称轴:这里我们找到 X = -(B) / 2 * A
  • 顶点:我们需要得到 Y,所以 Y = A(X)2 + B(X) + C,所以顶点 = (X, Y),坐标平面上的一个点。
  • Y轴截距:X = 0的点,直线与Y轴相交 = (0, C)
  • Y轴反射:绘制我们线条的另一个点 = ( (X - X), C )

就这样。我们准备好绘制所有点,很快我会添加实际在坐标平面上绘制点的代码。

关注点

这个程序是由一个14岁的孩子制作的。这个工具非常有用。

历史

  • 2009 年 1 月 26 日:初始发布
© . All rights reserved.