首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bresenham算法

Bresenham算法
EN

Stack Overflow用户
提问于 2013-08-20 11:28:22
回答 1查看 1.1K关注 0票数 1

如何找到绘制抛物线、正弦曲线、钟形曲线等不同函数的决策参数?请告诉我为什么我们有时要乘以常数的方法?例如

  1. 在椭圆的情况下,p= a^2(d1 - d2),p= b^2(d1 - d2)。 分别其中a,b常数
  2. 在线性情况下,p=延迟税(d1- d2),其中p是决策参数d1,d2是 距离,延迟税是常数,等于xend - xstart。

为什么不仅以(d1 -d2)作为参数

EN

回答 1

Stack Overflow用户

发布于 2013-08-20 23:05:15

如OP所述,Bresenham的算法有点错误,但我假设如下。

如果没有对决策参数进行初始化,那么决策参数可以通过某些常数来调整d1 - d2,而不是按常量进行缩放。通常情况下,这个常量不能扩展它。

代码语言:javascript
复制
// code from http://en.wikipedia.org/wiki/Bresenham's_line_algorithm
plotLine(x0,y0, x1,y1)
  dx=x1-x0
  dy=y1-y0

  D = 2*dy - dx   // Not scalable by 2
  plot(x0,y0)
  y=y0

  for x from x0+1 to x1
    if D > 0
      y = y+1
      plot(x,y)
      D = D + (2*dy-2*dx)  // Scalable by 2
    else
      plot(x,y)
      D = D + (2*dy)  // Scalable by 2
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18333858

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档