Болезни Военный билет Призыв

Что такое геодезический купол. Сферическая тригонометрия

Давно посещали меня мысли о строительстве собственного дома, но как-то в виде интересных идей, которые замечал у других в жизни или СМИ. Представил тут, как выглядел бы дом, воплощающий все эти идеи - лисья нора (землянка), переходящая в зеркальную сферу, висящую на дереве:D. В общем, идейный трансформер что снаружи что внутри.

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

Этим летом (2011) довелось живьем наблюдать, и даже немного помог в строительстве жилого геодезического купола (фото слева).

А сейчас наткнулся на интересную информацию по ним, зарылся, и решил писать статью на будущее… своеобразную шпаргалку, чтобы быстро можно было вспомнить и найти. Так что по мере поступления информации буду статью дополнять. Уверен и читателям сайта будет полезно.

Вот такие они бывают:






Вкратце об истории и что значит "геодезический" .

Как обычно все новое - это хорошо забытое старое.

Гео - наш земной шар Земля

Остаток на Д … - делить (древние греки делили и измеряли ее… и не только они)

Так что, если не вдаваться в пространственную и дифферинциальную геометрию искривленных пространств))), то - это купол из части сферы, вернее сферического многогранника, так как измеряют землю по точкам, на ее поверхности, которые в нашем случае являются вершинами этого многогранника. Важной особенностью является оптимально-распределенное расположение вершин и граней стремящихся к идеальной сфере. Строится обычно на основе икосаэдра (20 треугольных граней) или додекаэдра (12 пятиугольных граней).


Продолжение на следующей странице.
1      


[комментарии/обсуждение]

Владимир (20:06 05.10.2016)
Андрей, благодарю за интересную идею и полезные советы! По образованию - геолог - геофизик, иногда рисую картины и режу по дереву. Вот такой домик-мастерская, освещенная со всех сторон, пожалуй и подойдет лучше всего! И кристалл напоминает. Вечерами, глядя на звезды, можно будет и помечтать о полетах на собственном "НЛО" в какой-нибудь следующей жизни. :-))
Вячеслав (18:10 14.11.2015)
Ищу работу!
Опыт работы в малоэтажном строительстве 10 лет. Проектирование и строительство необычных по форме сооружений (геодезические купола). По самостоятельным проектам было построено три дома, один из которых построил себе сам. Проектирование инженерных коммуникаций (электрика, водопровод, канализация, кровля, утепление). Очень интересуют альтернативные источники энергии, и автономность жилых домов. Быстро обучаем. Коммуникабельный. Пунктуальный. Мобилен. Имеется портфолио!
radius (02:20 28.11.2014)
для интересующихся - самый емкий русскоязычный ресурс по куполам forum.domesworld.ru
Andrew (19:46 03.12.2013)
to Михаил
Добрый день. Вижу три причины:
+ в основном геодезиками увлекаются люди, предпочитающие использовать по возможности натуральные материалы и продукты, при строительстве Эко-дома ППУ - нонсенс (ППУ считается вредным полимером и надо знать, как строить безопасно с его использованием), ;
+ некоторые технологические трудности и бОльшие финансовые затраты;
+ для такой парилки нужно использовать грамотную вентиляцию, по мнению большинства - принудительную
Михаил (12:47 03.12.2013)
Добрый день! Меня поражает тот факт, что просмотрев множество фото-отчетов о постройке купольных домов, я ни разу не обнаружил применение напыления ППУ. Напротив, все мучаются, запихивают эту не треугольную мин. вату в треугольники и пр. мучаются с топорщащейся на округлой поверхности пароизоляцией. Не могу понять почему так. В простом каркасном строительстве ППУ применяется повсеместно, а тут такое пренебрежение. Хотя коннекторы некоторые пенят баллонами и окна с дверями ставят на пену))) Мне кажется ППУ и купольное домостроение должны быть "не разлей вода" Или есть какие-то особенности и невозможность применения напвляемого ППУ?
Andrew (08:38 24.09.2013)
Треугольники собираются из досок на саморезы, а треугольники собираются между собой на болты.
Амир (10:09 23.09.2013)
... тот геодезический купол, в строительстве которого вы помогали, на самой первой фотографии в статье - объясните, или может сможете выслать на мой электронный адрес информацию по способам стыкования (крепления) каркасных элементов купола. Буду очень благодарен.
adam gagarin (13:14 30.10.2012)
Гравитониум ру мы не продлеваем уже давно, но вся информация о куполах доступна на www.valpak.ru & www.cupulageodesica.com/ru

Мы пришли к использованию тонкой стальной термоотражающей фольги, наклеиваемой прямо на внутренние поверхности фанерных треугольников. Эффект термоса, вес как на МКС, и жар и холод отражаются 99%.

C радостью поделимся информацией по всем вопросам

С Уважением,
Адам Гагарин

Andrew (20:31 18.02.2012)
Вот что пишут в Timberline FAQs:
"The most common choices are fiberglass or rigid foam. Timberline"s 2" x 6" framing members allow for 5 1/2" of insulation, sufficient for most climatic conditions. Other options include spray-in expanding foam which is very effective."
"By using an expanding spray in foam insulation, it seals up the dome so well that no interior vapor barrier is needed."
http://www.domehome.com/faqs.html
Так что конкретно по пене не изучал вопрос.

Да, это тот геодом.

staging (08:53 18.02.2012)
Спасибо за ответ. Пеной очень не хотелось. Лучше минватой. Но если пеной то какой? И еще вот фото http://www.zidar.ru/2011/09/stroim-kryishu-chast-vtoraya/#more-203 и то что у вас где рейки прямые в вензазоре это с одного объекта?
Andrew (03:56 08.02.2012)
- обычно Timberline Geodesics использует стекловату и "строительную" пену;
- при использовании ребер 2*6 дюйма (примерно 50*150 мм) вентзазор не делают и заполняют все пустоты пеной, и говорят что при этом конденсат не образуется и пароизоляция не требуется;
- при использовании ребер бОльших сечений (50*200/300), в качестве опции, предлагают делать пропилы, похожие на Natural Spaces Domes;
- кровля состоит из треугольных граней, покрытых подкровельным ковром и сверху битумная/деревянная/металлическая черепица или используют специальное напыление.

Так что можете попробовать все задуть пеной или сделать по классической максимальной схеме с вентзазором:
- пароизоляция (не пропускает воздух и влагу... заклеивать стыки скотчем обязательно... в идеале чтобы "герметично" было... NSD, вроде, проверяют на малейшие отверстия специальным агрегатом... и все электрические коробки и входы/выходы в каркас герметизируют);
- утеплитель;
- ветрозащита (мембрана, пропускающая воздух и препятствующая "выдуванию" тепла из утеплителя);
- вентзазор;
- гидроизоляция (пропускает влажный воздух из утеплителя и не пропускает влагу со стороны крыши купола);
- вентзазор;
- кровля

staging (00:48 08.02.2012)
Интересует готовое решение вентиляция подкровельного пространства и утепление. Кровельный пирог. Каркас 3v 5/8 TIMBERLINE.

История этой демки такова: однажды один мой друг сделал для своей игры генератор карт планет и захотел, чтобы созданные таким образом карты показывались в виде вращающейся сферы. Однако, при этом он не хотел использовать 3D-графику, а вместо этого сгенерировал множество кадров с этой самой сферой, повёрнутой на разные углы. Количество используемой памяти было… скажем так, избыточным, ну а скорость генерации кадров (как и качество их исполнения) сильно страдала. Чуть подумав, мне удалось помочь ему оптимизировать этот процесс, но в целом меня не покидало справедливое ощущение того, что это задача для OpenGL, а вовсе не для 2D-графики.

И вот, однажды, когда меня мучила бессонница, я решил попробовать совместить эти два подхода: нарисовать вращающуюся сферу (с натянутой на неё картой планеты) через OpenGL, но при этом оставив её плоской.

И должен сказать, что у меня это получилось. Но обо всём по порядку.

Математика процесса

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

Итак. Переход от сферической системы координат к декартовой задаётся системой уравнений (взято с Википедии):

А обратный переход - такими уравнениями:

Координату Z мы легко можем получить из X и Y , зная радиус, а сам радиус мы можем принять равным единице.
В дальнейшем договоримся о том, что приведённые выше уравнения мы слегка изменим, поменяв местами понятия Y (у нас это будет экранная вертикаль) и Z (это будет глубина сцены).

Техническая часть

Реализация идеи потребует от нас применения квада (я уже о том, как его использовать, поэтому повторяться не буду, тем более что ниже приведена ссылка на полный исходный код проекта), а также двух текстур: собственно карты планеты (я использовал текстуру Земли размера 2048x1024) и карты текстурных координат. Код генерации второй текстуры аккуратно повторяет математику преобразования из декартовых координат в сферические:

Int texSize = 1024; double r = texSize * 0.5; int pixels = new int; for (int row = 0, idx = 0; row < texSize; row++) { double y = (r - row) / r; double sin_theta = Math.sqrt(1 - y*y); double theta = Math.acos(y); long v = Math.round(255 * theta / Math.PI); for (int col = 0; col < texSize; col++) { double x = (r - col) / r; long u = 0, a = 0; if (x >= -sin_theta && x <= sin_theta) { double z = Math.sqrt(1 - y*y - x*x); double phi = Math.atan2(z, x); u = Math.round(255 * phi / (2 * Math.PI)); a = Math.round(255 * z); } pixels = (int) ((a << 24) + (v << 8) + u); } } GLES20.glGenTextures(1, genbuf, 0); offsetTex = genbuf; if (offsetTex != 0) { GLES20.glBindTexture(GLES20.GL_TEXTURE_2D, offsetTex); GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MIN_FILTER, GLES20.GL_NEAREST); GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_MAG_FILTER, GLES20.GL_NEAREST); GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_S, GLES20.GL_NONE); GLES20.glTexParameteri(GLES20.GL_TEXTURE_2D, GLES20.GL_TEXTURE_WRAP_T, GLES20.GL_NONE); GLES20.glTexImage2D(GLES20.GL_TEXTURE_2D, 0, GLES20.GL_RGBA, texSize, texSize, 0, GLES20.GL_RGBA, GLES20.GL_UNSIGNED_BYTE, IntBuffer.wrap(pixels)); }
Отметим, что координаты X и Y переводятся из диапазона в диапазон [-1..1], а текстурные координаты U и V переводятся из радианов в диапазон , после чего записываются соответственно в красную и зелёную компоненты 32-битной текстуры. Альфа-канал используется для сохранения «глубины» (координаты Z ), а синий пока остаётся незадействованным. Отключение билинейной фильтрации также не случайно: на данном этапе она не даёт какого-либо эффекта (соседние точки в любом случае имеют одни и те же значения, с довольно резкими скачками), а в том, что я собираюсь показать дальше, она и вовсе будет вредна. Но об этом ниже.

Обе текстуры подаются на вход простого пиксельного шейдера (здесь и далее картинки кликабельны):

Private final String quadFS = "precision mediump float;\n" + "uniform sampler2D uTexture0;\n" + "uniform sampler2D uTexture1;\n" + "varying vec4 TexCoord0;\n" + "void main() {\n" + " vec4 vTex = texture2D(uTexture0, TexCoord0.xy);\n" + " vec3 vCol = texture2D(uTexture1, vTex.xy).rgb;\n" + " gl_FragColor = vec4(vCol, (vTex.w >
Код отрисовки сцены я не привожу, т.к. в нём всё довольно тривиально (и, опять же, его можно посмотреть в полном исходнике), да и сам шейдер довольно примитивен. Самое любопытное в нём, пожалуй, то, что альфа-канал пока лишь проверяется на положительность, тогда как можно было бы задействовать его для эффекта освещения.

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

Включаем в шейдер ещё один параметр (будем менять его в зависимости от времени в диапазоне ), плюс добавляем «глубину» (умножение цвета на значение из альфа-канала):

Private final String quadFS = "precision mediump float;\n" + "uniform sampler2D uTexture0;\n" + "uniform sampler2D uTexture1;\n" + "uniform float uOffset;\n" + "varying vec4 TexCoord0;\n" + "void main() {\n" + " vec4 vTex = texture2D(uTexture0, TexCoord0.xy);\n" + " vTex.x += uOffset;\n" + " vec3 vCol = texture2D(uTexture1, vTex.xy).rgb;\n" + " gl_FragColor = vec4(vCol * vTex.w, (vTex.w > 0.0 ? 1.0: 0.0));\n" + "}\n";
Что ж, к самой сфере претензий нет, однако картинка выглядит как-то… восьмибитно, что ли. И неудивительно: мы же записывали текстурные координаты в диапазоне (максимум, доступный нам в обычных цветовых компонентах), а значит наша текстура может иметь не больше 256 точек в высоту (и 512 в ширину, учитывая вращение). Маловато, нужна как минимум 10-битная точность.

Увеличиваем разрешение

Сразу предупреждаю: описанный здесь код может криво работать на каких-либо устройствах, хотя мне удалось добиться нормальной отрисовки на всех устройствах, которые я смог подержать в руках. В любом случае, описанное здесь является обычным хаком.

Итак, у нас пока задейстованы две из трёх цветовых компоненты, т.е. 16 бит из 24. Ну так упакуем же данные так, чтобы каждая текстурная координата имела размер 12 бит, что позволит нам работать с текстурами размером до 4096 пикселей в высоту! Для этого изменим буквально три строчки в программе:

Long v = Math.round(4095 * theta / Math.PI); ... u = Math.round(4095 * phi / (2 * Math.PI)); ... pixels = (int) ((a << 24) + (v << 12) + ((u & 15) << 8) + (u >> 4)); ...
и напишем новый шейдер, учитывающий 12-битную схему адресации (именно в этом месте необходимо, чтобы билинейная фильтрация была отключена!):

private final String quadFS = "precision mediump float;\n" + "uniform sampler2D uTexture0;\n" + "uniform sampler2D uTexture1;\n" + "uniform float uOffset;\n" + "varying vec4 TexCoord0;\n" + "void main() {\n" + " vec4 vTex = texture2D(uTexture0, TexCoord0.xy);\n" + " vec3 vOff = vTex.xyz * 255.0 + vec3(0.5, 0.5, 0.5);\n" + " float hiY = floor(vOff.y / 16.0);\n" + " float loY = vOff.y - 16.0 * hiY;\n" + " vec2 vCoord = vec2(\n" + " (vOff.x * 16.0 + loY) / 4095.0 + uOffset,\n" + " (vOff.z * 16.0 + hiY) / 4095.0);\n" + " vec3 vCol = texture2D(uTexture1, vCoord).rgb;\n" + " gl_FragColor = vec4(vCol * vTex.w, (vTex.w > 0.0 ? 1.0: 0.0));\n" + "}\n";
Ну это же совсем другое дело! С небольшими изменениями (добавив масштабирование «щипком» и вращение пальцем) я эту программу показывал своим друзьям и колегам, и при этом спрашивал, сколько, по их мнению, в этой сцене треугольников. Результаты варьировались, да и сам вопрос вызывал подозрение в наличии подвоха (в этом случае респонденты шутили «один», что было недалеко от истины), но правильный ответ стабильно удивлял. И все, как один, спрашивали: а почему сферу можно крутить вокруг одной оси, но нельзя наклонять?.. Хм.

Наклон

А дело в том, что наклон в этой схеме реализовать существенно труднее. На самом деле, задача не является неразрешимой, и я с ней даже справился, но не обошлось без нюансов.

В сущности, задача сводится к тому, чтобы взять смещённую координату V , тогда как координата U не меняется: это происходит потому, что мы добавляем вращение вокруг оси X . План такой: преобразуем текстурные координаты в экранные (в диапазоне [-1..1]), применяем к ним матрицу поворота вокруг горизонтальной оси (для этого заранее запишем в новую константу uTilt синус и косинус угла наклона), а дальше воспользуемся новой координатой Y для выборки в нашей шаблонной текстуре. «Повёрнутая» координата Z нам тоже пригодится, с её помощью мы отзеркалим долготу для обратной стороны шарика). Экранную координату Z придётся посчитать явно, чтобы не делать две текстурных выборки из одной текстуры, заодно это повысит её точность.

private final String quadFS = "precision mediump float;\n" + "uniform sampler2D uTexture0;\n" + "uniform sampler2D uTexture1;\n" + "uniform float uOffset;\n" + "uniform vec2 uTilt;\n" + "varying vec4 TexCoord0;\n" + "void main() {\n" + " float sx = 2.0 * TexCoord0.x - 1.0;\n" + " float sy = 2.0 * TexCoord0.y - 1.0;\n" + " float z2 = 1.0 - sx * sx - sy * sy;\n" + " if (z2 > 0.0) {;\n" + " float sz = sqrt(z2);\n" + " float y = (sy * uTilt.y - sz * uTilt.x + 1.0) * 0.5;\n" + " float z = (sy * uTilt.x + sz * uTilt.y);\n" + " vec4 vTex = texture2D(uTexture0, vec2(TexCoord0.x, y));\n" + " vec3 vOff = vTex.xyz * 255.0 + vec3(0.5, 0.5, 0.5);\n" + " float hiY = floor(vOff.y / 16.0);\n" + " float loY = vOff.y - 16.0 * hiY;\n" + " vec2 vCoord = vec2(\n" + " (vOff.x * 16.0 + loY) / 4095.0,\n" + " (vOff.z * 16.0 + hiY) / 4095.0);\n" + " if (z < 0.0) { vCoord.x = 1.0 - vCoord.x; }\n" + " vCoord.x += uOffset;\n" + " vec3 vCol = texture2D(uTexture1, vCoord).rgb;\n" + " gl_FragColor = vec4(vCol * sz, 1.0);\n" + " } else {\n" + " gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0);\n" + " }\n" + "}\n";
Ура, наклон удался! Вот только странный шум на границе полушарий немного смущает. Очевидно, проблема кроется в недостаточной точности адресации в граничных точках (точки на самой окружности соответствуют слишком большому диапазону координат, один тексель расползается на интервал довольно заметной длины). В конце концов, мне удалось это победить, используя две сгенерированных текстуры вместо одной.

В итоге, можно приближать и крутить шарик почти так же, как в Google Earth. С тем отличием, что здесь - всего-навсего два треугольника.

Ну и, наконец, обещанное. Исходный код проекта доступен на

Сферические треугольники.

На поверхности шара кратчайшее расстояние между двумя точками измеряется вдоль окружности большого круга, т. е. окружности, плоскость которой проходит через центр шара. Вершины сферического треугольника являются точками пересечения трех лучей, выходящих из центра шара, и сферической поверхности. Сторонами а, b, с сферического треугольника называют те углы между лучами, которые меньше 180°. Каждой стороне треугольникасоответствует дуга большого круга на поверхности шара (рис. 1). Углы A, В, С сферического треугольника, противолежащие сторонам а, b, с соответственно, представляют собой, по определению, меньшие, чем 180°, углы между дугами больших кругов, соответствующими сторонам треугольника, или углы между плоскостями, определяемыми данными лу-чами.

Свойства сферических треу-гольников.

Каждая сторона и угол сфери-ческого треугольника по определению мень-ше 180°. Геометрия на поверхности шара являет-ся неевклидовой; в каждом сферическом треугольнике сумма сторон заключена между 0 и 360°, сумма углов заключена между 180° и 540°. В каждом сферическом треуголь-нике против большей стороны лежит больший угол. Сумма любых двух сторон больше третьей стороны, сумма любых двух углов меньше, чем 180° плюс третий угол.

Сферический треугольник единственным образом определяется (с точностью до преобразования симметрии):

  • тремя сторонами,
  • тремя углами,
  • двумя сторонами и заключенным между ними углом,
  • стороной и двумя прилежащими к ней углами.

Решение сферических треугольников (Таблица)

(смотрите формулы ниже и рис. 1 выше)

Формулы для вычисления

Условия существования решения

1

Три стороны

а, Ь, с

А, В, С

Сумма двух сторон должна быть больше третьей

2

А, В, С

а, Ь, с из (8) и циклической перестановки

Сумма двух углов должна быть меньше 180° плюс третий угол

3

Две стороны и заключенный между ними угол

b, с, А

из (6), затем В и С ; а из (7), (8) или (4)

4

Два угла и заключенная между ними сторона

В, С, а

из (6), затем b и с; А из (7), (8) или (5)

5

Две стороны и противолежащий одной из них угол

Ь, с, В

С из (3); А и а из (6)

sin с sin В ≤ sin b .

Сохраняются те из величин с , для которых А - В и а - b имеют одинаковый знак;

A + B - 180°

и а + b - 180°

6

Два угла и противолежащая одному из них сторона

В, С, b

с из (3); А и а из (6)

Задача имеет одно или два решения, если

sin b sin С ≤ sin В .

Сохраняются те из величин с , для которых A - В и а - b имеют одинаковый знак;

A + В - 180°

и а + Ь - 180°

также должны быть одного знака

Формулы для решения сферических треугольников

В следующих ниже соотношениях А, В, С являются углами, противолежащими соответственно сторонам а, b, с сферического треугольника. «Радиусы» описанного и вписанного конусов обозначены соответственно через г и р. Формулы, не включенные в перечень, могут быть получены одновременной циклической перестановкой А, В, С и а, Ь, с . Таблица выше позволяет вы-числять стороны и углы любого сферического треугольника потрем подходящим образом заданным сторонам и/или углам. Неравенства, отмеченные в начале п. 2, должны быть приняты во внимание, для того чтобы исключить посторонние результаты при решении треугольников.

теорема синусов

теорема косинусов для сторон

теорема косинусов для углов

аналогии Непера

аналогии Деламбра и Гаусса

Таким образом, если имеются в наличии таблицы функции hav, то для решения сфе-рических треугольников можно использовать эти формулы:

Другие аналогичные соотношения можно получить циклической перестановкой

Сферическая тригонометрия

Сферические треугольники. На поверхности шара кратчайшее расстояние между двумя точками измеряется вдоль окружности большого круга, т. е. окружности, плоскость которой проходит через центр шара. Вершины сферического треугольника являются точками пересечения трех лучей, выходящих из центра шара и сферической поверхности. Сторонами a , b , c сферического треугольника называют те углы между лучами, которые меньше (если один из этих углов равен , то сферический треугольник вырождается в полуокружность большого круга). Каждой стороне треугольника соответствует дуга большого круга на поверхности шара (см. рисунок).

Углы A , B , C сферического треугольника, противолежащие сторонам a , b , c соответственно, представляют собой, по определению, меньшие, чем , углы между дугами больших кругов, соответствующими сторонам треугольника, или углы между плоскостями, определяемыми данными лучами.

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

Свойства сферических треугольников. Каждая сторона и угол сферического треугольника по определению меньше .

Геометрия на поверхности шара является неевклидовой; в каждом сферическом треугольнике сумма сторон заключена между 0 и , сумма углов заключена между и . В каждом сферическом треугольнике против большей стороны лежит больший угол. Сумма любых двух сторон больше третьей стороны, сумма любых двух углов меньше, чем плюс третий угол.

Статья о том, что такое геодезический купол простыми словами

В этой статье мы постараемся описать что такое простыми словами. По сути – геодезический купол – это сетка, построенная из множества “граней” (многогранников), максимально близкая к форме сферы.

Если приглядеться, то именно треугольники стали основой сетки, а не ромбы, квадраты или шестигранники. Треугольник был выбран как самая стабильная и прочная геометрическая структура из всех известных. И поэтому, структура из треугольников (в нашем случае геокупол), очень прочная и обладает самонесущими способностями. Она “держит” сама себя, являясь целостной структурой. Чем больше граней мы используем для построения, тем прочнее наша сетка, и более сглажена форма.

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

В основе построения геодезического купола лежат Платоновы Тела, всего которых насчитывается пять, но мы рассмотрим детально только Икосаэдр, как наиболее распространенный вариант. Икосаэдр – это правильный многогранник, состоящий из 30 одинаковых ребер, которые создают 20 равносторонних треугольников.

Итак, рассмотрим построение геодезического купола поэтапно:

1. Для начала мы строим сферу с заданным радиусом


3. Т.к. все треугольники в икосаэдре равны, мы выбираем любой из них и разбиваем его на более мелкие равносторонние треугольники. В нашем случае разбивка происходит в пятой частоте (об этом пойдет речь позже). Выбранный изначальный треугольник икосаэдра делиться на 5 “рядов” более мелких треугольников. Так получается наша “плоская” разбивка сетки.

4. На этом этапе мы строим отрезки исходящие из центра сферы. Эти отрезки должны проходить через точки соединения получившейся сетки и заканчиваться на поверхности сферы.

5. Далее мы соединяем все вершины отрезков, лежащие теперь на поверхности сферы. У нас получилась структура из треугольников, вершины которых лежат на поверхности сферы, практически повторяя ее форму. Т.к. все изначальные треугольники икосаэдра одинаковые, то мы можем смело копировать нашу получившуюся сетку, получая желаемый геодезический купол или сферу.


Частота триангуляции геодезического купола

Понятие “частота” или “частота триангуляции” часто встречается в расчетах геокупола. Она подразумевает плотность разбивки купола на треугольники. Т.е. один и тот же купол можно “описать” разным количеством треугольников. К примеру, для менее плотной разбивки потребуется меньше треугольников, но с большей длиной ребра и форма будет более угловатой. Для более плотной разбивки потребуется большее количество треугольников с меньшей длиной ребра, но форма получится боле ровной и близкой к сферической.


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

Какую частоту выбрать Вам для своего геодезического купола – решать Вам. Этот параметр зависит от многих параметров: размеров купола, несущих и прочих характеристик материалов, длины ребер, экономичности и эстетики.


Сечение сферы

Следующий параметр, который следует знать всем при расчете геодезического купола – это значение сечения сферы. Если мы рассмотрим сферу как целое, мы можем поделить ее на различное количество частей. Т.к. геодезическая “разбивка” состоит из “рядов”, то разбить купола удобнее всего по этим рядам. У куполов с разной частотой “V” – разное количество “рядов”, поэтому сечение для них всегда индивидуальное. Ниже приведены некоторые примеры сечения куполов разной частоты.


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

Надеемся, что статья оказалась для Вас полезной! Желаем Вам приятного Творчества!