language-agnostic - 矩形的宽度

标签 language-agnostic graphics drawing pixel

听起来是一个非常简单的问题,但我经常对此感到困惑。请指出我哪里错了。

左=0
右 = 10
width = right - left = 10(android 使用)

现在,如果我们在屏幕上绘制这个矩形,它会从第 0 个像素到第 10 个像素,这意味着它总共占据 11 个像素,因此它的宽度为 11。

右应为左 + 宽度 - 1 => 宽度 = 右 - 左 + 1 所以当左 = 0,右 = 9 时,我们就很高兴。
尝试用左=右绘制一个矩形,两者都应该为0。我已经忘记了,但在使用QT时,我发现了一个问题。对于 1x1 矩形,它返回宽度为 0。

我认为对于遵循前一种方法的框架,假设所有绘图函数中都包含 left 且排除 right,以便只有pixels = width 受到影响?

最佳答案

在光栅(例如像素屏幕)上绘制线条时,常见的约定是整数坐标位于像素中心,而不是角点。

看看Bresenham's line algorithm .

关于language-agnostic - 矩形的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4616328/

相关文章:

java - 带图形的循环 - 生成图形时的错误

ipad - 如何将绘图区域限制在一个盒子内?

ios - iOS性能问题的绘图应用程序

javascript - 在 Canvas 标签上绘制箭头

math - 相对于相机方向在 2D 中移动的计算是什么?

algorithm - 博弈论 : MEX rule and Nimbers

language-agnostic - 什么是不变量?

language-agnostic - 什么是代码型,它有什么用?

安卓:BitmapFactory.decodeResource 返回 null

c - 在 openGL 中使用 glGenBuffers 时出现空白屏幕