Author Topic: Новая версия SuperBoundary v.1.0.1.40  (Read 22216 times)

Debalance

  • Administrator
  • Jr. Member
  • *****
  • Posts: 68
    • View Profile
Новая версия SuperBoundary v.1.0.1.40
« on: February 27, 2017, 11:08:27 AM »
Разместил новую версию программы SuperBoundary v.1.0.1.40.
Перечень обновлений:
1. Исправлена некорректность работы программы при генерации контуров с внутренними островками, образованными двумя и более совпадающими окружностями.

2. Добавлена поддержка работы с внешними ссылками (XREF).

3. В настройках программы добавлен параметр Combine polylines into groups (Объединять полилинии в группы):


Данная опция становится доступной после активации функции Island detection (Решение островков). Таким образом все обнаруженные островки-полилинии будут объединяться в группу вместе с содержажей их родительской полилинией. На рисунке ниже показан пример такой группы, в котором родительская полилиния объединена с двумя окружностями-островками:


4. Добавлен вывод информации о генерируемых контурах в текстовое окно AutoCAD в режиме указания точки:


Помимо сообщения об успешном/неуспешном создании контура вывоится информация о его результирующей площади и количестве обнаруженных островков. При этом отображаемое значение площади содержит в себе площадь родительского контура за вычетом площади всех островков (в случае их наличия).
« Last Edit: March 01, 2017, 07:57:17 PM by Debalance »

АлексЮстасу

  • Newbie
  • *
  • Posts: 27
    • View Profile
Re: Новая версия SuperBoundary v.1.0.1.40
« Reply #1 on: February 28, 2017, 05:22:05 PM »
Сейчас в этой новой версии при создании отверстий ("островов") создаются лишние их контуры. Они создаются дважды - и в составе группы с общим их контуром, и еще и для каждого отверстия.

Debalance

  • Administrator
  • Jr. Member
  • *****
  • Posts: 68
    • View Profile
Re: Новая версия SuperBoundary v.1.0.1.40
« Reply #2 on: February 28, 2017, 07:25:37 PM »
... Они создаются дважды - и в составе группы с общим их контуром, и еще и для каждого отверстия.
Если вы говорите про режим BUILD ALL - то это естественно: ведь программа условно "тыкает" в область каждого контура. И если у Вас островок является простым отверстием - то такой "эффект" неизбежен. Если же и островок у вас "комплексный" т.е. состоящий из подостровков или разделённый на несколько частей - то программа в таком режиме пробежится по каждому из них, предварително создав внешний контур "комплексного" островка.
В случае если у Вас в чертеже много подобных простых островков - просто отключайте опцию "Решение островков".
« Last Edit: February 28, 2017, 07:50:58 PM by Debalance »

АлексЮстасу

  • Newbie
  • *
  • Posts: 27
    • View Profile
Re: Новая версия SuperBoundary v.1.0.1.40
« Reply #3 on: February 28, 2017, 08:14:47 PM »
До меня дошло: общий контур с отверстиями и отдельно контуры самих отверстий.
С этим все в порядке!

АлексЮстасу

  • Newbie
  • *
  • Posts: 27
    • View Profile
Re: Новая версия SuperBoundary v.1.0.1.40
« Reply #4 on: March 08, 2017, 03:47:22 AM »
Таки не забыть бы об опциональности учета блоков.
Без блоков, очевидно, делаться будет еще быстрее. И блоки в случае создания контуров, по-моему, вообще учитывать не нужно.
Кстати, пришло в голову сейчас, что и со штриховками-заливками блоки учитывать не особо-то и нужно. Или вообще не нужно. Если блоки без масок внутри, то, значит, их вырезать из штриховок-заливок не нужно. Если блоки со своими масками, то просто положить их сверху.
То же и с однострочными текстами (под многострочными можно свой фон просто включить). Если уж нужно, то можно маски с помощью Express Tools сделать. Такие тексты с масками сразу в группы объединены - легче сдвигать, поворачивать и т.п.
Но далеко не всегда и нужно вокруг текстов вырезать заливки-штриховки. Опять-таки, насколько широко обрезать относительно текстов?
Да и после вырезания блоков и/или текстов нельзя по штриховкам-заливкам подсчитывать правильно площадь; при сдвигании-разворотах блоков/текстов нужно сдвигать-разворачивать и заливки-штриховки или их созданный контур.
Т.е. сделать бы учет блоков опциональным, и по-умолчанияю выключенным.

АлексЮстасу

  • Newbie
  • *
  • Posts: 27
    • View Profile
Re: Новая версия SuperBoundary v.1.0.1.40
« Reply #5 on: March 08, 2017, 05:04:59 PM »
К предыдущему:
В режиме Создать все для всех блоков будут созданы отдельные штриховки/контуры. Какой в них смысл, кроме достаточно редких случаев? Пользоваться ими неудобно. Признака для выделения именно таких штриховок/контуров нет. Разве что площадь? У каждого описания блока она своя. И т.д.

Debalance

  • Administrator
  • Jr. Member
  • *****
  • Posts: 68
    • View Profile
Re: Новая версия SuperBoundary v.1.0.1.40
« Reply #6 on: March 09, 2017, 03:48:51 PM »
Вот, например, фрагменте чертежа из предыдущего топика:



На нём маленькие кружки - это блоки. Если их игнорировать, то чертёж сильно измениться (ибо кружков много). Это будет хорошо?

АлексЮстасу

  • Newbie
  • *
  • Posts: 27
    • View Profile
Re: Новая версия SuperBoundary v.1.0.1.40
« Reply #7 on: March 09, 2017, 04:50:03 PM »
Ну, да, изменится - не будет этих не нужных практически "кружков". Т.е. в лучшую сторону. :)
Не нужно терять возможность обводить контурами блоки или заливать площади блоков, раз такая уже есть. Но нужно это, по-моему, только в редких экзотических случаях. Т.е. опционально.
« Last Edit: March 09, 2017, 05:09:48 PM by АлексЮстасу »

Debalance

  • Administrator
  • Jr. Member
  • *****
  • Posts: 68
    • View Profile
Re: Новая версия SuperBoundary v.1.0.1.40
« Reply #8 on: March 09, 2017, 08:59:39 PM »
Вы тут давеча сказали:
... Если блоки со своими масками, то просто положить их сверху.
Что такое "маски"? Поясните. Возможно я не всё знаю в Акаде...

Т.е. в лучшую сторону.
Не совсем понимаю Вашу тезу. Если "кружки" это своего рода аппендикс в чертеже, то зачем их вообще наносить? Ибо их много - целая "Палестина"! А ведь это серьёзный труд - нанесение "кружков"!

АлексЮстасу

  • Newbie
  • *
  • Posts: 27
    • View Profile
Re: Новая версия SuperBoundary v.1.0.1.40
« Reply #9 on: March 09, 2017, 09:20:42 PM »
Что такое "маски"?
Маски == маскировка == wipeout. Если люди хотят, чтобы их блоки вырезались из фона, скрывали линии под собой, то внутрь блоков делают нужной площади маски. Чаще бесцветные, т.е. цвет 255.
Не совсем понимаю Вашу тезу. Если "кружки" это своего рода аппендикс в чертеже, то зачем их вообще наносить? Ибо их много - целая "Палестина"! А ведь это серьёзный труд - нанесение "кружков"!
Моя теза все та же - в большинстве случаев создавать контуры/заливки в площадях блоков не нужно. Т.е. нужна опциональность этой возможности. Причем, по умолчанию выключенной.
А на эту не оч. нужную возможность тратится, очевидно, море ресурсов и времени. Может быть на тот тяжелый файл-пример в 60 Мб без учета блоков потребуется не 36, а 6 минут работы? :)

« Last Edit: March 09, 2017, 09:30:35 PM by АлексЮстасу »

Debalance

  • Administrator
  • Jr. Member
  • *****
  • Posts: 68
    • View Profile
Re: Новая версия SuperBoundary v.1.0.1.40
« Reply #10 on: March 09, 2017, 09:30:18 PM »
Маски == маскировка == wipeout...

A, Вайпауты! Ну это грубоватое изделие... Насколько я помню контур вайпаута может состоять только из ломаной линии без скруглений (дуг). Может ли он повторить в точности контур блока? По-моему нет...

АлексЮстасу

  • Newbie
  • *
  • Posts: 27
    • View Profile
Re: Новая версия SuperBoundary v.1.0.1.40
« Reply #11 on: March 09, 2017, 09:38:07 PM »
A, Вайпауты! Ну это грубоватое изделие... Насколько я помню контур вайпаута может состоять только из ломаной линии без скруглений (дуг). Может ли он повторить в точности контур блока? По-моему нет...
Ничего страшного - кому нужно, те делают.
В том тестовом тяжелом файле на 60 Мб есть блоки с масками. Например, 108(1), 213 и пр.
А кто не сделал, тот... Тот пусть пользуется опциональной возможностью. И мучается, выбирая штриховки на таких блоках. Перемещая-вращая такие штриховки вслед за своими блоками.
Да еще и затягивая дыры во внешних штриховках после таких перемещений-вращений.


Debalance

  • Administrator
  • Jr. Member
  • *****
  • Posts: 68
    • View Profile
Re: Новая версия SuperBoundary v.1.0.1.40
« Reply #12 on: March 09, 2017, 10:11:33 PM »
В принципе для того, чтобы исключить из выбора (селекшнсета) блоки или какие-либо примитивы можно воспользоваться стандартным Акадовским функционалом "Quick Select". Вот например окно с настройками для исключения блоков:



А далее жмём ОК и запускаем SuperBoundary, которая подцепит текущий выбор и спокойно работаем без блоков... Вас не устраивает такой подход?

АлексЮстасу

  • Newbie
  • *
  • Posts: 27
    • View Profile
Re: Новая версия SuperBoundary v.1.0.1.40
« Reply #13 on: March 10, 2017, 03:20:00 AM »
Насколько я помню контур вайпаута может состоять только из ломаной линии без скруглений (дуг). Может ли он повторить в точности контур блока? По-моему нет...
Никто не мешает в блоках использовать в качестве масок вместо вайпаутов штриховки. Мы сначала так и делали, и многие так делали.
В принципе для того, чтобы исключить из выбора (селекшнсета) блоки или какие-либо примитивы можно воспользоваться стандартным Акадовским функционалом "Quick Select". А далее жмём ОК и запускаем SuperBoundary, которая подцепит текущий выбор и спокойно работаем без блоков... Вас не устраивает такой подход?
Можно и так.
Один недостаток в том, что для тяжелых файлов процесс выбора может быть очень долгим - многие минуты и десятки минут. А второй в том, что не самое нужное и целесообразное действие выполняется априори, что будет требовать от пользователей лишних действий, и приводить к регулярным несуразностям. Представьте себе, например, что команда MOVE (любая другая) всегда двигает и блоки. Да, можно предварительно блоки qselect'ом исключать. Но зачем такое надо?

О выборе раньше уже раза два начинали обсуждать. Я все еще надеюсь, что Вы рассмотрите вариант при запуске выполнения программы <Выбрать все> по умолчанию. Чтобы Автокад впустую не загружать этим процессом.

АлексЮстасу

  • Newbie
  • *
  • Posts: 27
    • View Profile
Re: Новая версия SuperBoundary v.1.0.1.40
« Reply #14 on: June 21, 2017, 05:39:51 PM »
Пытался создать внешний контур при возможных больших расстояниях между элементами. Получилась линия, пересекающая линии чертежа, и не захватывающая некоторые объекты.
На скринах созданный контур - белая линия.

В файле много 3д полилиний, и может быть из-за этого?
« Last Edit: June 21, 2017, 05:58:56 PM by АлексЮстасу »