Jump to content
  • entries
    47
  • comments
    27
  • views
    9,519

About this blog

Блог для обладателей и пользователей продуктов nanoCAD.

Тут собраны ответы на наиболее интересные и часто возникающие вопросы пользователей.

Если, вы не найдете ответов на свои вопросы, обращайтесь к нам. Мы всегда рады помочь!

Контакты: nanocad24.ru | тел. 8 (800) 201-63-85 | cad@maxsoft.ru
 

Entries in this blog

cad@maxsoft.ru

В этой записи блога рассмотрен функционал добавления\переопределения параметров объектов при публикации в CADLib Модель и Архив.

Спойлер

В этом видео демонстрируется функционал и его общее назначение. В последующих видео рассмотрены более конкретные пользовательские приемы. 

 

 

Спойлер

В этом ролике демонстрируется формула, которая переопределяет значения параметра только при выполнении определенного условия.

 

 

Спойлер

В данном видео рассмотрены приемы, которые позволяют добавлять параметры объектам платформы nanoCAD, при публикации в CADLib Модель и Архив

Текст формулы из видео:

Спойлер

if(string(object.objectName)="AcDbBlockReference", 
"Я блок", 
if(string(object.objectName)="mcsDbObject3dSolid", 
"Я параметрический солид", 
if(string(object.objectName)="AcDb3dSolid", 
"Я солид",
if(string(object.objectName)="AcDbHatch",
"Я штриховка",
if(string(object.objectName)="AcDbTable",
"Я таблица",
if(string(object.name)="Слой1", 
"Мы объекты слоя 1", 
if(string(object.name)="Слой2", 
"Мы объекты слоя 2", 
if(string(object.name)="Слой3", 
"Мы объекты слоя 3", 
"Какой-то слой"))))))))

 

В этой формуле есть несколько нюансов:

1. Использование условия Case, хоть и является в данной ситуации более лаконичным вариантом, тем не менее вызывает ошибки, вероятно из-за того, что case не может обработать несколько обращений к COM интерфейсу. С условием IF проблем не возникает.

2. Также в конструкции IF необходимо первыми обрабатывать объекты блоков, солидов, параметрических моделей, и всего того, что публикуется не послойно. Т.к. в свойствах COM интерфейса таких объектов отсутствует свойство name, имеющиеся у слоев.

 

Ссылка на сайт, где можно получить документацию по API платформы nanoCAD:

https://developer.nanocad.ru/

 

 

Спойлер

В данном видео рассмотрено переопределение параметров объектов не просто при публикации, а в пространстве модели чертежа. А также демонстрируются примеры применимости.

Формулы из видео:

1. Отступ балки от оси.

if([PART_TAG]="30К2" and [STEEL_DIM_GAP1]<>object.OffsetStartX, object.Element.Parameters.SetParameter("STEEL_DIM_GAP1", string(object.OffsetStartX), "Отступ по Х", ""), [STEEL_DIM_GAP1])

 

2. Вкл/Выкл переопределения цвета.

if([GENERAL_SWITCH_1]<>0, object.Element.Parameters.SetParameter("GENERAL_SWITCH_1", int(0), "ВКЛ/ВЫКЛ Цветовую индикацию", ""), [GENERAL_SWITCH_1])

 

3. Переопределение имени 

if([PART_NAME]<>string([PART_TAG]&" "&"x"&" "&[PART_MATERIAL]), object.Element.Parameters.SetParameter("PART_NAME", string([PART_TAG]&" "&"x"&" "&[PART_MATERIAL]), "Наименование", "Наименование"), [PART_NAME])

 

4. Скрытие части объекта.

if([GENERAL_SWITCH_1]<>1, object.Element.Parameters.SetParameter("GENERAL_SWITCH_1", int(1), "ВКЛ/ВЫКЛ", ""), [GENERAL_SWITCH_1])

 

 

 

cad@maxsoft.ru

 

 

Разбор COM по запросу данных с проекта.docx

 

Готовый пример с автозаполнением.dwg

 

Т.к. данная запись блога относится к анонсированным темам на прошедших вебинарах (1-ый и 2-ой вебинар), ниже материал по теме дополнительного форматирования результата обсчета функций в профиле спецификации.

 

 

cad@maxsoft.ru

В данном видео рассмотрен алгоритм действий по восстановлению версий публикаций CADLib Модель и Архив. Пользоваться данным алгоритмом нужно с осторожностью, т.к. может произойти дублирование или потеря данных.

 

×
×
  • Create New...