Страница 1 из 3

дополнительные команды для работы с Object Data

Добавлено: 09 янв 2014, 18:42
АлексЮстасу
Разговор о "подарке", т.е. о свободном пользовании некоторыми из этих команд пока снимаю. И из-за бессмысленности выдирания отдельных команд из целого, из-за отсутствия интереса, и из-за недоговоренности с начальством. Но свой исходный текст оставил без правок.
Тема пригодна не только для моего пиара :D , но и вообще для обсуждения работы с Object Data и о дополнениях к ним.


Почти новогодний почти подарок :D
Написали в прошлом-позапрошлом году на ObjectARX под 2010-2012 двадцать две дополнительные команды для работы с Object Data:
1. ODVIEW_COPY -- Копирование описаний OD из указанного файла. Как способ передачи описаний OD из файла в файл.
2. ODVIEW_HAS_NO_OD -- Выделение элементов без OD.
3. ODVIEW_HAS_OD -- Выделение элементов с OD.
4. ODVIEW_HAS_DUPLICATE_OD -- Выделение элементов с дублирующимися OD.
5. ODVIEW_HAS_MULTIPLE_OD -- Выделение элементов с несколькими OD.
6. ODVIEW_HAS_SPECIFIC_OD -- Выделение элементов с указанными OD.
7. ODVIEW_EVAL_EXPR -- Выделение элементов с полями, соответствующими указанным значениям. Значения можно задать с масками и знаками сравнения.
8. ODVIEW_REMOVE_DUPLICATE_OD -- Удаление дублирующихся OD. Первых или последних.
9. ODVIEW_RM_ALL -- Удаление всех OD у указанных элементов.
10. ODVIEW_COPY_OD -- Копирование OD из элемента-образца в указанные элементы.
11. ODVIEW_COPY_OD_VALUE -- Копирование OD из элемента-образца в указанные элементы с сохранением значений полей из образца.
12. ODVIEW_COPY_ALL -- Копирование OD и графических свойств элемента-образца в указанные элементы.
13. ODVIEW_COPY_ALL_VALUE -- Копирование OD и графических свойств элемента-образца в указанные элементы с сохранением значений полей из образца.
14. ODVIEW_ADEATTACHDATA -- Присоединение/отсоединение OD выбранным элементам.
15. ODVIEW_ATTACH_OD -- Присоединение OD согласно файлу-описанию.
16. ODVIEW_SELECT_OD_M -- Выделение элементов, соответствующих файлу-описанию.
17. ODVIEW_SELECT_OD_NM -- Выделение элементов, не соответствующих файлу-описанию.
18. ODVIEW_SELECT_OD_M_OD -- Выделение элементов, соответствующих файлу-описанию, и имеющих правильные OD.
19. ODVIEW_SELECT_OD_NM_OD -- Выделение элементов, не соответствующих файлу-описанию или имеющих не правильные OD.
20. ODVIEW_PSET -- Назначение элементам файла графических свойств по присоединенным OD согласно файлу-описанию.
21. ODVIEW_SETXYZ -- Присвоение указанным полям OD значений X, Y и Z их элементов.
22. ODVIEW_SETTEXT -- Присвоение указанному полю OD значения ближайшего элемента Text.

Вроде бы только 14-я в основном дублирует возможности Map, но сделана для обработки предварительного выбора, да и чуть интерфейс приятнее фирменного.
Если я правильно понял в том числе и этот форум, то сам Autocad Map 3D подобными (нужными) возможностями Object Data не снабдил. Если что - поправьте меня. :)

Команды 15-20 позволяют работать с Object Data на основе файла-описания. В файле-описании простого текстового формата определяется соответствие типов графических элементов и их графических свойств нужным Object Data. Допустим, полилиниям из такого-то слоя, цвета, веса и типа линий соответствует Object Data 8. А блокам с таким-то именем соответствует Object Data 22. И т.д.
Т.е., если в файле все элементы разложены по нужным слоям, в нужном цвете и т.п., то соответствующие Object Data всем элементам можно назначить сразу во всем dwg, указав нужный файл-описание. И наоборот - если Object Data уже присоединены, то можно сразу во всем dwg назначить нужные графические свойства элементам, указав нужный файл-описание. А также найти элементы, графические свойства которых или Object Data не соответствуют или соответствуют файлу-описанию.

Есть хорошие шансы договориться с начальством выложить в общее пользование некоторые из этих команд. Штук 5-10, наверное - как получится.
Так что выбирайте нужное для публикования.
Для 2013-2014 тоже можем сделать.

Re: дополнительные команды для работы с Object Data

Добавлено: 10 янв 2014, 11:51
Донецков
Интересно ODVIEW_EVAL_EXPR и команды для работы с файлами описаний...
формат интересен 2014...

Re: дополнительные команды для работы с Object Data

Добавлено: 10 янв 2014, 12:01
Slinger
Если вы готовы выложить плагин в публичный релиз, то выкладывайте. Если нет - то зачем об этом было всё писать ? Какой смысл нам выделять только необходимые инструменты ?

Re: дополнительные команды для работы с Object Data

Добавлено: 10 янв 2014, 15:23
АлексЮстасу
Slinger писал(а):Если вы готовы выложить плагин в публичный релиз, то выкладывайте. Если нет - то зачем об этом было всё писать ?
Фактически повторяюсь.
Это не моя собственность - права принадлежат фирме, и она имеет право вообще ничего никому. Но есть реальная возможность многое из этого выложить в свободный доступ.
Кстати, фирма, реальной отдачи от этих команд получить не успела, т.к. проекты с использованием Object Data либо закончились, либо сейчас невелики объемами.
Slinger писал(а):Какой смысл нам выделять только необходимые инструменты ?
А зачем Вам ненужные инструменты? :D
Т.е. Вас не больше раздражает, когда сам Автокад создает какую-то полезную возможность, но не обеспечивает ее набором необходимых инструментов, а потом и бросает ее на полдороге?

Кстати, уже есть планы добавить пару команд - создание идентификаторов-номеров по порядку следования записей и отдельного окна записей, синхронизированного с графикой. В принципе, можно было бы их объединить: открываем окно в табличной форме нужной Object Data, в нем что нужно нумеруем (типа как в Excel), заодно и смотрим - каким записям какие элементы соответствуют, и наоборот.
О таком окне уже здесь в одной теме говорилось почти год назад. Останавливало, что к такому окну данных сразу появится море пожеланий :D И вдруг это изобретение велосипеда?
Так что, если есть идеи о нужных еще командах работы с Object Data, то можно попробовать учесть.

Re: дополнительные команды для работы с Object Data

Добавлено: 10 янв 2014, 15:49
Slinger
А зачем Вам ненужные инструменты?
Мой опыт говорит о том, что рано или поздно большинство инструментов становятся востребованными. Именно поэтому "или всё или ничего". Выбор здесь это как-то несолидно.

Так что в моём понимании или выложить сразу или вообще создавать тему не надо было.

Re: дополнительные команды для работы с Object Data

Добавлено: 10 янв 2014, 20:14
АлексЮстасу
Slinger писал(а):Мой опыт говорит о том, что рано или поздно большинство инструментов становятся востребованными. Именно поэтому "или всё или ничего". Выбор здесь это как-то несолидно.
Так что в моём понимании или выложить сразу или вообще создавать тему не надо было.
Мой опыт говорит, что очень часто есть как раз "или ничего" :D

Почему же не нужно было бы создавать тему? Разве не хорошо бы знать, что у тех-то есть потенциально нужные инструменты?
Если известно, что где-то есть что-то очень нужное, то можно это купить. Если в принципе нужное, то можно предложить что-то в обмен. А, зная, что люди тоже нормально пишут на нашу тему, можно скооперироваться для написания каких-то программ на паритетной основе. Или т.п. Силы у нас всех для разработок очень ограниченные, и предмет слишком узкий, чтобы в легком доступе были альтернативные разработки, как у проектировщиков или у автокадчиков в целом или т.п.
Иначе ситуация как с данными: что у кого есть просто неизвестно, и где узнать неизвестно тоже.

Re: дополнительные команды для работы с Object Data

Добавлено: 11 янв 2014, 07:27
geodesist.ru
Все решается просто, оформляете приложением, и размещайте его на Автодеск, может даже заработаете.

Re: дополнительные команды для работы с Object Data

Добавлено: 11 янв 2014, 11:20
bingeomap
Случайно, только что нашёл. Может эти лиспи будет вам на пользу. Они бесплатные...:
www.4d-technologies.com/

Re: дополнительные команды для работы с Object Data

Добавлено: 11 янв 2014, 14:39
Максим Дубинин
АлексЮстасу, так и написали бы "пиарю свою разработку", это нормально, к чему эта игра в открытость.

Re: дополнительные команды для работы с Object Data

Добавлено: 12 янв 2014, 02:14
АлексЮстасу
Максим Дубинин писал(а):АлексЮстасу, так и написали бы "пиарю свою разработку", это нормально, к чему эта игра в открытость.
Недавно показывали фильм про Северную Корею. В том числе, Ким Ир Сен на их телевидении разоблачил кореянку, которая выкормила-вырастила скотину, а потом мало того, что продала ее, но еще и вырученные деньги не отдала обществу.

Часть предложенной в теме разработки можно будет скоро получить в свободное пользование - хотя, не определено еще, что именно интереснее всего. Если у Вас или у Ваших знакомых есть разработки в нашей сфере, то можно попробовать обменяться. Или кто-то мог бы эти разработки приобрести. Только нет информации, какие у кого существуют.

Re: дополнительные команды для работы с Object Data

Добавлено: 12 янв 2014, 04:29
АлексЮстасу
bingeomap писал(а):Случайно, только что нашёл. Может эти лиспи будет вам на пользу. Они бесплатные...:
www.4d-technologies.com/
Спасибо! Очень интересно!
Правда, я ни разу не программист, и не соображу сам, как этим богатством пользоваться. А наш программист от лиспа сторонится, как от огня :D

Re: дополнительные команды для работы с Object Data

Добавлено: 12 янв 2014, 04:33
АлексЮстасу
geodesist.ru писал(а):Все решается просто, оформляете приложением, и размещайте его на Автодеск, может даже заработаете.
Наверное, попробую. Вы имеете в виду http://apps.exchange.autodesk.com/ru?
К вопросу о заработке - там в глаза бросились цены типа 2, 5, 10 $. Ох, и наживусь, извлекая нетрудовые доходы! :D

Диспозиция частная:
Я только ставил задачу и тестировал команды. Программировал наемный программист. Платила ему за работу небольшая частная фирма из своих кровных.
В наших условиях я считаю чудом и что нашелся способный программист, и что нашлась фирма, готовая заплатить, и получился вполне употребимый продукт. И мне очень хотелось бы, чтобы и программист, и фирма были поощрены хотя бы символически - увидели нужность своей работы. О возможности на этом заработать или даже отбить расходы речи, увы, не идет.

Диспозиция общая:
Наша сфера (цифровая картография, ГИС) все-таки маргинальна. Здесь я говорю, естественно, про Автокад. И участников (фирм) очень мало, а их число в нашей стране только уменьшается, и они еще и мельчают. Нет ни предложения программистских услуг, ни готовых продуктов, ни инвесторов, ни покупателей-пользователей. Об этом я писал, например, четыре месяца назад в http://forums.autodesk.com/t5/AutoCAD-M ... -p/4385409, поэтому создавал эту тему - viewtopic.php?f=38&t=14857 здесь и еще на паре форумов, год назад и об этом делал доклад на тематической конференции.
Фирмы да и исполнители надеются натырить готовое чужое (чаще - западный софт), а остальное закрыть потогонной ручной работой либо жуткой халтурой. Разработки практически нигде не ведутся. Систематически - вообще нигде. Если что-то удается создать, то это кладется под ж@пу, и чаще всего никто об этом просто не знает. Даже что-то стоящее и известное реально недоступно - фирмы не хотят вооружать своих конкурентов. И т.д.
В том числе я знаю с десяток программистов, ушедших только в последние лет пять из нашей сферы, и не желающих вернуться. И сколько задач остается нерешаемых с десять и больше лет!
Фактический тупик, "развитие" за счет освоения чужого (западного, чаще ворованного) ПО и ожиданий от них нового и новых версий.
О глобальных разработках я не говорю, но всегда есть потребность в дополнениях, приложениях и т.п. Как это делают достаточно успешно те же индийцы, допустим. Тот же Autodesk Map еще на уровне dwg, Feature classes, Object Data имеет много больший потенциал для ГИС, цифровой картографии, чем доступно сейчас.

Re: дополнительные команды для работы с Object Data

Добавлено: 12 янв 2014, 20:53
geodesist.ru
Работайте или с открытым софтом или работайте с нашими софтверными компаниями, та же Панорама имхо не так плохо последние 2 года развивается, посмотрим что у них будет в 12 версии.

Re: дополнительные команды для работы с Object Data

Добавлено: 12 янв 2014, 22:06
Максим Дубинин
вот эти "выводы" которые вы изложили, к чему они?

не вы ли, вместо того, чтобы просто открыть свой код и радоваться тому что бы
АлексЮстасу писал(а):и программист, и фирма были поощрены хотя бы символически - увидели нужность своей работы
решили зачем-то бюрократизировать процесс и возвести барьер в любимой чиновниками стиле "скажите нам что вам нужно и мы подумаем, что можно сделать" (разумеется в 99% это не приводит ни к какому результату).

Как вы сами правильно заметили, в маргинальной области без сильного сообщества это приводит только к одному - все забивают, отвечать вам, тратить время на выбор, убеждение что одного того стоит, а другое нет. Нет времени, нас слишком мало, есть масса других задач.

Раз вы довели до всех свою диспозицию, то и я попробую довести свою. Вы - часть системы, которая вам так не нравится. Чтобы не быть ее частью, нужно попробовать играть по другим правилам, в этих других правилах (имхо конечно) нет пункта "я раскрываю то, что нужно другим" (предварительно потратив полжизни на выяснение что же нужно), а них есть пункт "я раскрываю то, что нужно мне" (и иду дальше по своим делам). Дальше коллективный разум разберется.

Сэкономьте всем время, если ваше начальство не дает раскрыть всё, выберите сами то что считаете нужным и раскрывайте.

Re: дополнительные команды для работы с Object Data

Добавлено: 12 янв 2014, 23:41
АлексЮстасу
geodesist.ru писал(а):Работайте или с открытым софтом или работайте с нашими софтверными компаниями, та же Панорама имхо не так плохо последние 2 года развивается, посмотрим что у них будет в 12 версии.
Во-первых, с открытым софтом и с Панорамой дело обстоит в целом так же.
Во-вторых, с "нашими софтверными компаниями" нужно многомного-денег - по аналогии с любым прямым заказом на стороне, и с нашими в частности. Или я не прав? Но реально я не знаю ни одной! Просветите, с кем можно иметь дело, и получить результат.
В-третьих, в знакомом мне открытом софте и в Панораме совершенно невозможно чертить так же ловко, как в Автокаде или в Микростейшен.
Максим Дубинин писал(а):Вы - часть системы, которая вам так не нравится. Чтобы не быть ее частью, нужно попробовать играть по другим правилам, в этих других правилах (имхо конечно) нет пункта "я раскрываю то, что нужно другим" (предварительно потратив полжизни на выяснение что же нужно), а них есть пункт "я раскрываю то, что нужно мне" (и иду дальше по своим делам). Дальше коллективный разум разберется.
Пока мне такой подход кажется парадоксальным - всегда видел благо в большей открытости и лучшей информированности, а "система" заключается как раз в обратном.
Например, под тот же Autocad Map не могу припомнить никаких сообщений о разработках. Но ведь наверняка они существуют. И могли бы путем того же обмена или продажи сэкономить время и силы других, и дать возможность заниматься другими проблемами.