NikSis

Случайное заполнение детали другими деталями C#

Pinned posts

Возник вопрос, реально ли реализовать в C# случайное заполнение детали другими деталями.
Как пример, есть код, который реализует построение в Компасе аквариума и камня. По итогу надо заполнить аквариум камнями, но не используя Компасовские массивы (там тогда будет присутствовать какая та система), а как в жизни (что бы каждый лежал как ему вздумается).
За советы, подсказки, рекомендации буду очень благодарен!

1 пользователю понравилось это

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах


UnPinned posts

Это наверное надо спрашивать на форуме по C#.

Через CAE можно использовать DEM моделирование - создать сами камешки (сейчас в DEM можно создавать частицы произвольной формы и задавать им некоторый разброс). И заполнить ими аквариум, программа сама посчитает как они улягутся.

maxresdefault.jpg

3 пользователям понравилось это

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
13 часа назад, NikSis сказал:

Возник вопрос, реально ли реализовать в C# случайное заполнение детали другими деталями.

В С# можно любую программу написать. Достойный язык программирования. А задача не из простых. Нужно искать точки соприкосновения деталей произвольной формы.

Для этого придется маленький парасолид написать. :)

3 пользователям понравилось это

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

можно что-то вроде тетриса, только без удаления - исключить пересечения

Изменено пользователем Chardash

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
7 часов назад, Chardash сказал:

можно что-то вроде тетриса

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

1 пользователю понравилось это

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

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

2 пользователям понравилось это

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
9 минут назад, piden сказал:

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

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

плоский граф на C# https://www.codeproject.com/Tips/797123/Fast-Voronoi-Diagram-in-Csharp

 

3Д разбиение  
Hide  

 

лучше "партиклами"

Скрытый текст

 

 

Изменено пользователем frei

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Может и получится, код на c++, надо транслировать на C#. или как dll плагин, через API.
опенсурс вроде ->http://math.lbl.gov/voro%2B%2B/about.html

cylinder_t.png.68f965a4da83a9edce802bf14c284d9e.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@frei Пример какой-то жуткий, будто кладка яиц какого-то насекомого.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
13 часа назад, ДОБРЯК сказал:

Камень и аквариум из Компаса нужно в каком-то формате передать в новую программу

не дочитал вопрос, не заметил, что нужно сделать для программы и в 3д

На форуме двж была еще тема для Текла и ее АПИ, ребята плагин делали для упаковки металлоконструкций, там апи тоже на шарп, видео на ютуб. Кода в доступе нет. Скорее всего автору темы тоже не поможет. 

 

Цитата

 и камня

Выше вариант вроде неплохой.

Изменено пользователем Chardash

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Алгоритмы: Efficient linear programming algorithm to generate the densest lattice sphere packings 

https://pdfs.semanticscholar.org/3ef9/963898c0948452ce788546b3b677d585ea79.pdf

@karachun это виноград.:biggrin:

сферки  
Hide  

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@Blurp , не в Ваших традициях, кажется, называть софт, но все же: "какой в этот раз?". имею в виду последний этап насыпания.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
12 минуты назад, soklakov сказал:

какой в этот раз?

Я использовал

В 9/29/2018 в 03:21, Chardash сказал:

что-то вроде тетриса

Скрытый текст

Не в обиду, но лень праздный интерес удовлетворять. Да даже и непраздный.

Открой Гуглотуб, поищи. Подобных софтов немало. Какой конкретно тут - не принципиально.

Программы эти правда номинально не относятся к CAE и такие же номинальные инженеры воротят от них рожу, но мне эти софтины нравятся. :smile:

Вот тоже грешным делом подумал, что во втором посте картинка собственного пера.

Но потом нашел видос. Гуглопоиск рулит кароч.

 

 

 

Изменено пользователем Blurp

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Только что, Blurp сказал:

Подобных софтов немало.

я в курсе. поэтому и интересен конкретно примененный.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Только что, soklakov сказал:

я в курсе. поэтому и интересен конкретно примененный.

Фром Софтнэймс ду РэндомЧёйс.

All

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@Blurp мне есть, чем решить эту задачу. Мне интересно, чем решал @Blurp .

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
5 минут назад, soklakov сказал:

мне есть, чем решить эту задачу

Вот и реши для завязки полезного диалога. И для пользы данного топика.

Но ты же, полагаю, предпочтешь давить кнопки во флейме и добавлять порожних байтов темам, изначально для этого не предназначенным. Так ведь? :wink:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
22 минуты назад, Blurp сказал:

Вот и реши для завязки полезного диалога. И для пользы данного топика.

Но ты же, полагаю, предпочтешь давить кнопки во флейме и добавлять порожних байтов темам, изначально для этого не предназначенным. Так ведь? :wink:

Maya?

bullet plugin  
Hide  
1 пользователю понравилось это

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@frei Хороший вариант. Особенно для кубиков. :smile:

А за то, что легальная версия, прям респект! :clap_1:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
4 минуты назад, Blurp сказал:

для кубиков

Надо бы конечно теддибиров набросать, но после того как нарулил себе новую игрульку и натра*ался со слайсером

 

, моделить стало лень :D

на фоне ковра  

IMG_2890_cr.thumb.jpg.da5b1416ec5456867acb5e7640c85ca2.jpg

Hide  

 

9 минут назад, Blurp сказал:

легальная версия

Ага,

вечно молодой  

27cr8f.jpg.26b2c5f45fbdf7864de4bdb80ac9e7dd.jpg

Hide  

 

4 пользователям понравилось это

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
9 часов назад, Blurp сказал:

давить кнопки во флейме и добавлять порожних байтов темам

проще. это точно. не требует ни ПО, ни вычислительных ресурсов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
В 30.09.2018 в 18:31, Blurp сказал:

Вот и реши для завязки полезного диалога. И для пользы данного топика.

welcome

letters.gif

3 пользователям понравилось это

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@soklakov А можно ли вывести результат в виде геометрии?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Только что, karachun сказал:

А можно ли вывести результат в виде геометрии?

в *.stl

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
11 минуту назад, soklakov сказал:

в *.stl

:k0510:

23 минуты назад, soklakov сказал:

welcome

CXS73.gif

 

 

2 пользователям понравилось это

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
В 30.09.2018 в 20:13, Blurp сказал:

что-то вроде тетриса

http://vimple.co/9e1d80d0eb43436cb275ad135106d155

 

+ из мануалов в блендере

123.thumb.jpg.1f60f1442bff071fe7659aca7e723bdd.jpg

Изменено пользователем Chardash
3 пользователям понравилось это

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Че-то аквариум бешеный какойта

в солидворксе  
Hide  
1 пользователю понравилось это

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Только что, jtok сказал:

Че-то аквариум бешеный какойта

в солидворксе
Hide

Ну магия прям

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

RK.gif.429b6b9c3c817222a070fb7c7591814a.gif

1 пользователю понравилось это

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу



  • Сообщения

    • Frezer_krot
      странная у вас симуляция,при такой программе инструмент будет стоять в одной точке.но никак не описывать контур детали.я уже выше об этом писал и скрин кидал.да и ваша картинка это наглядно показывает. не могу вам объяснить на словах.Нужно на пальцах объяснять. ваш метод я непосредственно на станке пробовал и получается , то о чем я и говорил. Инструмент преследует точку в которую пришел. Ось шпинделя преследует точку 2, Кончик инструмента преследует точку 1. Можете наглядно на листочке попробовать : Нарисуйте круг (это будет круглый стол) ось вращения в центре круглого стола.в стороне от центра стола нарисуйте еще круг (это будет призма), на контур призмы поставьте ручку(карандаш) и вращайте листочек по оси стола сохраняя положение карандаша (ручки) в начальной точке и под тем же углом.  
    • teremok
      an_rushin, к сожалению, не могу этого сделать. Сетку делал в ICEM, да. Сетку делал средствами ICEM-CFD, блочную структурированную, фактически ручками. Есть вставки автоматической тетра-сетки, но с хорошим качеством, и этой сетки минимум. В целом, сетка состоит из нескольких частей, которые соединяются между собой в CFX-Pre интерфейсами. Задача сравнительно большая, на 70 млн. узлов, в том числе и поэтому не могу выложить указанные файлы. Главное, на работе не поймут. Если у вас есть уточняющие вопросы по задаче, отвечу в максимально полном объёме. Я не новичок в CFX, просто проблема новая и очень заковыристая оказалась.   С уважением, Максим.
    • error1412
      А кто нить знает как сделать булево объединение листа так чтоб прилепить элемент только к одной плоскости? Новый точечный рисунок (2).bmp Новый точечный рисунок.bmp
    • m0rDev
      Не давно начались такие проблемы. Создаю новый документ или беру старые при вращении объекта оси и надписи налипают друг на друга. см скрин и портят обзор.    как исправить. делал восстановление программы, но не помогло. 
    • DJ Astro
      Ну, попробуйте поизменять DL, посмотрите, что и куда приедет    Мало чего понял из всего этого . К поведению инструмента на гифке у меня претензий нет, всё так и должно быть. Это вид такой, на нем деталь "закреплена", а инструмент со станком "крутится" вокруг детали, зато хорошо видно какая деталь будет после обработки. Вам нужен правый вид, на нём реальные движения станка. Станок в гифке отрабатывает ту же самую программу, которая видна на скриншоте из симулятора Heidenhain и которую я писал ещё несколькими сообщениями выше. Через CAM такую программу для многоосевой обработки в пару-тройку кадров получить оч тяжело.
    • BSV1
    • an_rushin
      пожалуйста, выложите файлы *.cfx, *.tin, *.blk.
      правильно понимаю, что сетку делали в ICEMCFD HEX? если нет, то выложите геометрию в любом формате и *.cfx  
    • Jesse
      а как же атомный ледокольный флот (практически монополия в мире) и строительство АЭС?
    • Инженеротбога
      Algoryx Momentum для SpaceClaim    
    • Ветерок
      Казалось бы, простая задачка. В каком софте можно реализовать укладывание цепи кучкой (или змейкой, или как сложится) после свободного падения её конца на плоскую пластину? Верхний конец цепи зафиксирован. Нужна не анимация процесса, а конечный результат - цепь, лежащая произвольным образом на плите. В Крео мне такое сделать не удалось. Не нашел такого функционала.