gpt4 book ai didi

algorithm - 如何在边界框内绘制线条时考虑线宽

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:34:42 27 4
gpt4 key购买 nike

我正在整个边界框内绘制一组均匀间隔的水平线。

我遇到的问题是线条(当大于 1px 时)超出了我边界的顶部和底部边缘。准确地说,顶部和底部各有一半缺失。

这里有一些伪代码试图解决这个问题,但没有成功。它应该描述我正在尝试做的事情:

var halfline = linewidth / 2.;
var maxheight = boxsize.height - halfline;
var minheight = halfline;

//draw h lines
for(i = 0; i < maxlines; i++)
{
var xloc = 0;
var xfrac = i / maxlines - 1;
var yloc = (xfrac * boxsize.height) + minheight;

move_to(xloc, yloc);
line_to(boxsize.width, yloc);
}

请记住,语言在这里并不重要,重要的是如何正确偏移和缩放线条(在 for 循环中绘制)的想法。

感谢您提供任何提示...假设以下内容是安全的:

  1. 线宽以像素为单位

  2. 坐标系是基于像素的,从(0,0)到(n,n)

最佳答案

您的问题有点不清楚,但我认为这可能会有所帮助:

var availablespace = boxsize.height - linewidth;
...
var yloc = (xfrac * availablespace) + minheight;

关于algorithm - 如何在边界框内绘制线条时考虑线宽,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4074412/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com