Java-java中如何通过setPixel绘制点和直线?

发布于 2016-10-20 09:26:44 字数 0 浏览 1233 评论 1

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浮生未歇 2016-12-22 10:54:12

setPixel 就是一个绘制点的函数。
至于绘制直线,可以这样做:

void drawLine( int x1, int y1, int x2, int y2 )
{
if ( x1 > x2 )
{
int tmp = x1;
x1 = x2;
x2 = tmp;
}
if ( y1 > y2 )
{
int tmp = y1;
y1 = y2;
y2 = tmp;
}
int width = x2 - x1;
int height = y2 - y1;

// 根据 x / y == width / height ,
// 可以知道,当假定 x 为 dx 时,那么 y = (height / width) * dx;

for ( int dx = 0; dx < width; ++dx )
{
float dyF = ( (float)height / (float)width ) * (float)dx;
int dy = int(dyF + 0.5);
setPixel( x1 + dx , y1 + dy ); // 绘制点
}
}

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文