LINUX.ORG.RU

Аппроксимация сферы регулярной/почти регулярной треугольной сеткой.

 ,


2

4

Собственно как?

Сама аппроксимация мне не принципиальна, но нужно взаимнооднозначно отобразить эту сетку на сетку из равносторонних треугольников на плоскости при этом желательно чтобы на сфере треугольники были как можно ближе к равносторонним. Ну и число точек - сотни тысяч/миллионы.

★★★★★

А что насчет проекций сферы на плоскость на примере земного шара? Нарисуй свои ровные треугольники на плоскости и проецируй их вершины на шар. Не пойдет?

deep-purple ★★★★★
()
Ответ на: комментарий от deep-purple

Эм не очень понял о чем речь. На плоскости сетка неограниченная, а на сфере придется как-то стыковать края. Собственно в том и проблема.

ya-betmen ★★★★★
() автор топика
Ответ на: комментарий от ya-betmen

Ничего не придется - к полюсам на плоскости бОльшая площадь, чем на сфере. Оно ж как резиновое

deep-purple ★★★★★
()
Ответ на: комментарий от ya-betmen

Иди к википедикам - список картографических проекций.

deep-purple ★★★★★
()

взаимнооднозначно отобразить эту сетку на сетку из равносторонних треугольников на плоскости

ты же понимаешь, что все твои треугольники, которые ты получил с помощью триангуляции, при проекции на плоскость растянутся как бог на душу положит?

ZERG ★★★★★
()
Ответ на: комментарий от ya-betmen

Потому. А вот я предлагаю обратное - изначально ровные на плоскости треугольники попарно оьразующие квадраты, хотя можно и равносторонние, по 60гр же, по три вроде покатит - сьежить на полюсах при проекции на сферу.

deep-purple ★★★★★
()
Последнее исправление: deep-purple (всего исправлений: 1)
Ответ на: комментарий от ZERG

Если развернет как «апельсиновую кожуру», то не сильно исказится. Проблема развернуть в выпуклую область, где любую точку можно соединить неразрывной прямой.

anonymous
()
Ответ на: комментарий от anonymous

Не знаю, просто сложилось ощущение, что он ПДСК хочет.

ZERG ★★★★★
()
Ответ на: комментарий от deep-purple

Вот мне как раз съеживания не нужно, для этого мне было бы достаточно нафигарить сетку из полярных координат, но в таком случае сфера получает четкие полюса, а мне нужно чтобы шарик выглядел максимально «одинаково» с любой стороны.

ya-betmen ★★★★★
() автор топика
Ответ на: комментарий от ya-betmen

Так ты реально шар аппроксимируешь или просо координаты вершин проецируешь? Ну сделай наоборот, но тогда на плоскости треугольники растянет.

deep-purple ★★★★★
()
Ответ на: комментарий от ZERG

Хм а вот это в некотором смысле идея, если от плоскости показывать только незначительно искаженный кусок, то всегда можно пересчитать координаты так, чтобы центром разверки являлся обозреваемый участок.

ya-betmen ★★★★★
() автор топика
Ответ на: комментарий от deep-purple

Задача примерно такая, человек видит либо отдаленную сферу, либо очень сильно приближенный её участок. Когда он видит участок сферы он может, скажем так нанести на него рисунок. Задача в том чтобы при отдалении рисунок на сфере искажался минимально. Способ создания рисунка завязан на треугольники.

ya-betmen ★★★★★
() автор топика
Ответ на: комментарий от ya-betmen

Ну! Значит на шаре треугольники должны быть одинаковые. Но сделать их как можно мельче. Вообще можешь попробовать компромисс - тянутые-сьеженые и на шаре и на плоскости.

deep-purple ★★★★★
()
Ответ на: комментарий от deep-purple

ну да, вопрос в том как их тянуть/съеживать.Попытался влоб - минимизировать разницу длин сторон, но получил безумно длинный вектор и понял что такое не посчитать.

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

ya-betmen ★★★★★
() автор топика
Последнее исправление: ya-betmen (всего исправлений: 1)
Ответ на: комментарий от ya-betmen

Что значит как тянуть? Формула преобразования есть? Я бы вообще только вершинами манипулировал и соотв их координатами там и там.

deep-purple ★★★★★
()
Последнее исправление: deep-purple (всего исправлений: 1)
Ответ на: комментарий от deep-purple

Не, со сферы в плоскость в общем то ясно. Как мне треугольники на сфере подрихтовать, чтобы развертка сомкнулась?

ya-betmen ★★★★★
() автор топика
Последнее исправление: ya-betmen (всего исправлений: 1)

Простой способ. Впиши икосаэдр в сферу, а потом на каждом треугольнике разбей стороны на равные отрезки.

Способ сложнее. Построй сферу внутри икосаэдра, так, что-бы он был описанным вокруг сферы. Еще построй сферу вокруг того же самого икосаэдра, что-бы он был вписанным. Построй сферу среднего радиуса между ними, она пересечет все ребра икосаэдра, полученные точки будут вершинами фуллерена c32. Если повторить еще раз тоже самое, то выйдет фуллерен c60 и т.д.

Повторяй сколько нужно. Пятиугольники фуллерена легко разбиваются на примерно равные треугольники.

vlad9486
()

Поищи где-то готовые фуллерены. Там пятиугольники и шестиугольники сможешь развить на треугольники?

vlad9486
()
Ответ на: комментарий от ya-betmen

Ты хоть понимаешь, что хочешь 3-мерный объект отобразить на 2-мерный? Как ты думаешь, у тебя получится без потер убрать одно измерение? И почему сразу не на 1-мерный, в линию, или вообще в точку без потерь, ты же сможешь?

anonymous
()
Ответ на: комментарий от vlad9486

на каждом треугольнике разбей стороны на равные отрезки

Далее нужно объяснять? Грани икосаэдра - равносторонние. На равностороннем треугольнике можно выложить регулярную сетку равносторонних треугольников. Каждый узел сетки следует спроецировать на сферу. Введи систему координат с центром в центре сферы. Тогда для проекции нужно просто поделить координаты вершины на расстояние до центра и умножить на радиус сферы.

vlad9486
()
Ответ на: комментарий от vlad9486

(N-1) cфера - это объект в N-мерном пространстве. Размерность пространства есть в определениии.
Если избавиться от «N-мерного пространства» в определении, то сфера теряет, еще раз ТЕРЯЕТ, свойства евклидого прстранства. Успехов в проецировании неевклидова пространства на евклидово.

anonymous
()
Ответ на: комментарий от vlad9486

Дай определения «равностороннего треугольника» (важный термин в первом сообщении темы) на плоскости и в сферическом 2-мерном пространстве. Заодно пройдись по их свойстам и как эти свойства без потерь отображаются между пространствами. Математик-двоечник, сессию сдал?

anonymous
()
Ответ на: комментарий от anonymous

Дай определения

На гугле забанили?

без потерь

Этого в условии нету.

Что вообще означает «без потерь»? У нас кодек, что ли? Треугольники могут оставаться правильными, или быть близкими к правильным.

vlad9486
()
Последнее исправление: vlad9486 (всего исправлений: 2)
Ответ на: комментарий от anonymous

Если избавиться от «N-мерного пространства» в определении, то сфера теряет, еще раз ТЕРЯЕТ, свойства евклидого прстранства. Успехов

Что ты несешь? Сфера всегда была неевклировым - римановым пространством. Ничего она не теряет, их и так не было. Как избавиться от пространства в определении? Розупорись.

vlad9486
()
Ответ на: комментарий от vlad9486

На гугле забанили?

На экзамене также отвечаешь?

без потерь

Этого в условии нету.

Понимаешь ли, некоторые свойства (не только треуголников) просто не имеют аналогов между этими пространствами, что даже нельзя построить приближение. Но тыж математик, тыж сможешь.

anonymous
()
Ответ на: комментарий от vlad9486

Сфера всегда была неевклировым

Хочешь я тебе дам определение сферы в евклидовом пространстве? Математик :)

anonymous
()
Ответ на: комментарий от anonymous

У ОПа расплывчатая формулировка. Но очевидно, что имелись ввиду не сферические треугольники, а обычные. Это ты придумал какую-то свою нерешаемую задачу и принес ее сюда.

Но тыж математик, тыж сможешь.

Я уже смог указать путь решения поставленной задачи. Читай выше.

vlad9486
()
Ответ на: комментарий от anonymous

Сфера может быть в евклидовом пространстве, но она сама, сюрприз - тоже пространство (риманово) и его размерность на 1 меньше.

vlad9486
()
Ответ на: комментарий от vlad9486

его размерность на 1 меньше

А ты веселый, еще скажи что имеет конечную площадь, в отличии от бесконечного евклидова 2-мерного пространства.

anonymous
()
Ответ на: комментарий от vlad9486

Это ты придумал какую-то свою нерешаемую задачу и принес ее сюда.

Задача сколько угодно точно решается, если не нужно метрическое пространство, просто разворачиваем «апельсиновую кожуру» ()()()()(). О чем я сразу сказал Аппроксимация сферы регулярной/почти регулярной треугольной сеткой. (комментарий). Если хочешь получить метрическое пространство да еще однозначно отображаемое между сферой и плоскостью, то тут большие проблемы.

anonymous
()
Ответ на: комментарий от anonymous

Ты почти в каждом предложении делаешь ошибки.

Евклидовость не означает бесконечность меры. Евклидово пространство это линейное векторное пространство, в котором метрика - Евклидова, грубо говоря, выполняется теорема Пифагора. На куске плоскости конечной площади тоже выполняется теорема Пифагора, например.

А размерность сферы в N-мерном пространстве обычно меньше чем N. Хаусдорфова или топологическая или еще какая - не важно, здесь они будут совпадать. Если для задания сферы использовать одно вещественное уравнение, то размерность меньше на 1.

vlad9486
()
Ответ на: комментарий от anonymous

Если хочешь получить метрическое пространство да еще однозначно отображаемое между сферой и плоскостью, то тут большие проблемы.

Спасибо, капитан. Мне вообще пофиг. А ОП такого не хочет, иначе написал бы.

Добавлено. Да, ОП что-то такое хочет. Не получится у него. Зря я так.

vlad9486
()
Последнее исправление: vlad9486 (всего исправлений: 1)

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

Объясни подробнее что тебе нужно и для чего.

vlad9486
()
Ответ на: комментарий от vlad9486

А ОП такого не хочет, иначе написал бы.

Цитирую:

... взаимнооднозначно отобразить ... равносторонних треугольников на плоскости при этом желательно чтобы на сфере треугольники ...

Опять редакторы-математики-двоечники. Вот так пишется (подменяется) история. И евклидово пространство уже не над вещественными числами.

anonymous
()

Uniform Jacobian Cubed Sphere, побитая пополам.

aedeph_ ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.