+1

Скрипт для подсчета объема блока методом вертикальных сечений

Pavel Yakovlev (Moderator (RUS)) 8 years ago in Micromine / Scripting updated by НиколайGeoscr 9 months ago 5
Приветствую всех!

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

Окно скрипта выглядит несколько сложнее, если сравнивать его со всеми ранее выложенными скриптами. Так что на нем я остановлюсь поподробнее, чтобы описать его, как можно проще.

Image 645

Итак, окно скрипта содержит три вкладки. Первая - Ввод. На ней нужно выбрать тип tridb и имя каркаса. Тут все просто. Переходим на следующую вкладку:

Image 646

Данная вкладка схожа со вкладкой Срез плоскостей фукнции Каркас\Создать стринги\Планарное пересечение. Тут можно выбрать направление плоскости, точку отсчета, расстояние между плоскостями и их количество. Обязательные поля помечены красным цветом. В случае, если вы хотите получить автоматически точки отсчета (это удобно при ортогональных разрезах), то двойной клик левой кнопки мыши по полю координат заполнит его нужным значением. Смотрим, что нас ждет на третьей вкладке - Вывод.

Image 647

Тут представлено четыре возможных файла вывода:
  1. Файл отчета HTML - это отчет, в котором отображается сводная таблица по сечениям и объемам и сами отрисованные сечения в условных координатах
  2. Файл отчета RPT - это файл отчета Micromine, в котором просто хранится сводная таблица по сечениям и объемам
  3. Файл исходных сечений STR - файл исходных сечений, который получается в результате работы функции Каркас\Создать стринги\Планарное пересечение
  4. Файл сечений в условных координатах - файл сечений в условных координатах, расположенных в начале координат
При желании можно добавить фунцию эскпорта отчета в файл PDF, но я остановился просто на HTML отчете, так как он мне показался более симпатичным. Для возможности создания HTML отчета необходимо установить дополнительный модуль matplotlib (ссылки на него буду представлены ниже). Если вы не установите этот модуль, то функция Файл очтета HTML будет просто недоступна.

В алгоритм подсчета объема заложено две формулы:
  1. Image
  2. Image
где S1 и S2 - площади сечений, l - расстояние между ними. Вторая формула используется в случае, когда сечения отличаются друг от друга более, чем на 40%.

Скрипт много не тестировался, так что жду от вас каких-то комментариев и пожеланий.
Ссылка на скачивание находится тут: GUI - Метод вертикальных сечений.py

Ссылки, по которым можно скачать библиотеку matplotlib:

Для запуска скрипта необходимо установить Python на компьютер, на котором вы пытаетесь запустить скрипт, так как он использует графическую оболочку Tkinter, не встроенную в Micromine. Ниже выберите нужную для вас ссылку:
  • Micromine 2014 32bit – скачайте Python по ссылке.
  • Micromine 2014 64bit – скачайте Python по ссылке.
Важно:
  • Нежелательно устанавливать несколько из представленных выше версий Python на один компьютер.
  • После установки Python нужно перезапустить Micromine, если он был запущен.
Если возникнут какие-то проблемы с запуском или работой скрипта, обращайтесь.

Здравствуйте, подскажите, для макромайна 2018- 2021 каков будет скрипт и что поменяется?

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

с кодировкой была какая -то проблема ,  какая-то краказябра была.
с помощью utf -8 вроде вышло поправить мне
но билиоека 

просит питон 3.3.1

нет ли обновленного скрипта с такими данными просто сейчас выходит что поле не активно...

и выдает ошибку даже когда через pip я загрузил эту библиотеку новую.

хотелось бы чтобы вот это было активное


Николай, в данной теме приведён старый скрипт для ММ14 и ММ16.

Ниже прикладываю актуализированный скрипт, а также мануал по нему.

Скрипт по Подсчёту объемов.rar

благодарю, спасибо!