VetCAD

Как можно было бы превратить Tool Palettes (палитры, Панели инструментов) как меню объектов в гораздо более удобный и мощный инструмент

   1 оценка

Александр, Alexander

размещено: 11 Января 2016
обновлено: 20 Марта 2016

Как можно было бы превратить

Tool Palettes (Панели инструментов) как меню объектов

в гораздо более удобный и мощный инструмент

 

Практически все хорошо знают Tool Palettes (палитры, Панели инструментов, Ctrl+3) – штатный инструмент AutoCAD, в котором, в том числе, можно создавать меню объектов для их черчения сразу с нужными графическими свойствами. Многие этим инструментом постоянно пользуются. Сам Autodesk к штатным поставкам AutoCAD и его вертикальных приложений заказывает создание и прикладывает многочисленные уже готовые меню объектов в виде Tool Palettes.

(Знающие люди подскажут, с каких годов инструмент Tool Palettes был добавлен в AutoCAD - с 2004?, и модернизировался ли он вообще хоть как-то с тех пор…).

Идея Tool Palettes в части меню для черчения объектов достаточно проста, универсальна и удобна. Эта идея заключается в возможности самим пользователям (не завися от программистов, не создавая пользовательские кнопки, панели) создавать меню для черчения любых объектов, для любой предметной области, и в сохранении описаний этих объектов во внешних текстовых файлах xml. Эти внешние файлы можно распространять, передавая любому числу других пользователей готовые меню таких же объектов. При указании объекта в Tool Palettes автоматически активизируются нужные команды черчения-вставки элементов, автоматически активизируются описанные у объектов нужные графические свойства, автоматически подгружаются нужные описания блоков из указанных файлов, создаются слои с нужными названиями и т.п. Т.е. использование Tool Palettes как меню для черчения объектов снимает с пользователя при черчении необходимость производить множество обязательных действий, т.е. заметно снижает трудоемкость черчения и помогает стандартизовать свойства вычерченных объектов.

У Tool Palettes есть и явные небольшие недостатки реализации (автоматически создаваемые слои имеют только нужные названия, но не остальные  параметры, непонятно, как задавать сжатие и наклон текстов, как задать масштаб блока и т.п.), но о такого рода недостатках сейчас говориться не будет.

Посмотрим же, как в принципе можно было бы сделать Tool Palettes мощнее и удобнее, используя только те основные возможности, которые в них уже заложены, и используя только простые программные дополнения. (Естественно, это просто только самому Autodesk...).

Во-первых, меню объектов в Tool Palettes одноуровенные – в них невозможно полноценно реализовать классификации объектов, т.е. привязать к классификационным группировкам (классам, подклассам и т.д.) какие-то действия. Классификация в Tool Palettes реализуема сейчас только множеством Palettes, например, сколько классов – столько и Palette, а так же реализуется чисто зрительно – текстовыми строками и линейными разделителями в меню объектов. Вследствие этого для меню большого числа типов объектов требуется множество Palettes, возникает необходимость подгрузки множества Palettes вместо одной, необходимость переключения между Palettes, повышается риск потери xml-файлов описания при их передаче или передача лишних таких файлов. Т.е., если добавить возможность отображения всей нужной классификации в одной Palette, то работа для пользователя сразу упростится, и станет гораздо удобнее. Сделать это совсем нетрудно, используя стандартное меню-дерево с раскрывающимися списками. При этом пользователи могут раскрывать/закрывать любые из списков объектов в классах-подклассах, сами оптимизируя вид меню на экране. При этом в одной панели можно вполне удобно для пользователя отображать меню для многих сотен и даже тысяч типов объектов.

Рис. 1. Пример возможной реализации меню-дерева. С возможностью выбора по объектам меню элементов dwg (Select). С возможностью выбора элементов  dwg, соответствующих/не соответствующих объектам меню (Normal Graphic Elements/Abnormal Graphic Elements). Со строкой выбора в меню по набору символов (вверху, ABC). С созаожностью придать нужные свойства существующим элементам (Define).

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

В-третьих, к объектам в меню можно добавить возможность поиска в dwg элементов с аналогичными свойствами. Если в Tool Palettes добавлена реализация классифицированности объектов, то возможность поиска целесообразно распространить и на классификационные группировки – находить в dwg элементы со свойствами объектов сразу всего указанного класса и т.п. Сделать это несложно, т.к. свойства объектов Palettes описаны, хранятся в файле описания xml.

В-четвертых, к Palettes можно добавить возможность выбора в dwg всех элементов, соответствующих объектам Palettes. А так же выбора всех элементов, не соответствующих объектам Palettes. И это сделать несложно, т.к. свойства всех объектов Palettes описаны, хранятся в файле описания xml.

В-пятых, к Palettes можно добавить возможность назначения выбранным элементам dwg свойств объектов, указанных в меню.Например, указать в dwg множество каких-то полилиний, и сразу всем назначить наборы свойств указанного линейного объекта из Palettes. И это сделать несложно, т.к. свойства объектов Palettes хранятся в файле описания xml.

В-шестых, можно придать возможность пополнения Palettes сразу многими описаниями объектов – для всех выбранных в dwg элементов с отличающимися свойствами. Сейчас можно создавать описания объектов только по одному. Технической сложности в таком дополнении тоже нет.

Возможность всех этих дополнений уже заложена в самих Tool Palettes, в первую очередь – в наличии внешних файлов описания их объектов. Все эти дополнения несложно реализуемы программно (для разработчиков Autodesk). Все эти дополнения являются лишь естественными простыми улучшениями для пользователей и последовательной и полной реализацией уже имеющихся возможностей в соответствии с назначением самих Tool Palettes.

                 

Рис. 2. На схеме черным цветом в утолщенных рамках показаны используемые в Tool Palettes возможности, черным цветом в тонких рамках – не использованные сейчас возможности. Серым цветом в серых рамках для сравнения показаны принципиальные общие возможности использования описаний стандартов черчения.

При этом Tool Palettes с подобными улучшениями и дополнениями превратился бы в инструмент с явно большими возможностями и заметно лучшими потребительскими свойствами – с компактностью, с лучшей навигацией в меню, с возможностями выбора в dwg, назначения свойств, стандартизации содержания чертежей и контроля их качества. Можно сказать, что так получился бы инструмент, если не другого уровня, но в любом случае существенно мощнее и удобнее для пользователей. И можно констатировать, что в настоящий момент имеющиеся полезные возможности Tool Palettes как меню объектов раскрыты лишь примерно на 25-30%.

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

Комментарии

Комментарии могут оставлять только зарегистрированные участники
Авторизоваться
Комментарии 1-11 из 11
АлексЮстасу , 16 августа 2017 в 04:15
#11
Забыл сразу сообщить, что эта статья получила достаточно хороший прием у Михаила Белиловского - человека из Autodesk, который непосредственно участвовал в создании Tool Palettes. https://forums.autodesk.com/t5/semeystvo-autocad-russkiy/autocad-ispolnyaetsya-35-let-intervyu-s-mihailom-belilovskim/m-p/6872381#M774
Правда, ожидать результатов в виде модернизации палитр, вероятно, не следует.
АлексЮстасу , 22 марта 2016 в 18:22
#10
Добавил схему о возможностях использования описаний объектов.

Заодно и заменил в тексте про меню с "раскрывающимися списками" на "меню-дерево". Вроде бы это правильнее.
АлексЮстасу , 05 февраля 2016 в 21:49
#9
Пример черчения для трехмерных объектов: https://youtu.be/P0IaTbhrFm
АлексЮстасу , 26 января 2016 в 17:20
#8
Сами палитры доработать может только Autodesk - коды у них.
Подобные возможности можно посмотреть в целом на картинке в тексте и на примерах:
https://youtu.be/pjal4Eh5qr - общее о черчении через подобное меню объектов.
https://youtu.be/uyCWm6dnnE - варианты сервиса для черчения.
Примеры сделаны для большей задачи, но включающей использование меню объектов и сервис для черчения.
vik74 , 26 января 2016 в 16:40
#7
А нельзя ли выложить подобную палитру для примера. Как бы лучше доходит на примере
АлексЮстасу , 19 января 2016 в 14:39
#6
Я не знаю действующего способа донести идею до разработчиков.

Эти меню типа "дерево" или как я назвал "раскрывающиеся списки" сами по себе делаются программистами без проблем.
Ilez , 19 января 2016 в 13:07
#5
Цитата:
Сообщение #4 от АлексЮстасу
Было бы идеально, если бы эту запись увидели разработчики самого Autodesk, и сделали бы эти доработки они.

Может прямо им написать в качестве предложения по их усовершенствованию (хотя я не знаю как с этим обстоят дела в Autodesk)?
Если не секрет, как создали эти многоуровневые списки?
АлексЮстасу , 19 января 2016 в 12:19
#4
Добрый!
Было бы идеально, если бы эту запись увидели разработчики самого Autodesk, и сделали бы эти доработки они.
Сам я занят реализацией другой идеи - из предыдущей записи. Она включает в себя и идею таких "доработанных палитр".
Ilez , 19 января 2016 в 11:23
#3
Здравствуйте, Александр. Вы эти доработки палитр реализовали или это пока на уровне идеи по их реализации? Как я понял, многоуровневые списки в палитрах Вы уже внедрили.
АлексЮстасу , 12 января 2016 в 20:15
#2
добавил
Вовик , 12 января 2016 в 19:07
#1
а как же картинки?
altius