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

Написали новую "Спецификацию" с нуля.


Рекомендованные сообщения

Библиотеку чтения сборок Компас написали и выложили.
Прочитал сборку из Компас 8+. Читает быстро, но в обозначение загнал наименование, а в документации в обозначении только СБ.

Прочитал сборку из SW2006SP3. Очень медленно.

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


2 sergei: Спасибо за замечание про наименование, RTW уже поправили и выложили на сайт. Что касается самого обозначения сборки из Компаса - откуда его лучше брать ? Штамп заполняем из информации от чертежа.

Чтение сборки Солида само по себе действительно медленное. Мы используем OLE automation, и по-сравнению с ранним связыванием немного проигрываем по времени (процентов 5), но зато более настраиваемы "выносные" процедуры, что в условиях встречающейся доводки под заказчика имеет важное значение. А с чем Вы сравнивали быстродействие, если не секрет ?

В программе реализовали экспорт листов спецификации в MS Word. Формируется обычный DOC, в него вставляются векторные листы - метафайлы EMF. Выложим это в след. версии (1.04).

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

Юзает ли кто то в SPC2 Bitmap previews моделей в спецификации ? Стоит ли их включать в Полигон (места они отжирают порядочно в файле, но повышают ли юзабилити) ?

<{POST_SNAPBACK}>

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

Что касается самого обозначения сборки из Компаса - откуда его лучше брать ?

Из обозначения файла сборки3D. :smile:

Штамп заполняем из информации от чертежа.

Понятно, только как Вы определяете какой файл чертежа нужно для этого использовать? Можно сделать просто - из файла листа, имя которого совпадает с именем файла 3D сборки.

А с чем Вы сравнивали быстродействие, если не секрет ?

С Навигатором СП.

Ещё насчёт Компаса, ни в коем случае не используйте объекты спецификации, работайте со СВОЙСТВАМИ 3D моделей (обозначение, наименование, материал). Если нужно записать в 3D модель что-то дополнительное - атрибуты.

Рекомендую посмотреть <noindex>Библиотеку "Структура сборки".</noindex>

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

2Sergei. "Навигатор" не пробовали. Сравнивая же быстродействие с SWR, особенных различий не обнаружил. Всего ведь существует 2 способа чтения сборки: через уровень Component и через уровень Feature. Получить состав напрямую, не перебирая Components или Features, нельзя, если использовать документированный API. С другой стороны, уж кому как не SWR был бы известен иной путь, раз уж они торгуют SW на территории эр эф, но и они используют только описанные в API HELP алгоритмы. Разница между вызовами COM (ранне связывание) и OLE Automation (позднее связывание) не дают серьезного преимущества по времени чтения сборок. Перебор объектов на уровне Солида выполняется Солидом же очень медленно, и ускорить здесь что то довольно сложно. Ради интереса попробуем протестировать процедуры во всех вариантах, возможно со временем заменим свой код на более оптимальный. Пока же упор сделаем на функционале, а оптимизацией займемся позже.

За ссылки спасибо.

Выложили версию 1.04. В ней добавлена функция обновления выносок на чертежах, а также сделан экспорт в MS Word.

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

Сравнивая же быстродействие с SWR, особенных различий не обнаружил.

<{POST_SNAPBACK}>

Не знаю что вы сравнивали но ваша спецификация считывала почти 4 мин, а SWR-спецификация 3.5 справилась за 5 секунд.

Вот характеристика сборки:

Вот тема по ускорению построения, в вашей программе все дествия видно в солиде, может их скрыть: <noindex>http://support.solidworks.ru/forum/index.p...amp;hl=скорость</noindex>

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

2 Kelny. Спасибо за ссылку, почитаем. Странно, но имея сопосотавимую с вашей сборку на 320 компонентов (верхнего уровня) имеем время чтения порядка 20 секунд, но никак не 4 минуты.

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

Попробовали. ModelDoc.Visible:=false не дает почти никакого выигрыша - может, секунду. Различия в замерах действительно могут быть, если Вы переключаетесь в Солид - в этом случае снижается приоритет процесса Полигона, раза в 2-3 в зависимости от загруженности системы. Если не переключаться на Солид в момент чтения сборки (благо таймер и счетчик компонентов есть), то на сборке в 320 компонентов время чтения от 18 до 20 секунд. Можем попробовать запускать чтение с более высоким приоритетом.

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

To dimas77

Я перебираю сборки через Components. Особо больших сборок у меня не было, но 2000 компонетов с различной проверкой считывает примерно 1,5- 2 минуты, в зависимости от сборки. Вполне прилично, по моим понятиям. Так что укскоряться, наверное, не имеет смысла, лучше сосредоточиться на функционале. Наибольшая трата времени не в чтении сборки, а в дальнейшей работе со спецификацией.

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

<noindex>Процедура</noindex> новая для чтения сборки. Скопировать вместо старой в папку routines. Переписано с использованием GetRoot.GetChildren... вместо Features.

В 2 раза быстрее точно стало работать. Просьба попробовать на предмет глюков и багов.

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

post-593-1153193384_thumb.jpg

Старый pas около 300 сек - чуть не уснул.

Новый - 178 сек.

1. Отсчет начинается сразу, не дает задержку чтобы выбрать нужные конфигурации.

2. Нет кнопки запуска зачитывания.

3. Результат зачитывания закрывается моментально.

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

При зачитывании окошко обсчета можно закрыть, но при этом общет продолжается, а жаль. Для остановки выгружаю Полигон через три веселые клавиши. На обсчет 100 компонентов ушло около 30 сек(Athlon 1800+).

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

post-1236-1153202377.jpg

SWR - 2мин.

Полигон - 8мин 57сек.

Это просто кошмар, у меня тестовый модуль, над которым ещё работать и работать зачитывает за 3мин 7сек.

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

Всем спасибо, понятно, что новый модуль дает выигрыш в 2 раза - включим его в закачку непосредственно в архив.

2 Игорь: При зачитывании сборки выполняется проверка, сколько у нее конфигураций. Если одна, то диалог выбора не выводится и сразу запускается чтение - выбирать то нечего. Если конфигураций более одной, то диалог выбора выводится.

Кнопку останова сделаем в следующей версии.

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

Да, но время то сразу начинает тикать после нажатия кнопки "зачитать из SW", еще до выбора нужных конфигов. И кнопку пуска надо на окошке конфигураций.

Ссылка на сообщение
Поделиться на других сайтах
  • 2 месяца спустя...

Работа над программой продолжается.

Последние события:

- Добавили бланк групповой спецификации.

- Ввели MDI режим.

- Добавлен UNDO (отмена последнего исправления).

- Значительно доработан алгоритм чтения из SW, обновления выносок. Реально повышена скорость чтения сборок.

- Улучшен интерфейс пользователя.

- Привязаны типы документов к приложению - запуск документа приводит к запуску приложения.

- Введено резервирование позиций.

<noindex>www.swext.nm.ru</noindex>

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

2dimas77

Никак не получается запустить вашу спецификацию

WinXP SP2, права админа, пакеты установлены с вашего сайта, в самом начале требовала

borlndmm.dll, он ставится наполовину, без регистрации так как не может найти точку входа. После запуска спецификации вылетает сообщении об ошибке, в диспетчере появляется spec.exe и доктор ватсон

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

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

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




×
×
  • Создать...