更改每一行的颜色

时间:2012-11-30 14:26:11

标签: vb.net

我有一个控制台应用程序,可以在3D CAD程序中绘制线条。现在为了使这更清楚,我想用不同颜色改变这些线。

我的代码从文本文件中读取变量并从中计算数据,然后根据此计算数据生成一行。 对于包含数据的文本文件中的每一行,都会重复此过程。

现在我希望visual basic能够在绘制新线条的同时更改颜色,因此我会得到不同颜色的线条。

我尝试使用For .. To .. Step方法,但这没有用。我也尝试使用我的文本文件中的变量(这些是不同的,因此当读取新行时,RGB代码会发生变化),但这只会给我带来很多蓝色。

有什么建议吗?

编辑:

这是我用来绘制曲线的方法,每当有新数据的行时,RGB代码必须改变:

' Creating a Curve2d object by using the above defined points
                    objLineString = objLineStrings.AddByPoints(PointCount:=points, points:=dataArray)
                    objGeometricStyle = objLineString.Style
                    color = objGeometricStyle.LinearColor
                    objGeometricStyle.LinearColor = RGB(0,0,0)

1 个答案:

答案 0 :(得分:1)

怎么样:

Dim rand As New Random() ' Used to generate random numbers
Dim colors(100) as Integer

' Create the colors
For i as Integer = 0 to 100 Step 1
    colors(i) = RGB(rand.Next(256), rand.Next(256), rand.Next(256))
Next

For i As Integer = 0 To 100 Step 1 ' Adjust to your needs
    ' Creating a Curve2d object by using the above defined points
    objLineString = objLineStrings.AddByPoints(PointCount:=points, points:=dataArray)
    objGeometricStyle = objLineString.Style
    color = objGeometricStyle.LinearColor
    objGeometricStyle.LinearColor = colors(i Mod 100) ' Mod returns the remainder of i / 100, so it's always less than 100.
Next

这并不总能给你“漂亮”的颜色,但每行都会有所不同。如果要控制生成的颜色,可以设置预定义颜色的数组,并在迭代中使用它们。