|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
10.12.2014, 02:53 | #1 |
Пользователь
Регистрация: 15.11.2014
Сообщений: 75
|
Расчет распределения точек на отрезке
Всем привет.
Столкнулся с задачей. Программа находит координаты двух точек на плоскости (алгоритм в данном случае не важен, пусть хоть рандом). Далее в фиксированный массив из TPoint (вне зависимости от длины отрезка в нем будет 32 значения) нужно занести координаты точек, лежащих на этом отрезке согласно некоторой формуле, которая на концах отрезка сосредотачивает больше точек, чем в середине. Графически это можно представить так (см. картинку). Есть глобальные переменные: Код:
Код:
Код:
Так вот два вопроса: 1. Как посчитать нужные точки на нужном отрезке? 2. Таких вычислений много, поэтому нужен шустрый алгоритм. Как оптимальнее это сделать? P.S. распределение точек в PoschitatRaspredelenieTochek можно представить в виде обратной параболы, минимум которой находится на середине отрезка. Последний раз редактировалось exyl; 10.12.2014 в 02:56. |
10.12.2014, 03:08 | #2 |
Старожил
Регистрация: 02.03.2008
Сообщений: 2,499
|
Если массив А должен вернуться как-то измененным , но надо добавить волшебное слово var
Код:
Код:
Код:
И как все-таки долны быть распределены эти 32 точки по отрезку? - случайно по какому-то закону распределения с минимумом плотности в середине, или - не случайно, а по заранее определенному порядку. |
10.12.2014, 03:23 | #3 | |
Пользователь
Регистрация: 15.11.2014
Сообщений: 75
|
Цитата:
Ну потому что в этом массиве уже будут значения, которые нужно использовать. На самом деле, естественно, возможно они в знаменатель, например, встанут. Не случайно, а по заранее определенному алгоритму (перевернутая парабола). |
|
10.12.2014, 08:01 | #4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Есть некая функция f(x) определенная на отрезке [x1,x2]. Равномерно разбиваем на k точек область значений функции на этом отрезке и получаем по этим значениям значения аргумента, которые и переносим со смещением и, если надо, с поворотом на наш отрезок. Как то в этом направлении
ADD Забыл, там еще возможно растяжение/сжатие потребуется и в таком порядке: 1. смещаем исходный отрезок к нулю 2. преобразование растяжения 3. преобразование поворота 4. преобразование смещения
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 10.12.2014 в 10:02. |
10.12.2014, 09:17 | #5 |
Форумчанин
Регистрация: 05.10.2007
Сообщений: 478
|
Как-то не укладывается - 32 точки по отрезку с точкой в центре...(((
|
10.12.2014, 17:15 | #6 | ||
Пользователь
Регистрация: 15.11.2014
Сообщений: 75
|
Цитата:
Смещение есть, но зачем поворот? Естественно, что эту задачу можно решить и через векторы, и по теореме косинусов, но что оптимальнее в плане быстродействия? Цитата:
|
||
10.12.2014, 17:22 | #7 | ||
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Цитата:
Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 10.12.2014 в 17:34. |
||
10.12.2014, 18:24 | #8 |
Форумчанин
Регистрация: 12.02.2011
Сообщений: 808
|
на самом деле очень интересно будет увидеть решение
можно попробовать через квадратное уровненные https://ru.wikipedia.org/wiki/%D0%9F...BE%D0%BB%D0%B0 простите забыл про поворот
Терпение!Дежурный экстрасенс скоро свяжется с вами!
Последний раз редактировалось Dvoishnik; 10.12.2014 в 18:51. |
10.12.2014, 18:45 | #9 |
Форумчанин
Регистрация: 05.10.2007
Сообщений: 478
|
|
10.12.2014, 20:13 | #10 |
Пользователь
Регистрация: 15.11.2014
Сообщений: 75
|
Еще раз говорю, рисунок схематичный. А если есть минимум в формуле, то это совсем не значит, что в этом минимуме будет вообще находится точка в массиве. И даже больше, ее там точно не будет, т.к. ты совершенно верно подметил, что точек четное количество.
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Задача на расчет попадания количества точек в заданную область. | Ильдар_ | Помощь студентам | 5 | 23.12.2013 02:28 |
Даны координаты точек n на плоскости. Найти номера двух точек, расстояние между которыми наибольшее. | getredtm | Помощь студентам | 3 | 01.07.2013 01:47 |
Задаnm n точек. Найти m=3,4... точек и построить на них m-угольник: количество точек , лежащих внутри и вне его мин. различается | L.Rain | Помощь студентам | 0 | 11.12.2011 22:19 |
Даны координаты n точек на плоскости. Найти номера двух точек, расстояние между которыми наибольшее. | Viwwna | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 19.11.2011 06:33 |
определить радиус и центр окружности, на кот. лежит наиб.число точек заданного на плоскости мн-ва точек) | kcю | Помощь студентам | 0 | 17.11.2009 19:50 |