Render.ru

Равномерное распределение примитивов на плоскости

Георгий Швыдкий

Пользователь сайта
Рейтинг
2
#1
Добрый день, форумчане! Передо мной стоит такая задача, бьюсь уже неделю, решить не могу. Есть изогнутая поверхность на ней требуется разместить заданное количество цилиндров с двумя условиями: 1. Цилиндры стоят перпендикулярно плоскости. 2. Цилиндры расположены равноудаленно Друг от друга, то есть равномерно. Делал через геометрические ноды Distribute Points on Faces с включением Poisson Disk, но на поверхности явно видна проплешена, которую устранить никак не получается. См рис. В принципе, неплохо получается с использованием Mesh to Points. Но тогда изогнутая поверхность-полусфера должна состоять из тождественных полигонов - равносторонних треугольников. А это я не знаю как сделать и вообще возможно ли это. К тому же, надо иметь возможность регулировать количество этих цилиндров. Подскажите, пожалуйста, у кого какие идеи, как это можно сделать? Рассматриваю любые варианты!
 

Вложения

  • 383,6 КБ Просмотров: 2

ProcXel.A

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

ProcXel.A

Мастер
Рейтинг
186
#3
А регулировать количество цилиндров можно обычным растягиванием этой плоскости из треугольников. Вот так вот:

 
Рейтинг
46
#4
ProcXel.A
хм, я вспомнил, в 3д максе плоскость например разбита на полигоны, ну и треугольники там....и можно было тот же цилиндр по-моему констрантом (я давно не открывал 3д макс, не помню название) прилепить этот цилиднр перпендикулярно , и причем прямо в центр треугольника чтоли.....может здесь также есть?
 

ProcXel.A

Мастер
Рейтинг
186
#5
Не ну цилиндры можно прилипить, куда хочешь. Можно и в центр треугольника. Просто центры треугольника не равноудалены друг от друга.

1739805370580.png 1739805396091.png

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

Георгий Швыдкий

Пользователь сайта
Рейтинг
2
#6
Спасибо за отклик. На самом деле это сверху будет одеваться матрица и именно в ней будут делаться отверстия с помощью булеана. Скорее, это даже не дырочки, а скважины.
По поводу натягивания плоскости на мою форму: а можете рассказать поподробнее, как это делать, скинуть уроки или, может, сказать, что гуглить?
По поводу массива. Получается, с таким же успехом можно сделать и массив цилиндров? При этом все равно расположение будет квазиравномерным?
 

Георгий Швыдкий

Пользователь сайта
Рейтинг
2
#7
Не ну цилиндры можно прилипить, куда хочешь. Можно и в центр треугольника. Просто центры треугольника не равноудалены друг от друга.

Посмотреть вложение 328061 Посмотреть вложение 328062

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

ProcXel.A

Мастер
Рейтинг
186
#8
Делаешь вот такой шестигранник:

1739868154989.png

Размноживаешь его, насколько хочешь. И сшиваешь в одну сетку. Главное, двойные вертексы не забыть слить.

1739868335349.png

К вершинам этой плоскости прилепляешь цилиндры с помощью геонод.

1739868670961.png

А с помощью модификатора шринкврап проецируешь эту плоскость с цилиндрами на изогнутую поверхность.

1739869008316.png

Лишние цилиндры и саму плоскость из треугольников можно в геонодах отрезать.

1739869277487.png

Теперь можно просто масштабировать сетку с цилиндрами, и там образом регулировать плотность цилиндров, так сказать.
 

Вложения

Георгий Швыдкий

Пользователь сайта
Рейтинг
2
#9
Делаешь вот такой шестигранник:

Посмотреть вложение 328071

Размноживаешь его, насколько хочешь. И сшиваешь в одну сетку. Главное, двойные вертексы не забыть слить.

Посмотреть вложение 328072

К вершинам этой плоскости прилепляешь цилиндры с помощью геонод.

Посмотреть вложение 328073

А с помощью модификатора шринкврап проецируешь эту плоскость с цилиндрами на изогнутую поверхность.

Посмотреть вложение 328074

Лишние цилиндры и саму плоскость из треугольников можно в геонодах отрезать.

Посмотреть вложение 328075

Теперь можно просто масштабировать сетку с цилиндрами, и там образом регулировать плотность цилиндров, так сказать.
Спасибо вам большое за такой детальный ответ! Буду пробовать. Должно все получиться!
 
M

makil rakol

Guest
#10
I think the type of plane matters a lot (at the very least, compare a circle to a very narrow rectangle of the same area). The area must be limited because it is impossible to uniformly select an area of R², so some shape must be selected. Interesting question though.
 
Сверху