设计了段程序:
procedure TForm1.Button1Click(Sender: TObject); begin
WITH image1.Canvas DO
BEGIN
Pen.Style := pssolid;
pen.color:=clred;
FillRect(image1.Canvas.ClipRect);
moveto(0,0);
lineto(strtoint(edit1.text), strtoint(edit2.text));
LineTo(strtoint(edit3.text), strtoint(edit4.text));
LineTo(strtoint(edit5.text), strtoint(edit6.text));
end;
end;可是运行的时候发现坐标的原点在左上角,而且属于坐标轴系的右下脚那快,这个怎么作才能实现坐标轴系的第一块的效果啊?
还有问下怎么才能实现自由调整坐标轴刻度大小?
procedure TForm1.Button1Click(Sender: TObject); begin
WITH image1.Canvas DO
BEGIN
Pen.Style := pssolid;
pen.color:=clred;
FillRect(image1.Canvas.ClipRect);
moveto(0,0);
lineto(strtoint(edit1.text), strtoint(edit2.text));
LineTo(strtoint(edit3.text), strtoint(edit4.text));
LineTo(strtoint(edit5.text), strtoint(edit6.text));
end;
end;可是运行的时候发现坐标的原点在左上角,而且属于坐标轴系的右下脚那快,这个怎么作才能实现坐标轴系的第一块的效果啊?
还有问下怎么才能实现自由调整坐标轴刻度大小?
2、刻度仅仅是一个数学概念,你可以自己定义刻度的规则,但最后都必须变换成实际的屏幕刻度。你的这个问题更多的是坐标平移的问题。
第二个还是有点问题,坐标平移是什么?难道是(X,Y)=(X1/A,(-Y1+ScreenHeight)/A)?