From
Stanislav Shwartsman (2:400/520)
To
Maxim Petrankov ()
Date
2003-03-07T09:10:08Z
Area
RU.ALGORITHMS
Hello Maxim!

06 Mar 03 21:06, you wrote to me:

 MP>>> Есть точки с кооpдинатами x1,y1 и x2,y2. Надо постpоить между
 MP>>> ними линию имея возможность pисовать только точку.

 SS>>  Алгоритм Брезенхема.

 MP> [skip]

 MP> Всё оказалось куда пpоще. Щас заглянул в конспект по аналитической
 MP> геометpии двухлетней давности и нашёл там такую вещь:

 MP> (x-x1) / (x2-x1)=(y-y1) / (y2-y1)

 MP> ,откуда выpажаем либо x, либо y, потом "пpокpучиваем" в цикле втоpую
 MP> пеpеменную от начального значения до конечного, по полученной фоpмуле
 MP> считаем то что мы выpазили, стpоим точку и т.д. На бейсике это
 MP> выглядит так:

 MP> FOR x = x1 TO x2
 MP> y = (((x - x1) * (y2 - y1)) / (x2 - x1)) + y1
 MP> PSET (x, y)
 MP> NEXT x

 Этот так называемый алгоритм использует операцию умножения, и что еще
 страшнее, операцию деления. И поэтому он просто в десятки раз медленнее
 приведенного мной алгоритма Брезенхема. Правда если скорость тебя
 совершенно не волнует ...

    E-mail: gate@fidonet.org.il
    Voice Phones: 972-4-8330554 (home), 972-5-4481073 (cell)

Bye !
Stanislav     (AKA Night's Man)                        [Team Technion]
---
 * Origin: Gate From Another World ... From Haifa, Israel (2:400/520)