Автоматизация составления спецификаций в nanoCAD СПДС или СПДС GraphiCS
О том, что с помощью универсальных маркеров можно автоматизировать процесс составления экспликации полов в nanoCAD СПДС, известно достаточно давно, и об этом очень подробно изложено в публикации А.Цветкова "Автоматизация составления экспликации полов в nanoCAD СПДС". В сети интернет имеются и другие публикации, реализующий процесс автоматизации связи данных между универсальными маркерами и таблицами спецификаций.
Во всех этих реализациях универсальные маркеры выполняют роль "посредников передачи данных" в таблицы (экспликации или спецификации), что может привести к ошибкам, так как при редактировании стандартной детали можно забыть и не исправить данные в универсальном маркере, что приведет к несоответствию графических и табличных данных на чертеже. Конечно, этих ошибок можно избежать если унаследовать в универсальные маркеры свойства стандартных деталей, но практика проектирования показала, что использование "посредников" и есть другой более надежный способ обеспечить соответствии графических и табличных данных в автоматическом режиме. 
Сегодня мы покажем, как можно автоматизировать процесс составления спецификаций путем импорта данных непосредственно со стандартных деталей в таблицы (спецификации или экспликации), минуя "посредника" (универсального маркера). 
В действительности стандартные детали имеют все необходимые данные для составления на их основе спецификаций, за исключением их идентификации. Идентификация стандартных деталей в стандартной библиотеки не реализована, как нам кажется по концептуальным соображениям, тогда как технических причин нет. Сегодня роль идентификации отведена универсальным маркерам или другим элементам оформления чертежей в среде nanoCAD и/или СПДС GraphiCS. 
Если в скрипт стандартных деталей добавить несколько переменных для идентификации, то как было отмечено ранее, можно обойтись "без посредников" для автоматического составления спецификаций и/или экспликаций.
Конечно, можно обойтись и одной переменной для идентификации стандартных деталей, но мы предлагаем несколько усложнить скрипт объектов и определить три публичные переменные в теле функции ActHeader. Скрины тела функции ActHeader до и после добавления переменных идентификации представлены ниже, на примере стандартной делали (объекта) СТО АСЧМ 20-93. 
  
Кроме того, необходимо присвоить начальные значения наших переменных в теле функции OnInitialization (см. пример). Каким образом, для идентификации стандартных деталей в предлагаемой нами редакции альтернативной базы объектов SPDS, в тело скрипта объекта СТО АСЧМ 20-93 добавлены три переменные Prefix (Префикс позиции), Position (Позиция спецификации) и Suffix (Суффикс позиции). Для того чтобы эти переменные идентификации можно было редактировать, необходимо их включить в качестве аргументов в функции Changeable, как показано на сканах выше, и добавить в тело функции OnChangeParameters три оператора, присваивающие нашим переменным новые значения, как показано на скане ниже. 
Это и все что надо сделать, чтобы наделить возможностью стандартные делали передавать данные непосредственно в таблицы. Но мы пошли немного дальше, для повышение удобства работы с модифицированными объектами, в тело функции OnMakeParameters добавили оператор, который объединяет в цепочку данные трех переменных и присваивает значение стандартной переменной. Кроме того, для удобства работы наши три переменные (Prefix, Position, Suffix) добалены в функцию OnDialog, что позволит задавать начальные значения объектам при их вставке.
Результат этих действий также представлен на скане выше.

P/S Для тех кто еще не готов выполнить рекомендации изложенные выше подготовлена соответствующая редакция (V2.0) альтернативную базу объектов SPDS, которую можно скачать под управлением rutracker.org по следующей magnet-ссылке

Возврат к списку