Как можно было бы превратить
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 я хотел показать, что даже у хорошо, давно и подробно известных и широко используемых идей, у самых привычных инструментов могут быть до сих пор в очень заметной мере не использованы, не воплощены их явно полезные пользовательские возможности.
Комментарии
Авторизоваться
Правда, ожидать результатов в виде модернизации палитр, вероятно, не следует.
Заодно и заменил в тексте про меню с "раскрывающимися списками" на "меню-дерево". Вроде бы это правильнее.
Подобные возможности можно посмотреть в целом на картинке в тексте и на примерах:
https://youtu.be/pjal4Eh5qrs - общее о черчении через подобное меню объектов.
https://youtu.be/uyCWm6dnnEU - варианты сервиса для черчения.
Примеры сделаны для большей задачи, но включающей использование меню объектов и сервис для черчения.
Эти меню типа "дерево" или как я назвал "раскрывающиеся списки" сами по себе делаются программистами без проблем.
Было бы идеально, если бы эту запись увидели разработчики самого Autodesk, и сделали бы эти доработки они.
Может прямо им написать в качестве предложения по их усовершенствованию (хотя я не знаю как с этим обстоят дела в Autodesk)?
Если не секрет, как создали эти многоуровневые списки?
Было бы идеально, если бы эту запись увидели разработчики самого Autodesk, и сделали бы эти доработки они.
Сам я занят реализацией другой идеи - из предыдущей записи. Она включает в себя и идею таких "доработанных палитр".