Перейти к публикации

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


Рекомендованные сообщения

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

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


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

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

maxresdefault.jpg

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

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

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

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

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

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

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

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

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

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

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

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

Ссылка на сообщение
Поделиться на других сайтах
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

Ссылка на сообщение
Поделиться на других сайтах
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

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

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

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

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

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

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

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

Maya?

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

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

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

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

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

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

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




  • Сообщения

    • Kelny
      Может изменяемый вами размер импортирован из модели?  Обычно переносилось удержанием левой кнопки мыши, а если сделать двойной клик, то нужно потом выбрать новый объект уже без удержания кнопок мыши.
    • Kelny
      Отключить галочки режима большой сборки. Инструменты-Параметры...-Настройки пользователя-Сборки
    • brigval
      Если не прописали, значит считается, что производственный процесс их изготовления гарантирует качество, достаточное для присвоения литеры. Можно и так посмотреть.   Между прочим, пред вынесением Решения о присвоении литеры проходит "испытания" весь комплект  КД. Разрешат вам не предъявлять часть КД на проверку? Спросите у НК.   И все-таки, если есть Решение о присвоении литеры, надо прочитать, что там сказано. Как сформулировано. Возможно, это снимет все вопросы.
    • cepr
      Есть в Компасе возможность построения зубчатого колеса с углом профиля не 20гр., а 25гр?
    • shishov32
      В ТУ не прописали про испытания КМЧ и упаковки, отсюда все пошло. 
    • clavr
      подскажите: как в солиде 2024 в чертеже перепривязать точку размера к другому элементу? раньше достаточно было выделить размер, точку привязке и удерживая ПКМ перенести к другому элементу. теперь это не работает   По справке сделать не получается( просто быстрые привязке не подсвечиваются https://help.solidworks.com/2024/russian/SolidWorks/sldworks/c_moving_dimension_leadersOH.htm  
    • BSV1
      КМЧ бывают разные. Если КМЧ состоит из одних стандартных болтов, например, то может испытания и не требуются. Если же КМЧ состоит из изделий собственной разработки, то почему их не надо испытывать? Что касается упаковки, то есть ГОСты на тару. Например: 80071.pdf ГОСТ Р 53775-2010 Упаковка. Испытание на штабелирование при статической нагрузке ГОСТ 18211-2018. Упаковка транспортная. Метод испытания на сжатие  gost-9142-2014.pdf  Есть еще испытания изделий в упаковке, которые подразумевают, в том числе, и испытание самой упаковки. Проверяться изделия в упаковке могут на транспортную тряску, удары, падения, климат. При этом упаковка должна обеспечить сохранность изделия. Есть еще вопросы консервации. Как же без испытаний?   Странный у вас нормоконтролер.    
    • brigval
      Ответом на ваш вопрос будет противоречит. А вообще, надо читать Решение о присвоении литеры. Интересно, что там указано?   Интересный вопрос. Если есть указания испытывать экпл. документацию в форме книг, то надо испытывать Я, правда, с этим не сталкивался.
    • SecretOON
      Нет,немного не так,по пунктом: - включаем рубильник(двигатель зароботал),горит ЗЕЛЁНАЯ кнопка. -нажимаем зелёную, запускается насос и она становиться КРАСНОЙ. -после этого можно начать калибровать станок ))  
    • davidovka
      А эксплуатационная документация в форме книг и т.п. проходит испытания? :)
×
×
  • Создать...