NikSis

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

Pinned posts

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

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

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


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


UnPinned posts

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

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

maxresdefault.jpg

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

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


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

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

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

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

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

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


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

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

Изменено пользователем 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 пользователей

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



  • Реклама

  • Сообщения

    • mestnyi
      Часть программы  %
      Oxxxxx (KRYSHKA)
      N1 G17 G40 G49 G80 
      N2 G00 G54 G90 
      N3 T01 M6 
      N4 S820 M03
      .....
      N171 G00 Z50. M09
      N172 G49 H
      N173 G28 G91 Y0 Z0
      N174 M30
      %
    • soklakov
      никак нет, капитан. а оси призм совпадают?
    • DuS
    • Danial
      У нас на прессе удар при подьеме балки происходил из -за ослабленного крепления гидроцилиндра к самой балке.
    • VicktorVR
      Еще один момент: при задании параметров токарного инструмента, если поставить в числе вместо точки запятую, то Спрут просто отбрасывает все цифры после запятой, причем молча. Прям таки элемент вредительства :) Т.е. программа позволяет вбить к примеру радиус 1,2мм - отображает 1,2 в поле ввода, не выдает никаких ошибок при нажатии ОК. Просто при расчете принимает радиус 1мм и при следующем открытии окна вы увидите радиус 1мм. Почему бы не запретить символ запятой вообще в данном поле или не выдавать ошибку о неправильных данных в поле радиуса или совсем уж запредельно - автоматически заменять запятую на точку...
    • jtok
      Это был я. Где мои дивиденды??!
    • Machinist
      В своих ..овнороликах снятых на дешёвый, мобильный телефон, на канале youtube Вы обещали в 2018 году выплату дивидендов всем вложившимся гражданам. Сколько вложилось и скольким Вы выплатили? Повторюсь: Вы старый балабол и маразматик, который носится по инету со своей флеш-поделкой уже который год и рассказывает о своей гениальности и исключительности в условиях тотального саботажа. Ни до конца этого года, ни следующего - Вы ничего не создадите кроме сотен постов на различных форумах. Надеюсь, последующие ваши сообщения будут отправлены из ближайшей психиатрической клиники.
    • Ljo
      Лучше в такие точные соединения закладывать всегда компенсационное звено! Например, под ваш клин заложить пластинку толщиной 5 мм, которую можно шлифовать и тем самым подгонять левый/правый запорный клин ползуна. Упростите работу слесарю и ваш проект будет работать дольше и надёжнее! Ещё можно использовать шариковые фиксаторы компании Meusburger, где сам фиксатор с контрящим уплотнением идёт в состоянии поставки. Superior же использует двоенные шариковые фиксаторы в одном корпусе, который естественно имеет продолговатую форму и проворачивается. Минусом последней является то, что и в ползун надо интегрировать соответствующие вставки.
    • DJ Astro
      Как вывести в отчет значение определенной переменной после каждой программы внутри одной установки? Вывод вставлен в зацикленную часть отчёта между (Start NC Program Loop)-(End NC Program Loop). Но в итоговый отчёт по всем программам выводит только последнее актуальное значение. Причём выводит даже у тех программ, которые ещё не работали.
    • Клиент
      G53- работает так же как и G54 и остальные нули. Отличие только в том, что мы не меняем координаты этой точки.  G28 не отменяет коррекцию. У нее принцип работы отличается. С G53 при активной коррекции улетит в неправильном направлении, с G28 этого не случится.