🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fj.lang.c
Article #354

Re: 2点間の距離を求める

#354
From: Takeshi Shigihara
Date: Mon, 20 Apr 1998 00:00
26 lines
1886 bytes
Ken-ichiro Ueda wrote:
> 
> アルゴリズム本などに、ブレゼンハムという人が考えたDDAという
> アルゴリズムがあると思いますので、探してみてください。書籍では
> Cによるアルゴリズム辞典だかという本にのっていたはずです。
> 
> DDA(Digital Differential Analiser)ってのはつまるところ、傾きによ
> って2点間に線を引いていくのですが、XとYの少数部を整数演算に
> よって求めて、0.5で四捨五入していました。これで2点間にドットを
> 置いていき(描画はしなくてよい)、ドットの数がラインの長さという事
> になります。実は手元の書籍のどれかにあったと思うのですが、探す
> のが面倒なので書籍を当たってください。それくらいの努力はしても
> いいですよね。

DDAを利用する方法は、ちと疑問に思います。
直線を引くために最適化されたDDAでは、XもしくはYの長いほうの
距離に対して、それが1つ変化した時に短い方の変数が1変化するかどう
かを調べることになりかねません。つまり、ドットの数は、長いほうの
距離となってしまう恐れがあります。

平方根のニュートン法などを利用して、計算したほうが良いと思います。

----- Takeshi  Shigihara
      Office   cygnus@masternet.or.jp
      Home     cygnus@po.jah.ne.jp -----
Technical Details
Message-ID: <353ABF24.9BB9C609@masternet.or.jp>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <6hdaib$chb$1@news1.kcom.ne.jp> <353A4B04.7439F598@pluto.dti.ne.jp>

Show Full Headers
Complete Article Headers
X-Google-Language: Japanese,JIS
X-Google-Thread: 106434,5e6daae5d04bdee4
X-Google-Attributes: gid106434,public
From: Takeshi Shigihara <cygnus@masternet.or.jp>
Subject: Re: 2点間の距離を求める
Date: 1998/04/20
Message-ID: <353ABF24.9BB9C609@masternet.or.jp>
X-Deja-AN: 345824391
Content-Transfer-Encoding: 7bit
References: <6hdaib$chb$1@news1.kcom.ne.jp> <353A4B04.7439F598@pluto.dti.ne.jp>
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-2022-jp
X-Complaints-To: ap-net@asahi-net.or.jp
X-Trace: skytrain.asahi-net.or.jp 893042725 35758 (None) 202.224.45.147
Organization: MasterNet
Newsgroups: fj.lang.c