Language agnostic 矩形宽度

Language agnostic 矩形宽度,language-agnostic,graphics,drawing,pixel,Language Agnostic,Graphics,Drawing,Pixel,听起来这是一个很简单的问题,但我经常被这个问题弄糊涂。请抓住我错的地方 左=0 右=10 宽度=右-左=10(android使用) 现在,如果我们在屏幕上画这个矩形,它从第0个像素到第10个像素,这意味着它总共占据了11个像素,所以它的宽度是11 right应该是left+width-1=>width=right-left+1 所以当左=0,右=9,我们就幸福了。 尝试绘制一个左=右的矩形,两者都应为0。我已经忘记了,但是在使用QT的时候,我发现了一个问题。它将1x1矩形的宽度返回为0 我认为对

听起来这是一个很简单的问题,但我经常被这个问题弄糊涂。请抓住我错的地方

左=0
右=10
宽度=右-左=10(android使用)

现在,如果我们在屏幕上画这个矩形,它从第0个像素到第10个像素,这意味着它总共占据了11个像素,所以它的宽度是11

right应该是left+width-1=>width=right-left+1 所以当左=0,右=9,我们就幸福了。
尝试绘制一个左=右的矩形,两者都应为0。我已经忘记了,但是在使用QT的时候,我发现了一个问题。它将1x1矩形的宽度返回为0


我认为对于采用前一种方法的框架,假设在所有绘图函数中都包含左侧,而排除右侧,因此只有像素=宽度受到影响?

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


请看。

在Paul S.Heckbert的文章中可以找到一个非常好的像素坐标定义


不幸的是,这听起来像是Android给了你一个非标准的定义。

你用“编程语言”标记了它,我想这是与Android相关的?不。这只是不同框架提供的绘图函数中矩形宽度的一般问题。android和QT就是一个例子。