Сообщество программистов Autodesk в СНГ

ADN Club => AutoCAD .NET API => Тема начата: Алексей Кузин от 24-10-2018, 11:10:16

Название: Параметры команды DuctFittingAdd и DuctAdd (Autocad MEP)
Отправлено: Алексей Кузин от 24-10-2018, 11:10:16
вызываю команду на построение Duct Fitting
Код - C# [Выбрать]
  1. doc.SendStringToExecute("DuctFittingAdd\n", true, false, false);
Далее задаю так же через консоль параметры выбора, например
Код - C# [Выбрать]
  1. doc.SendStringToExecute("SH 2\n", true, false, false);
Возникает проблема с выбором конкретного типа фиттинга. Пробовал это сделать так же через консоль через выбор CHapter, но возникает проблема, когда есть иерархия в каталоге, где CHapter имеют одинаковое название в разных категориях (надеюсь понимаете о чем я). Если я правильно понимаю выбор CHapter определяется именно иерархией в каталоге...
Возможно есть способ это сделать как то по другому. Есть мысли о том что необходимо задать в каталоге выбор активного типа парта, но в этом направлении мало копал, только мысли.
Буду рад любым наводкам по этой теме, заранее спасибо.
Название: Re: Параметры команды DuctFittingAdd и DuctAdd
Отправлено: Александр Пекшев aka Modis от 24-10-2018, 12:06:31
Для начал разместите свой вопрос в правильной ветке форума. Duct Fitting - в автокаде и в помине не было
Название: Re: Параметры команды DuctFittingAdd и DuctAdd
Отправлено: Алексей Кузин от 24-10-2018, 13:14:40
Autocad MEP.
Я не нашел нужной ветки, возможно не там смотрю, подскажите куда разместить. Спасибо.
Название: Re: Параметры команды DuctFittingAdd и DuctAdd (Autocad MEP)
Отправлено: Александр Пекшев aka Modis от 24-10-2018, 14:04:36
По описанию очень смахивает на Civil 3D - я бы там вопрос и размещал. Просто там придут уведомления на почту для тех, кто подписан на ту ветку. Хотя, многие конечно и сюда заходят ))
Подождите Александра Ривилиса или Дмитрия Загорулькина - уверен, что они знают ответ
Название: Re: Параметры команды DuctFittingAdd и DuctAdd (Autocad MEP)
Отправлено: Дмитрий Загорулькин от 24-10-2018, 14:57:00
или Дмитрия Загорулькина
К сожалению, не знаю. С MEP не знаком, а в Civil 3D такого нет.
Название: Re: Параметры команды DuctFittingAdd и DuctAdd (Autocad MEP)
Отправлено: Алексей Кузин от 24-10-2018, 15:14:39
Возможно кто то знает как сделать что то подобное не через вызов команды через консоль. Вопрос глобально в том, чтобы запустить команду ductFittingAdd и выбрать нужной тип ductFitting. Может кто то сталкивался с выбором нужного типа в других объектах... Всё информацию о нужном мне объекте я знаю. Нет вопросов в том, чтобы его разместить кодом, но хотелось бы именно в контексте вызова стандартной команды.
Название: Re: Параметры команды DuctFittingAdd и DuctAdd (Autocad MEP)
Отправлено: Александр Ривилис от 24-10-2018, 15:28:23
Алексей Кузин,
Всё информацию о нужном мне объекте я знаю. Нет вопросов в том, чтобы его разместить кодом
Вот так и делай. Использовать командные методы нужно только тогда, когда других вариантов нет.
Я не использую AutoCAD MEP и он у меня не установлен. Так что могу лишь посоветовать если уж хочешь использовать командные методы, то запусти в командной строке:
Код - Auto/Visual Lisp [Выбрать]
  1. (command "_DuctFittingAdd")
а дальше смотри на подсказки и попытайся выбрать нужный тебе объект. Если получится, то тогда возможно такая последовательность сработает и через doc.SendStringToExecute (или Editor.Command)
Название: Re: Параметры команды DuctFittingAdd и DuctAdd (Autocad MEP)
Отправлено: Алексей Кузин от 24-10-2018, 16:02:49
Цитировать
Так что могу лишь посоветовать если уж хочешь использовать командные методы, то запусти в командной строке:
На сколько я понимаю это не сильно отличается. И пробовал это тоже.
Цитировать
а дальше смотри на подсказки и попытайся выбрать нужный тебе объект.
Не получается. Именно проблема в том, что даже как пользователь не могу сделать необходимые мне действия.
Если я использую PropertyPalette как просто пользователь то в ней конечно я могу выбрать нужный мне тип. Можно ли как то отследить как это делается там?

PS: Знаю что вопрос специфический...  Всем спасибо.
Название: Re: Параметры команды DuctFittingAdd и DuctAdd (Autocad MEP)
Отправлено: Александр Ривилис от 24-10-2018, 16:05:37
Можно ли как то отследить как это делается там?
Нет. Такого API не существует.
Название: Re: Параметры команды DuctFittingAdd и DuctAdd (Autocad MEP)
Отправлено: Дмитрий Загорулькин от 24-10-2018, 16:13:07
Можно попробовать программно повторять действия пользователя. Вот тут показывали чем и как это можно сделать: http://adn-cis.org/forum/index.php?topic=8114.msg33491#msg33491
Название: Re: Параметры команды DuctFittingAdd и DuctAdd (Autocad MEP)
Отправлено: Алексей Кузин от 24-10-2018, 16:25:15
Цитировать
Можно попробовать программно повторять действия пользователя.
вот это извращение) думаю такой подход точно не подойдет, но спасибо.
Название: Re: Параметры команды DuctFittingAdd и DuctAdd (Autocad MEP)
Отправлено: Александр Ривилис от 24-10-2018, 16:39:19
Еще один вариант - воспользоваться командой DUCTFITTINGADDSELECTED предварительно программно создав подходящий объект:
https://knowledge.autodesk.com/support/autocad-mep/learn-explore/caas/CloudHelp/cloudhelp/2019/ENU/AutoCAD-MEP/files/GUID-7BE9A8F8-C761-4735-ABE0-FE6CFA581F1F-htm.html
Название: Re: Параметры команды DuctFittingAdd и DuctAdd (Autocad MEP)
Отправлено: Алексей Кузин от 24-10-2018, 18:14:44
Иерархия каталога (пример):
Rectangular
   TopCategory
      MidCategory
         LowCategory
            Part

Решение проблемы - в выборке по CHapter необходимо задать полный путь - Rectangular\TopCategory\MidCategory\LowCategory

Возможно это было очевидно, но я сразу не понял и поиски результата не дали...
Название: Re: Параметры команды DuctFittingAdd и DuctAdd (Autocad MEP)
Отправлено: Александр Ривилис от 25-10-2018, 00:17:23
Возможно это было очевидно, но я сразу не понял и поиски результата не дали...
Я очень давно "не держал в руках" AutoCAD Architecture и тем более AutoCAD MEP, так что вспомнить такую особенность не смог.