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

Случайное заполнение детали другими деталями 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 пользователей

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




  • Сообщения

    • eljer0n
      Большое спасибо! Посмотрю. Но, судя по всему, даже если удастся заставить его сохранять чертеж с трехзначным исполнением, видимо, в той же спецификации правильного отображения не добиться. У Леона с товарищем был об этом разговор, что солид вроде как не воспринимает исполнения дальше двузначного. Хотя, может и я неправильно понял. Вернусь к этому вопросу чуть позже. Еще раз спасибо за совет.
    • mrVladimir
      @gudstartup @Viktor2004 спасибо Вам за такое участие.  Я вот тоже в maintenance manual заглянул (наконец-то ). А вот фраза "при замене FROM/SRAM необходимо ..." (под пунктом 3 во вложении) не подразумевает, что появление ps5523 произойдет только если мы решим на нашей чпу поменять именно FROM/SRAM. А при замене других печатных плат (в том числе и материнской ) необходимо только как написано в пункте 2 восстановить данные памяти SRAM и, при необходимости, файлы пользователя. Нет?
    • maxx2000
      @davidovka это же очевидно. Вдруг нужного размера не окажется  как в анекдоте  
    • davidovka
      А для чего и сотни исполнений в таблице и гибкость одновременно?
    • ak762
      в СВ есть встроенный калькулятор для расчета балок при различных сценариях нагружения если ваш профиль монорельса совпадает с предопределенными профилями то можно прикинуть поведение монорелься без анализа на картинке 2 расчета двутавровой балки в качестве теста    
    • Viktor2004
      @mrVladimir не спешите отчаиваться. Вопрос спорный Я завел новую тему в которой мы это выясним  
    • Viktor2004
      Уважаемые специалисты. У кого был опыт замены фануковских плат? Именно на ЧПУ. Пожалуйста напишите какое ЧПУ и какую плату меняли И результат. Подошла или не подошла  
    • gudstartup
      @mrVladimir к сожалению с вашей платой все не так просто вам придется приобрести ее клон то есть она должна быть подготовлена продавцом и в нее должен быть записан серийный номер вашей старой платы он на штрихкоде а так готовить умеют не все или готовьтесь к сертификации опций также есть еще один аппаратный вариант но не каждый будет на новую плату м\сх перепаивать с риском превратить ее в кирпич.   если бы у вас был отдельный модуль процессора то вы бы просто переставили его в новую плату и все а с этой платой из-за ее не модульности намучаешься
    • SAPRonOff
      в окне состава изделия снять замочки у колонки позиция, тогда генератор колонки состава изделия не будет им присваивать свои значения автоматически, а запомнит то - что вы поставили или стояло до изменений проекта: 
    • Kelny
      Смотреть надо процедуру main, почти в самом конце: Слева от этих строк на сером поле ставите красные точки (клик мышкой) и запускаете макрос, когда макрос дойдёт до обозначенных строк можно будет наводить мышку на перменные, например, sPathName и смотреть значения, что бы определить где сбой: Для продолжения выполнения макроса нажимаем зелёный треугольничек (как кнопка Play).      
×
×
  • Создать...