【发布时间】:2012-11-10 18:01:48
【问题描述】:
我想使用 4 次方程将数据存储在数组中。但我只想要一定范围内的积分。
我的范围需要是x=0,2*Q 到x=1,5*Q,所以循环需要从x=0,2*Q 开始,到x=1,5*Q 结束。 Q 是从文本文件中读取的变量,例如 9。
我使用这些数据在名为 Solid Edge 的 3D Cad 程序中绘制曲线。
问题是,数据不存储我如何处理它。它确实从我想要它开始,但不会在我想要它的时候结束。当y 是那个数字时,程序停止。但我只希望x 发生这种情况。
我的 Solid Edge 版本是 ST2,这个控制台应用程序需要在 ST5 上运行。 在 Solid Edge 中,我使用计算出的数组来制作曲线:
Bsplinecurve2d = BsplineCurves2d.AddByPoints(order, ArraySize, dataArray)
我正在使用 Visual Basic 2003,我知道使用更新的版本会更好。但我不能。我是工程办公室的实习生,他们只有这个 Visual Basic 的副本。 这是我的代码中没有做我想做的事情的部分:
dim x as double
dim y as double
dim i as double
Dim listofdata As New ArrayList
For i = 0.2 To 1.5 Step 0.1
x = (i * Q)
y = (((x ^ 4) * A) + ((x ^ 3) * B) + ((x ^ 2) * C) + (x * D) + E)
listofdata.Add(x)
listofdata.Add(y)
Next
Dim dataArray() As Double
dataArray = DirectCast(listofdata.ToArray(GetType(Double)), Double())
【问题讨论】:
-
代码中的文本文件在哪里?
-
这只是我代码的一部分,发布我的整个代码会有点多。文本文件由读取子字符串中数据的流读取器读取。
-
目前的情况,我不太明白你在问什么。
-
确实不是很清楚。我现在改了一点,希望现在好多了。如果不是,我下周会做得更好,因为我现在没有太多时间。
-
我也不太了解。我是你的柜台,将在 1.5 停止。 x 对停止没有任何作用,如果 Q 1 那么 x 将永远不会以 1.5 结束。你能详细说明一下吗?当 iQ =1.5 的结果时,您希望循环中断吗?