Просмотр полной версии : Точки, проведенные по линии
Есть две точки. Между ними проведена линия. На этой линии надо поставить 20 точек с одинаковым расстоянием между собой. Вопрос: как зная только начальные две точки проложить по линии остальные 20?
Division
02.01.2009, 15:05
Векторную алгебру проходили? Тогда в чём дело?
Имеем две точки p1,p2. Имеем вектор v = p2-p1. Делим его на 20 частей. v = v/20.
Потом в цикле делаем так:
Псевдокод:
for (i=0; i<20; i++) {
SetPoint(p1+v*i)
}
Ага, здорово, получили длинну куска отрезка. А как узнать x и y очередной точки?
Division
02.01.2009, 15:10
В функцию из моего псевдокода SetPoint передаются последовательно координаты всех двадцати точек.
То есть:
point._x = x0+ ((p2._x - p1._x)/20)*i;
point._y = y0+ ((p2._y - p1._y)/20)*i;
Я правильно понял?
Добавлено через 2 часа 33 минуты
Проблему сам решил.
for (i=0; i<20; i++) {
(p1 - h)/20 * i;
(p2 - h)/20 * i;
}
http://www.flazher.narod.ru/primer.jpg
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.