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

ADN Club => Civil 3D API => Адаптация Civil 3D => Тема начата: durasovartyom от 14-02-2017, 22:24:46

Название: Как изменить внешний вид Редактора параметров в Редакторе сечений коридора
Отправлено: durasovartyom от 14-02-2017, 22:24:46
Всем добрый день!
Уважаемые инженеры!
Вопрос по Civil 3D:
Подскажите пожалуйста, как изменить внешний вид Редактора параметров который находится в Редакторе сечений коридора ?
Необходимо вставить разделяющую линию, а также отсортировать параметры.
Предполагаю, что может необходимо отредактировать файл с разрешением .atc, который находится C:\ProgramData\Autodesk\C3D 2017\rus\Imported Tools\
Может как то можно с помощью  Visual Studio удалить/перенести/настроить строки с этими параметрами как надо, потом сохранить?
Может как то вставить пустой параметр для разделения этих параметров?
Подскажите пожалуйста.
(https://s7.postimg.org/sjef77ip3/image.jpg) (https://postimg.org/image/sjef77ip3/)
Название: Re: Как изменить внешний вид Редактора параметров в Редакторе сечений коридора
Отправлено: Дмитрий Загорулькин от 14-02-2017, 23:31:00
Необходимо вставить разделяющую линию
А откуда у Вас такая уверенность, что это возможно?  :D
Пока что не изучал этот редактор, но по опыту написания диалогов, могу сказать, что если разработчики не предусмотрели в диалоге добавление разделителя, то этого не сделать без перекомпилирования библиотеки, в которой этот диалог находится. Если я все правильно понимаю, то эта библиотека входит в состав Civil 3D, значит, изменения в нее могут внести только его разработчики - программисты Autodesk. Как вариант, можно попробовать пойти другим путем - написать свой редактор. Но не факт, что это возможно.
Предполагаю, что может необходимо отредактировать файл с разрешением .atc, который находится C:\ProgramData\Autodesk\C3D 2017\rus\Imported Tools\
У меня нет такой папки. Возможно, что она появляется после установки какой-то надстройки?
Посмотрел файлы .atc в C:\ProgramData\Autodesk\C3D 2017\rus\Tool Catalogs\Road Catalog. Это файлы с XML разметкой. Если найдете нужный Вам файл по набору параметров, то можно попробовать внести в него изменения и посмотреть что получится (предварительно сохранив исходный файл). Редактировать удобно с помощью Notepad++, не обязательно Visual Studio устанавливать.
Название: Re: Как изменить внешний вид Редактора параметров в Редакторе сечений коридора
Отправлено: Александр Ривилис от 14-02-2017, 23:53:42
Если это действительно XML-файл, то вероятно порядок следования строк изменить можно, а разделитель - крайне маловероятно.
Название: Re: Как изменить внешний вид Редактора параметров в Редакторе сечений коридора
Отправлено: durasovartyom от 15-02-2017, 09:47:05
Добрый день.
Благодарю вам за ответ.
Уточню:
Создаю собственную конструкцию в Subassembly Composer.
Далее ее импортирую в Civil 3D.
Конструкция импортируется в папку  C:\ProgramData\Autodesk\C3D 2017\rus\Imported Tools\ а далее в папку с названием конструкции.

Пробовал откорректировать файл  с разрешением .atc ничего не изменилось. Можtт надо еще исправить файл с разрешением .xaml  ?
Visual Studio выдал ошибку при открытии файл с разрешением .xaml   , пришлось открыть  Notepad++
Приложил пример конструкции во вложении.

Подскажите пожалуйста, как тогда изменить порядок следования параметров.

(https://s11.postimg.org/lmfj0kdtr/xaml_2.png) (https://postimg.org/image/lmfj0kdtr/)

(https://s11.postimg.org/6ezjg7lz3/atc_1.png) (https://postimg.org/image/6ezjg7lz3/)
Название: Re: Как изменить внешний вид Редактора параметров в Редакторе сечений коридора
Отправлено: Дмитрий Загорулькин от 15-02-2017, 14:24:01
Так Вы попробовали менять местами строчки в файле XAML?
Название: Re: Как изменить внешний вид Редактора параметров в Редакторе сечений коридора
Отправлено: durasovartyom от 15-02-2017, 14:40:31
Пока нет.
Вчера пробовал файл .atc
Попробую откорректировать  файл XAML?
Напишу про результат.
Название: Re: Как изменить внешний вид Редактора параметров в Редакторе сечений коридора
Отправлено: durasovartyom от 15-02-2017, 16:55:15
Проанализировал я расположение параметров:
1. в Редакторе параметров который расположен в Редакторе сечений коридора
2. свойства конструкции - Входные значения
3. Файл XAML и ATC

Выводы:
1. В редакторе  параметров который расположен в Редакторе сечений коридора и свойствах конструкции, расположение параметров разное.
2. Расположение параметров в Свойствах конструкции по сравнению с файлом с расширением .ATC одинаково
3. А вот в файле с расширением XAML расположение параметров совсем другое.

Что можете пожалуйста посоветовать?

(https://s21.postimg.org/q67ywnbar/888_3.png) (https://postimg.org/image/q67ywnbar/)

(https://s21.postimg.org/9jqenkicz/888_2.png) (https://postimg.org/image/9jqenkicz/)

(https://s21.postimg.org/6r1sha7eb/888_1.png) (https://postimg.org/image/6r1sha7eb/)
Название: Re: Как изменить внешний вид Редактора параметров в Редакторе сечений коридора
Отправлено: Дмитрий Загорулькин от 15-02-2017, 18:30:50
В XAML вроде как то же самое расположение параметров, что и в ATC и в "Свойствах конструкции":
XAML:
Код - XML [Выбрать]
  1. <x:Property Name="VysotaRelsa" Type="InArgument(x:Double)">
  2.       <x:Property.Attributes>
  3.         <asw:DisplayName2Attribute DisplayName="ВысотаРельса" />
  4.       </x:Property.Attributes>
  5.     </x:Property>
  6.     <x:Property Name="TolschinaProkladki" Type="InArgument(x:Double)">
  7.       <x:Property.Attributes>
  8.         <asw:DisplayName2Attribute DisplayName="ТолщинаПрокладок" />
  9.       </x:Property.Attributes>
  10.     </x:Property>
  11.     <x:Property Name="DlinaShpaly" Type="InArgument(x:Double)">
  12.       <x:Property.Attributes>
  13.         <asw:DisplayName2Attribute DisplayName="ДлинаШпалы" />
  14.       </x:Property.Attributes>
  15.     </x:Property>
  16.     <x:Property Name="ShirPlechaBallastnoyPrizmy" Type="InArgument(x:Double)">
  17.       <x:Property.Attributes>
  18.         <asw:DisplayName2Attribute DisplayName="ШиринаПлечаБалластнойПризмы" />
  19.       </x:Property.Attributes>
  20.     </x:Property>
  21.     <x:Property Name="ProektnoeZemPolotno" Type="InArgument(asw:SurfaceTarget)">
  22.       <x:Property.Attributes>
  23.         <asw:DisplayName2Attribute DisplayName="ПроектноеЗемПолотно" />
  24.       </x:Property.Attributes>
  25.     </x:Property>
  26.     <x:Property Name="VysotaShpaly" Type="InArgument(x:Double)">
  27.       <x:Property.Attributes>
  28.         <asw:DisplayName2Attribute DisplayName="ВысотаШпалы" />
  29.       </x:Property.Attributes>
  30.     </x:Property>
  31.     <x:Property Name="h" Type="InArgument(x:Double)">
  32.       <x:Property.Attributes>
  33.         <asw:DisplayName2Attribute DisplayName="h" />
  34.       </x:Property.Attributes>
  35.     </x:Property>
ATC:
Код - XML [Выбрать]
  1. <Params>
  2.   <VysotaRelsa DataType="double" TypeInfo="16" DisplayName="ВысотаРельса" Description="VysotaRelsa">0.18</VysotaRelsa>
  3.   <TolschinaProkladki DataType="double" TypeInfo="16" DisplayName="ТолщинаПрокладок" Description="TolschinaProkladki">0.025</TolschinaProkladki>
  4.   <DlinaShpaly DataType="double" TypeInfo="16" DisplayName="ДлинаШпалы" Description="DlinaShpaly">2.7</DlinaShpaly>
  5.   <ShirPlechaBallastnoyPrizmy DataType="double" TypeInfo="16" DisplayName="ШиринаПлечаБалластнойПризмы" Description="ShirPlechaBallastnoyPrizmy">0.45</ShirPlechaBallastnoyPrizmy>
  6.   <VysotaShpaly DataType="double" TypeInfo="16" DisplayName="ВысотаШпалы" Description="VysotaShpaly">0.18</VysotaShpaly>
  7.   <h DataType="double" TypeInfo="16" DisplayName="h" Description="h">0</h>
  8. </Params>
  9.  
Единственное отличие, что в XAML есть еще параметр "ПроектноеЗемПолотно" которого больше нигде нет - ни в редакторах, ни в ATC.
Похоже, что в "Редакторе параметров в Редакторе сечений коридора" параметры сортируются по алфавиту, при этом, используется английское название параметра. Из этой стройной теории выпадает параметр "h" - он всегда последний почему-то... Но мы не знаем, какие там условия сортировки. Может быть, там символы верхнего регистра имеют приоритет перед символами нижнего.
В общем, пока мне представляется, что это безнадежная затея.