① 计算机图形学问题
1、直线的生成和2种算法:DDA算法:代码如下
void
dda(Graphics
g,int
x1,int
x2,int
y1,int
y2)
{int
k;
float
x,y,dx,dy;
k=Math.abs(x2-x1);
if(Math.abs(y2-y1)>k)
k=Math.abs(y2-y1);
dx=(float)(x2-x1)/k;
dy=(float)(y2-y1)/k;
x=(float)x1;
y=(float)y1;
for(int
i=0;i<k;i++)
drawLine((int)x+.5f,((int)y+.5f,((int)x+.5f.((int)y+.5f);
x=x+dx;
y=y+dy;
}
}
Breseham算法;
2、填充的定义和2种算法分别是
扫描线种子填充算法和递归算法
3、图像学的定义与运用
定义是研究如何在计算机环境下生成,处理和现实图形的一门学科。具体应用很广泛:像有些公司在制造汽车,飞机等时,会先画出制图,一般都会在计算机上绘制出来;等等吧
② 计算机图形学:Matlab编程画直线(DDA算法)
function DDA(x1,y1,x2,y2,color)
length =abs(x2-x1);
if abs(y2-y1)>length
length=abs(y2-y1);
end
dx=(x2-x1)/length;
dy=(y2-y1)/length;
x=x1+0.5*sign(dx);
y=y1+0.5*sign(dy);
hold on
for i=1:length
plot(round(x),round(y),'Color',color)
x=x+dx;
y=y+dy;
end
hold off
end
③ VB里用星号输出平行四边形、正三角、倒三角的程序语句
一、Private Sub Form_Click()
show
Dim m, n, i, j As Integer
m = 4 :n = 7
For i = 1 To m
For j = 1 To m - i + 1
Print " ";
Next j
For j = 1 To n
Print "*";
Next j
Next i
For i = 1 To m
For j = 1 To m - i + 1
Print " ";
Next j
For j = 1 To 2 * i - 1
Print "*";
Next j
Next i
For i = 1 To m
For j = 1 To i
Print " ";
Next j
For j = 1 To 2 * m - 2 * i + 1
Print "*";
Next j
Next i
End Sub
二、Sub Command1_Click()
Dim i As Integer
For i = 1 To 11 Step 2
For m = 11 To i Step -1
Debug.Print "*";
Next
Print Chr(10) & Space(1 + i 2);
Next
End Sub
(3)dda算法绘制平行四边形代码扩展阅读:
在VB中,注释有2种方式。
1、以Rem关键字开头,并且Rem关键字与注释内容之间要加一个空格。注释可以是单独的一行,也可以写在其他语句行的后面。如果在其他语句行后使用Rem关键字,则必须使用冒号(:)与语句隔开。
2、使用一个撇号(')来代替Rem关键字。若使用撇号,则在其他语句行使用时不必加冒号。
特征衡量
在 Visual Basic 中,可通过属性、方法和事件来说明和衡量一个对象的特征。
参考资料来源:网络-Visual Basic