vb.net画同心圆,c语言画同心圆
如何用VB.NET画同心圆
窗体上添加一个按钮,在该按钮的单击事件里编写代码如下:
成都创新互联专注于蠡县网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供蠡县营销型网站建设,蠡县网站制作、蠡县网页设计、蠡县网站官网定制、小程序开发服务,打造蠡县网络公司原创品牌,更为您提供蠡县网站排名全网营销落地服务。
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'声明窗体的Me.CreateGraphics对象
Dim MyGraphics As Graphics = Me.CreateGraphics
Dim Cx As Integer = 150 '圆心的X坐标
Dim Cy As Integer = 150 '圆心的Y坐标
Dim R As Integer '圆的半径
'绘制半径为R的圆
For R = 5 To 100 Step 5
MyGraphics.DrawEllipse(Pens.Black, New Rectangle(Cx - R, Cy - R, 2 * R, 2 * R))
Next
End Sub
‘用黑色画笔绘制一组同心圆,半径从5开始,增量为5。
说明:
DrawEllipse是VB.Net的Graphics类的绘制椭圆的方法;他有几种格式,上面使用的是一种;
DrawEllipse(画笔的颜色,绘制椭圆所需要的矩形区域)
其中:绘制椭圆所需要的矩形区域,如果被定义为正方形,就演变成绘制圆,定义该区域由死个数值确定,第1个数值,确定该区域左上角的X坐标,第2个数值,确定该区域左上角的Y坐标,第3个数值,确定该区域的宽度,第4个数值,确定该区域的高度。
例如1:
DrawEllipse(Pens.Black, New Rectangle(150, 150, 50, 50))
就是以圆心坐标为(100,100),绘制半径为50 的圆。其实在VB.NET中,是告诉系统在以左上角坐标(150,150),边长为50的正方形里绘制内切圆。理解了是在正方形里绘制内切圆,就可以通过数学计算,知道如何绘制了。
同理例如2:
DrawEllipse(Pens.Black, New Rectangle(150, 150, 100, 50))
就是以圆心坐标为(100,100),绘制半径为50 的圆。其实在VB.NET中,是告诉系统在以左上角坐标(150,150),长轴为100,短轴为50的内切椭圆。
用VB画出同心圆
Option Explicit
Private Sub Form_Load()
PaintOnForm Me
End Sub
Public Function PaintOnForm(f As Form)
Dim i As Integer, b As Boolean
i = f.ScaleMode
b = f.AutoRedraw
f.ScaleMode = 3
f.AutoRedraw = True
f.Circle (100, 100), 50
f.Circle (100, 100), 80
f.AutoRedraw = b
f.ScaleMode = i
f.Refresh
End Function
Public Function PaintOnPic(p As PictureBox)
Dim i As Integer, b As Boolean
i = p.ScaleMode
b = p.AutoRedraw
p.ScaleMode = 3
p.AutoRedraw = True
p.Circle (100, 100), 50
p.Circle (100, 100), 80
p.AutoRedraw = b
p.ScaleMode = i
p.Refresh
End Function
'如果在PictureBox上画就用第二个函数
VB中circle函数
Circle(1000,1000),500,8,-6,-3
1000,1000,圆心坐标
500,半径
后面分别代表起始角,终止角,长短轴比率
好吧,详细点,就把Circle方法都说一遍
在对象上画圆、椭圆或弧。
语法
object.Circle [Step] (x, y), radius, [color, start, end, aspect]
Circle 方法的语法有如下的对象限定符和部分:
部分 描述
object 可选的。 对象表达式,其值为“应用于”列表中的对象。如果object 省略,具有焦点的窗体作为object。
Step 可选的。关键字 ,指定圆、椭圆或弧的中心,它们相对于当前 object 的 CurrentX 和 CurrentY 属性提供的坐标。
(x, y) 必需的。 Single (单精度浮点数),圆、椭圆或弧的中心坐标。object 的 ScaleMode 属性决定了使用的度量单位。
radius 必需的。Single (单精度浮点数),圆、椭圆或弧的半径。 object 的 ScaleMode 属性决定了使用的度量单位。
color 可选的。Long (长整型数),圆的轮廓的 RGB 颜色。如果它被省略,则使用 ForeColor 属性值。可用 RGB 函数或 QBColor 函数指定颜色。
start, end 可选的。 Single (单精度浮点数),当弧、或部分圆或椭圆画完以后,start 和 end 指定(以弧度为单位)弧的起点和终点位置。其范围从 -2 pi 到 2 pi 。起点的缺省值是0; 终点的缺省值是2 * pi。
aspect 可选的。 Single (单精度浮点数),圆的纵横尺寸比。缺省值为 1.0,它在如何屏幕上都产生一个标准圆(非椭圆)。
说明
想要填充圆,使用圆或椭圆所属对象的 FillColor 和 FillStyle 属性。只有封闭的图形才能填充。封闭图形包括圆、椭圆、或扇形。
画部分圆或椭圆时,如果 start 为负,Circle 画一半径到 start,并将角度处理为正的;如果 end 为负,Circle 画一半径到 end,并将角度处理为正的。Circle 方法总是逆时针(正)方向绘图。
画圆、椭圆或弧时线段的粗细取决于 DrawWidth 属性值。在背景上画圆的方法取决于 DrawMode 和 DrawStyle 属性值。
画角度为 0 的扇形时,要画出一条半径(向右画一水平线段),这时给 start 规定一很小的负值,不要给 0。
.可以省略语法中间的某个参数,但不能省略分隔参数的逗号。您指定的最后一个参数后面的逗号是可以省略的。
Circle 执行时,CurrentX 和 CurrentY 属性被参数设置为中心点。
这个方法不能用在 With匛nd With 语句块中。
--------------------------------------------------------------------------------
Circle 方法示例
这个示例用Circle 方法在窗体中央画许多同心圆。要运行这个示例,将此代码放入窗体的 General 部分。按 F5 并单击窗体。
Sub Form_Click ()
Dim CX, CY, Radius, Limit ' Declare variable.
ScaleMode = 3 ' 以像素为单位。
CX = ScaleWidth / 2 ' X 位置。
CY = ScaleHeight / 2 ' Y 位置。
If CX CY Then Limit = CY Else Limit = CX
For Radius = 0 To Limit ' 半径。
Circle (CX, CY), Radius,RGB(Rnd * 255, Rnd * 255, Rnd * 255)
Next Radius
End Sub
--------------------------------------------------------------------------------
应用于:
Form 对象、Forms 集合
PictureBox 控件
PropertyPage 对象
UserControl 对象
分享文章:vb.net画同心圆,c语言画同心圆
文章来源:http://abwzjs.com/article/dsipedo.html