| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Импорт армирования результатов армирования из расчетных программ в Автокад

Импорт армирования результатов армирования из расчетных программ в Автокад

Ответ
Поиск в этой теме
Непрочитано 30.01.2013, 07:36
Импорт армирования результатов армирования из расчетных программ в Автокад
DEM
 
YngIngKllr
 
СПб
Регистрация: 29.03.2005
Сообщений: 12,968

Собственно есть файл с расширением ASF, это результаты расчета армирования СКАДа...
В файле представлена сетка МКЭ и армирование по слоям в направлениях Х и У.
Вот разобранный файл...
Цитата:
GL POLY 17 -это пока не разобрался что.....
37.000 21.950 0.000
37.000 4.350 0.000
34.500 4.350 0.000
...... ...... .......
GP KNOT 5173-это номера и координаты точек
1 37.000 10.350 3.600
2 37.000 16.350 3.600
3 18.450 0.000 3.600
4 20.750 22.200 3.600
...... ...... .......
GF ELEM 5062-это номера элементов с номерами узлов
1 8 12 414 22
2 22 414 429 23
3 23 429 444 24
4 24 444 459 25
...... ...... .......
QR 1 252510 0.000 0.000 0.000 0.000 90.000 - это армирование элементов по слоям
QM 0 0 34.300 0.200 3.600 0.58 0.51 0.00 0.00 0.00 0.00
QM 0 0 34.300 0.600 3.600 1.07 0.97 0.00 0.00 0.00 0.00
QM 0 0 34.300 1.000 3.600 1.44 1.32 0.00 0.00 0.00 0.00
QM 0 0 34.300 0.200 3.600 0.58 0.51 0.00 0.00 0.00 0.00
( 0 0 34.300 0.200 3.600/это зачем то опять координаты/ 0.58/армирование верхнее по Х/ 0.51/армирование верхнее по У/ 0.00/армирование нижнее по Х/ 0.00/армирование нижнее по У/ 0.00 0.00/эти значения пока не разобрал, по всей видимости поперечное армирование....)
Собсно хотелось бы сделать программку которая бы позволяла, импортировать сетку МКЭ из данного файла в автокад в виде блока. Конечные элементы импортировать в виде регионов и назначать им цвет в зависимости от того сколько требуется арматуры.....
Получится 6 блоков соответственно
Армирование нижнее по Х
Армирование верхнее по Х
Армирование нижнее по У
Армирование верхнее по У
Армирование поперечное по Х
Армирование поперечное по У

Предложение к заинтересовавшимся, которые могут программировать в Лиспе, помочь сделать эту программу, я Лиспом давно не занимался, а сейчас в основном на Делфях сижу...
В принципе данную программку можно и на NET сделать.....
PS. Файло с расширением ASF прилагаю...

Вложения
Тип файла: zip Сборка05.zip (121.7 Кб, 444 просмотров)

__________________
Работаю за еду.
Working for food.
Für Essen arbeiten.
العمل من أجل الغذاء
Працую за їжу.

Последний раз редактировалось DEM, 31.01.2013 в 21:06.
Просмотров: 148929
 
Непрочитано 17.08.2021, 11:20
#361
румата


 
Регистрация: 06.04.2015
Сообщений: 2,676


Цитата:
Сообщение от Boxa Посмотреть сообщение
Нет. Этот инструмент позволяет Вам в описать структуру файла и потом по этому описанию сгенерирует код на выбранном языке, который будет работать с бинарным файлом.
А как описать структуру не зная что и как хранится в исходном бинарном файле? Может у Вас есть пример работы с файлами .lir ?
румата вне форума  
 
Непрочитано 17.08.2021, 11:48
#362
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588


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

Цитата:
Сообщение от румата Посмотреть сообщение
Может у Вас есть пример работы с файлами .lir ?
Вы же сами написали, что это бинарный файл и примеров работы с бинарными файлами в сети полно на любом языке, а вот по поводу структуры файла я предпочту промолчать т.к. у меня пока нет полного описания файла.
Boxa вне форума  
 
Непрочитано 17.08.2021, 11:52
#363
румата


 
Регистрация: 06.04.2015
Сообщений: 2,676


Цитата:
Сообщение от Boxa Посмотреть сообщение
медленно и аккуратно менять файл и следить за изменениями внутри, наблюдать и догадываться. Другого пути нет.
Т.е. сначала создать пустой файл - посмотреть что у него внутри. Потом создать файл с одним узлом - снова посмтореть и сделать какой-то вывод, скорей всего ошибочный, о структуре файла. И так далее с элементами, нагрузками и прочим?
румата вне форума  
 
Непрочитано 17.08.2021, 11:57
#364
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588


румата, да, как то так
Boxa вне форума  
 
Непрочитано 30.08.2021, 12:51
#365
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588


Вроде бы даже получилось сделать, т.е. алгоритм вполне себе рабочий: https://youtu.be/VuGvz-GT9A4
Что не попало в видео:
Длина арматуры подбирается кратной 11700, если это возможно в заданном пределе
Ширина раскладки кратна шагу
Арматура и шаг берутся из настроек шкалы в лире (Для этого пришлось частично расковырять lir файл, что не соответствует изначальному замыслу, но с другой стороны можно написать свою шкалу...)
Арматура и шаг для участков армирования берутся по наибольшему, это простейший метод пока не придумаю как пересчитывать интенсивность армирования выводимую лирой для отрисовки несколько более узких поясов
Boxa вне форума  
 
Автор темы   Непрочитано 30.08.2021, 17:06
#366
DEM

YngIngKllr
 
Регистрация: 29.03.2005
СПб
Сообщений: 12,968


Отлично получилось...
Но видишь ли нынче мода на Нейронные сети пошла...
Теперь вполне можно без расчетов оказывается армировать...
МКЭ Лира/СКАД/Ансис прошлый век.
__________________
Работаю за еду.
Working for food.
Für Essen arbeiten.
العمل من أجل الغذاء
Працую за їжу.
DEM вне форума  
 
Непрочитано 30.08.2021, 17:54
#367
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588


Я не модный и свой каменный топорик выкидывать не собираюсь =о)... Но для завершения проекта, все таки нужно разобрать лировский файл подробнее, нужны настройки толщин элементов, настройки защитных слоев и ещё всякого по мелочи...
Boxa вне форума  
 
Автор темы   Непрочитано 31.08.2021, 12:30
#368
DEM

YngIngKllr
 
Регистрация: 29.03.2005
СПб
Сообщений: 12,968


Цитата:
Сообщение от Boxa Посмотреть сообщение
Я не модный и свой каменный топорик выкидывать не собираюсь =о)... Но для завершения проекта, все таки нужно разобрать лировский файл подробнее, нужны настройки толщин элементов, настройки защитных слоев и ещё всякого по мелочи...
А не проще из ASF?
Там же все данные есть.
Из Лиры можно экспортировать ASF тоже насколько я знаю..
__________________
Работаю за еду.
Working for food.
Für Essen arbeiten.
العمل من أجل الغذاء
Працую за їжу.
DEM вне форума  
 
Непрочитано 31.08.2021, 15:08
#369
румата


 
Регистрация: 06.04.2015
Сообщений: 2,676


Цитата:
Сообщение от DEM Посмотреть сообщение
А не проще из ASF?
Проще конечно. И шкалу свою создать тоже проще, чем выковыривать ее из .lir файлов. И пересчет относительно фоновой, если значения вычисленной арматуры в XData записаны для каждого отображения КЭ, тоже элементарно делается.

----- добавлено через ~1 мин. -----
Цитата:
Сообщение от DEM Посмотреть сообщение
Из Лиры можно экспортировать ASF тоже насколько я знаю..
Из лиры можно и в csv и в тхт арматуру выводить. как для пластин так и для стержней
румата вне форума  
 
Непрочитано 31.08.2021, 16:07
#370
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588


Цитата:
Сообщение от DEM Посмотреть сообщение
А не проще из ASF?
не проще, у этого asf формата существенные ограничения на количество элементов, я это показывал в 304 сообщении, что при современных реалиях в сотни тысяч элементов сказывается очень плохо.

Цитата:
Сообщение от румата Посмотреть сообщение
Из лиры можно и в csv и в тхт арматуру выводить. как для пластин так и для стержней
Я наверное плохо искал =( иначе не стал бы разбирать бинарник
Boxa вне форума  
 
Непрочитано 31.08.2021, 16:50
#371
nickname2019


 
Регистрация: 18.11.2019
Сообщений: 1,519


Цитата:
Сообщение от Boxa Посмотреть сообщение
не проще, у этого asf формата существенные ограничения на количество элементов, я это показывал в 304 сообщении, что при современных реалиях в сотни тысяч элементов сказывается очень плохо.
Как показала практика, в asf в разделе GF ELEM на один номер отводится пять символов. Если номер состоит из более чем 4-х символов, то образуется единая строчка.
Например, номера 99124 и 99125 в файле выглядят как одна строка "9912499125".
Но это не значит, что их нельзя распарсить - для этого нужно нумерацию разбивать по пять символов.

Более того, нумерация в файле *.asf осуществляется на выводимый уровень (один этаж и т.д.), при этом в одном уровне количество элементов обычно не настолько большое, чтобы выйти за указанные ограничения.
Я, вообще, я не уверен, что эти ограничения существуют на практике, так как Лира и Скад могут самостоятельно разбивать эти номера пробелами так, что их можно будет прочитать и распарсить.

Мы сейчас выводим армирование через формат asf, проблем за 5-8 лет ни разу не было.
P.S. Но SCAD не позволяет выводить плиты разных уровней в один файл, может быть по-этому и нет проблем с нумерацией (в одном файле слишком мало элементов). Товарищи также работают с Лирой через asf, проблем тоже нет.
nickname2019 вне форума  
 
Непрочитано 31.08.2021, 17:12
#372
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588


nickname2019, у меня сейчас в работе подземный паркинг, он довольно большой, там ростверк что то типа 153 тыс. элементов... то, что Вам не попадались такого рода коллизии, это очень хорошо, увы так везет не всем. =(

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

Последний раз редактировалось Boxa, 31.08.2021 в 17:20.
Boxa вне форума  
 
Непрочитано 31.08.2021, 17:35
#373
nickname2019


 
Регистрация: 18.11.2019
Сообщений: 1,519


Цитата:
Сообщение от Boxa Посмотреть сообщение
nickname2019, у меня сейчас в работе подземный паркинг, он довольно большой, там ростверк что то типа 153 тыс. элементов... то, что Вам не попадались такого рода коллизии, это очень хорошо, увы так везет не всем. =(
Конечно, можно уровень разбить на несколько участков и армирование вывести для каждого участка.
Но было бы интересно посмотреть есть ли действительно эта проблема на практике сегодня. Вполне возможно, что Лира и Скад научились эту проблему обходить.
Я не настаиваю, просто интересно.
nickname2019 вне форума  
 
Непрочитано 31.08.2021, 18:12
#374
румата


 
Регистрация: 06.04.2015
Сообщений: 2,676


Цитата:
Сообщение от Boxa Посмотреть сообщение
Я наверное плохо искал =( иначе не стал бы разбирать бинарник
Наверно плохо

----- добавлено через ~11 мин. -----
Цитата:
Сообщение от Boxa Посмотреть сообщение
не проще, у этого asf формата существенные ограничения на количество элементов, я это показывал в 304 сообщении, что при современных реалиях в сотни тысяч элементов сказывается очень плохо.
Работа с кусками плиты численностью до 100тыс.КЭ все равно проще чем ковырять бинарники. Лично для меня так реально быстрее получится.
Миниатюры
Нажмите на изображение для увеличения
Название: Безымянный1.png
Просмотров: 76
Размер:	17.6 Кб
ID:	240206  Нажмите на изображение для увеличения
Название: Безымянный2.png
Просмотров: 75
Размер:	16.4 Кб
ID:	240207  
румата вне форума  
 
Непрочитано 31.08.2021, 18:42
#375
nickname2019


 
Регистрация: 18.11.2019
Сообщений: 1,519


Цитата:
Сообщение от румата Посмотреть сообщение
Наверно плохо

----- добавлено через ~11 мин. -----

Работа с кусками плиты численностью до 100тыс.КЭ все равно проще чем ковырять бинарники. Лично для меня так реально быстрее получится.
А проблема вообще все еще есть?
nickname2019 вне форума  
 
Непрочитано 31.08.2021, 18:56
#376
румата


 
Регистрация: 06.04.2015
Сообщений: 2,676


Цитата:
Сообщение от nickname2019 Посмотреть сообщение
А проблема вообще все еще есть?
Нет и не было никакой проблемы. Есть только некоторого рода неудобство при работе с asf из-за выше названного ограничения на длину целочисленного значения номера узла/элемента. Но при выводе армирования в автокад это несущественно. Можно с успехом работать с несколькими asf для разных участков плиты постепенно "сгружая" данные в автокад. Для привязки значений вычисленного армирования к примитивам автокада довольно удобно использовать расширенные данные xData, а не номера элементов. Это позволяет избавится от приязки значений армирования к цветам, слоям и т.п. и, повторно, в любой момент времени выводить в пространство модели нужные данные не используя более импорт из сторонних форматов.
румата вне форума  
 
Непрочитано 31.08.2021, 19:07
#377
nickname2019


 
Регистрация: 18.11.2019
Сообщений: 1,519


Цитата:
Сообщение от румата Посмотреть сообщение
Нет и не было никакой проблемы. Есть только некоторого рода неудобство при работе с asf из-за выше названного ограничения на длину целочисленного значения номера узла/элемента. Но при выводе армирования в автокад это несущественно. Можно с успехом работать с несколькими asf для разных участков плиты постепенно "сгружая" данные в автокад. Для привязки значений вычисленного армирования к примитивам автокада довольно удобно использовать расширенные данные xData, а не номера элементов. Это позволяет избавится от приязки значений армирования к цветам, слоям и т.п. и, повторно, в любой момент времени выводить в пространство модели нужные данные не используя более импорт из сторонних форматов.
Я не понял смысла использования xData.
Мы уже давно выводим полилинии с текстами внутри. Тексты можно подкрашивать/перекрашивать в зависимости от значения. Имхо, никакие изополя не нужны. (см. вложение)
Вложения
Тип файла: dwg
DWG 2007
Пример.dwg (3.21 Мб, 27 просмотров)
nickname2019 вне форума  
 
Непрочитано 31.08.2021, 19:19
#378
румата


 
Регистрация: 06.04.2015
Сообщений: 2,676


Цитата:
Сообщение от nickname2019 Посмотреть сообщение
Я не понял смысла использования xData.
Мы уже давно выводим полилинии с текстами внутри.
Вы водите минимум четыре дубля полилинии с различными текстами внутри. Эти тексты никак не связаны с полилиниями. А я говорю про один раз отрисованную полилинию и привязку к ней сразу четырех значений площади арматуры, которые можно "дергать" и выводить в текст(пересчитанный с учетом принятой фоновой арматуры)по своей надобности даже не дублируя саму полилинию. Получается некоторое подобие работы с базой данных, где за элемент таблицы принят графический примитив, представляющий КЭ расчетной схемы.
румата вне форума  
 
Непрочитано 31.08.2021, 20:34
| 1 #379
v.psk

конструктор
 
Регистрация: 14.08.2014
Псков
Сообщений: 7,113


Offtop: Продайте уже кто-нибудь свои наработки скаду....
v.psk вне форума  
 
Непрочитано 01.09.2021, 05:57
#380
nickname2019


 
Регистрация: 18.11.2019
Сообщений: 1,519


Цитата:
Сообщение от румата Посмотреть сообщение
Вы водите минимум четыре дубля полилинии с различными текстами внутри. Эти тексты никак не связаны с полилиниями.
Каждый текст находится внутри замкнутой полилинии, т.е. логическая связь есть. При необходимости сопоставления текста и полилинии достаточно геометрически проверить какой текст находится внутри какой полилинии. Это удобно при автоматическом анализе, например для подсчета теоретического армирования как суммы площадей полилиний, умноженных на значение армирования текстов внутри этих полилиний.
Цитата:
Сообщение от румата Посмотреть сообщение
А я говорю про один раз отрисованную полилинию и привязку к ней сразу четырех значений площади арматуры, которые можно "дергать" и выводить в текст(пересчитанный с учетом принятой фоновой арматуры)по своей надобности даже не дублируя саму полилинию. Получается некоторое подобие работы с базой данных, где за элемент таблицы принят графический примитив, представляющий КЭ расчетной схемы.
У нас в чертежах под каждым слоем арматуры подложены поля армирования (слой потом морозится). Фоновую арматуру мы не вычитаем. При необходимости визуализировать результаты на предмет дополнительной арматуры можно перекрасить тексты (программка была, когда значение текста в определенном диапазоне значения подкрашивается цветом). Тексты значения которых меньше или равны фоновой арматуре оставляются белыми. Получается достаточно наглядно (см. файл "пример.dwg" выше) и поля пересчитывать не нужно.
При таком подходе нет смысла отдельно хранить "базу данных" с xData, так как под каждым слоем разложенной арматуры подложены поля армирования (которые потом можно заморозить).
nickname2019 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Импорт армирования результатов армирования из расчетных программ в Автокад

Размещение рекламы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Импорт плоской схемы из Автокад в Лиру vadimys Лира / Лира-САПР 21 14.09.2012 00:01
1.напряжения в SCAD 2. перенос эпюры из скада в автокад poleon SCAD 5 13.12.2009 17:12
импорт в автокад 2010 wzm AutoCAD 2 23.09.2009 22:48
импорт из лиры в автокад funky_Frankie Лира / Лира-САПР 3 06.09.2008 09:11
Импорт в Автокад RINga AutoCAD 3 19.04.2007 19:54