методы объекта Structure

Автор Тема: методы объекта Structure  (Прочитано 556 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн simson43Автор темы

  • ADN OPEN
  • ****
  • Сообщений: 388
  • Карма: 7
методы объекта Structure
« : 04-02-2019, 22:56:31 »
любопытства ради.. что за необычные методы у Structure будто неродные: с маленькой буквы через пробел... не как все
Код - C# [Выбрать]
  1. public ObjectId get_ConnectedPipe(int index);
  2. public double get_PipeCenterDepth(int index);
  3. public double get_PipeInnerDiameterOrWidth(int index);
  4. public double get_PipeInvertDepth(int index);
  5. public double get_PipeOuterBottomDepth(int index);
  6. public double get_PipeOuterTopDepth(int index);
  7. public double get_PipeWallThickness(int index);

Оффлайн Дмитрий Загорулькин

  • ADN
  • *
  • Сообщений: 1903
  • Карма: 474
  • LISP/C#, AutoCAD/Civil 3D
  • Skype: zagor_dmtr
Re: методы объекта Structure
« Ответ #1 : 04-02-2019, 23:21:44 »
Да, странные наименования. Но работают как полагается.

Оффлайн simson43Автор темы

  • ADN OPEN
  • ****
  • Сообщений: 388
  • Карма: 7
Re: методы объекта Structure
« Ответ #2 : 04-02-2019, 23:32:14 »
Надеялся вы уже не раз ими оперировали и знаете их историю, откуда они такие взялись.. эх(
нагуглить ничего не удалось(

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 9233
  • Карма: 1159
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: методы объекта Structure
« Ответ #3 : 05-02-2019, 00:14:11 »
Надеялся вы уже не раз ими оперировали и знаете их историю, откуда они такие взялись.. эх(
нагуглить ничего не удалось(
Обычно методы типа get_XXX(int index) - это индексаторы...
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Дмитрий Загорулькин

  • ADN
  • *
  • Сообщений: 1903
  • Карма: 474
  • LISP/C#, AutoCAD/Civil 3D
  • Skype: zagor_dmtr
Re: методы объекта Structure
« Ответ #4 : 06-02-2019, 16:21:39 »
Надеялся вы уже не раз ими оперировали и знаете их историю, откуда они такие взялись.. эх(
нагуглить ничего не удалось(
Возможно, что программист, который их разрабатывал, провёл аналогию с методами, которые получаются в CIL из свойств. В нём свойство преобразуется в методы get_<имя свойства> и set_<имя свойства>:
Цитировать
Свойства и методы тоже имеют специальный формат представления в CIL. Например, чтобы модифицировать класс MyUserInfo с целью поддержки общедоступного свойства по имени TheString, можно написать следующий CIL-код (обратите внимание на использование атрибута specialname):
// Свойство TheString
.method public hidebysig specialname
     instance string get_TheString() cil managed
{
     // Код реализации
}
.method public hidebysig specialname
       instance void set_TheString(string 'value') cil managed
{
// Какой-то код
}
.property instance string TheString()
{
.get instance string
MyUI.MyUserInfo::get_TheString()
.set instance void
MyUI.MyUserInfo::set_TheString(string)
}
Пример взят с ProfessorWeb.
А в целом, как они называются и почему именно так - мне как-то всё равно. У меня есть только радость по поводу того, что они есть :)

Оффлайн simson43Автор темы

  • ADN OPEN
  • ****
  • Сообщений: 388
  • Карма: 7
Re: методы объекта Structure
« Ответ #5 : 06-02-2019, 18:12:57 »
ProfessorWeb зараженный майнерский сайт) не стоит там долго пребывать)

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 9233
  • Карма: 1159
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: методы объекта Structure
« Ответ #6 : 06-02-2019, 18:28:43 »
ProfessorWeb зараженный майнерский сайт) не стоит там долго пребывать)
Откуда дровишки?
Извините, вам запрещён просмотр содержимого спойлеров.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн simson43Автор темы

  • ADN OPEN
  • ****
  • Сообщений: 388
  • Карма: 7
Re: методы объекта Structure
« Ответ #7 : 06-02-2019, 19:26:14 »
Не то что бы вирус..
Извините, вам запрещён просмотр содержимого спойлеров.

Оффлайн simson43Автор темы

  • ADN OPEN
  • ****
  • Сообщений: 388
  • Карма: 7
Re: методы объекта Structure
« Ответ #8 : 06-02-2019, 19:29:03 »
У меня есть только радость по поводу того, что они есть
Хотелось все уже увидеть метод возвращающий массив всех присоединенных труб, не критично конечно но было б приятно

Оффлайн Дмитрий Загорулькин

  • ADN
  • *
  • Сообщений: 1903
  • Карма: 474
  • LISP/C#, AutoCAD/Civil 3D
  • Skype: zagor_dmtr
Re: методы объекта Structure
« Ответ #9 : 06-02-2019, 19:37:38 »
Хотелось все уже увидеть метод возвращающий массив всех присоединенных труб, не критично конечно но было б приятно
Код - C# [Выбрать]
  1. public static List<ObjectId> GetConnectedPipes(this Structure structure)
  2. {
  3.     List<ObjectId> pipeIds = new List<ObjectId>();
  4.     int conPipesCount = structure.ConnectedPipesCount;
  5.     for (int i = 0; i < conPipesCount; i++)
  6.     {
  7.         ObjectId conPipeId = structure.get_ConnectedPipe(i);
  8.         pipeIds.Add(conPipeId);
  9.     }
  10.     return pipeIds;
  11. }
  12.  

Оффлайн simson43Автор темы

  • ADN OPEN
  • ****
  • Сообщений: 388
  • Карма: 7
Re: методы объекта Structure
« Ответ #10 : 06-02-2019, 19:39:28 »
Под некритично я это и имел ввиду) что можно написать)
Т е в вашем арсенале он имеется? Или сейчас накидали?

Оффлайн Дмитрий Загорулькин

  • ADN
  • *
  • Сообщений: 1903
  • Карма: 474
  • LISP/C#, AutoCAD/Civil 3D
  • Skype: zagor_dmtr
Re: методы объекта Structure
« Ответ #11 : 06-02-2019, 19:47:56 »
Из библиотеки вытащил своей. Причесал только немного - упростил, убрал проверки.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 9233
  • Карма: 1159
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: методы объекта Structure
« Ответ #12 : 06-02-2019, 20:04:32 »
simson43,
Этот вопрос имел отношение к данной теме? Не нужно превращать каждую тему в offtop.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 9233
  • Карма: 1159
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: методы объекта Structure
« Ответ #13 : 06-02-2019, 20:07:03 »
Не то что бы вирус..
Спойлер
https://pikabu.ru/story/mayner_na_professorwebru_5353785
Этой теме полтора года.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение