Список пожеланий, относящихся к AutoCAD

21.01.2012

В данном разделе я буду записывать свои пожелания, касающиеся работы AutoCAD и AutoCAD .Net API. Затем они будут официально отправляться мною в компанию Autodesk. На самом деле эти пожелания относятся ко всем версиям AutoCAD, но поскольку Autodesk будет реагировать только на версию 2013 (это в лучшем случае) - именно её и буду указывать в качестве целевой.

AutoCAD 2013

  1. Неудобно то, что в AutoCAD нельзя в различных настройках задавать пути, использующие в своём составе системные переменные операционной системы (например %APPDATA%, %ProgramFiles% и т.д.). Поясняю, где это было бы удобным:
    1. Различные каталоги и файлы, указываемые в диалоговом окне Options на вкладке Files.
    2. Пути к файлам внешних ссылок в диалоговом окне External References (не всегда удобно использовать переменную ProjectName).
    3. Пути к dws-файлам в диалоговом окне Configure Standards. У одних пользователей система может быть установлена на диск C:\, а у других - на диск D:\ (или на другой) - я встречал такое в своей практике. Соответственно на одних машинах AutoCAD находит dws-файлы, а на др. нет. Кроме этого, должна иметься возможность прописывать относительные пути, указывая подключаемые dws-файлы.
  2. В AutoCAD .NET API необходимы события, оповещающие о том, что сейчас будет происходить загрузка модуля, написанного на ARX\Lisp\VBA\.NET. Причём такое событие должно предоставлять возможность произвести отмену загрузки. Кроме того, было бы очень удобно, если данное событие предоставляло и такую информацию: какие функции AutoCAD определены в загружаемом модуле (их область видимости, имена, параметры и возвращаемые значения).
  3. В AutoCAD .NET API нужно добавить возможность редактирования контекстного меню Sheet Set, Sheet и Subset.
  4. В AutoCAD необходимо добавить настройки, позволяющие отключать поведение, при котором AutoCAD автоматически загружает файлы acad.lsp, acad.fas, acaddoc.lsp, acaddoc.fas, acad2013.lsp и acad2013.fas. Такая потребность обусловлена тем, что данной особенностью AutoCAD часто пользуются те, кто пишет различные вирусы. AutoCAD сам загружает в себя вредоносный код и выполняет его. Антивирусы не справляются с такой заразой и она, зачастую, причиняет большой вред организациям.
  5. Если в чертеже, находясь в пространстве Model выполнить двойной клик мышью на атрибуте вхождения блока, являющегося Callout Block, то автоматически откроется нужный лист подшивки (Sheet) и в центре экрана будет отображён нужный Sheet View. Это работает корректно только в том случае, если на листе, текущим является пространство листа (Layout), а не пространство модели (Model), открытое через какой-либо видовой экран. Если на листе текущим пространством явлется Model, инициализированное через видовой экран, то  Callout Block откроет нужный лист (Sheet), но отобразит не тот  Sheet View который нужен, а тот видовой экран, который является текущим. Нужно, чтобы AutoCAD автоматически переходил в пространство листа и показывал запрашиваемый  Sheet View.
  6. Нужна возможность из командной строки cmd.exe запускать команду, которая сразу бы открывала нужный чертёж и в нём переключалась на нужный  Sheet View. В настоящее время имеется возможность открывать из cmd.exe чертёж на нужном листе (Layout), либо на нужном именованном виде  (Named View), но открыть нужный  Sheet View нельзя.
  7. Нужна возможность в rtf-документе создавать гиперссылки, которые бы открывали нужный чертёж и в нём переключалась на нужный  Sheet View. В настоящее время имеется возможность создавать гиперссылки, открывающие чертёж на нужном листе (Layout), либо на нужном именованном виде  (Named View), но открыть нужный  Sheet View с их помощью нельзя.
  8. Нужна возможность в html-документе, а так же в pdf-документе создавать ссылки с помощью которых можно было бы делать следующее:
    1. Открыть чертёж и перейти в нём к нужному именованному виду (Named View).
    2. Открыть чертёж и перейти в нём к нужному листу (Layout).
    3. Открыть чертёж и перейти в нём к нужному  Sheet View.
  9. В подшивке можно создавать дополнительные свойства (Custom Properties) для самой подшивки (Sheet Set), либо для листа (Sheet). Однако нет возможности создавать такие свойства для группы листов (Subset). Нужна возможность создавать Custom Properties и для  Subset. Необходимо, чтобы на эти свойства так же можно было ссылаться с помощью полей (Fields).
  10. Нужна системная переменная (или метод в AutoCAD .Net API), позволяющая управлять длиной консольной строки AutoCAD (т.е. максимальным количеством символов, которые могут поместиться в одну строку в консоли AutoCAD).
  11. Нужна коллекция, содержащая в себе все переменные AutoCAD, чтобы их можно было перебрать в цикле. Для каждой переменной должна иметься информация о том, к какому уровню она относится (уровень приложения или уровень документа), а так же её доступность (только для чтения или для чтения и записи).
В Autodesk отправил перевод, который выглядит так:

Hi. Sorry for my English...

My wishlist for AutoCAD:

1. Inconveniently that in AutoCAD it is impossible to set in various adjustments the ways using in the composition system variables of an operating system (for example %APPDATA %, %ProgramFiles % etc.). I explain, where it would be convenient:
  1.1. Various directories and the files specified in dialog box Options on tab Files.
  1.2. Ways to files of external references in dialog box External References (it is not always convenient to use variable ProjectName).
  1.3. Ways to dws-files in dialog box Configure Standards. At one users the system can be installed on disk C: \, and at others - on disk D:\(or on another) - I met such in the practice. Accordingly by one machines AutoCAD finds dws-files, and on other isn't present. Besides, there should be a possibility to register relative paths, specifying connected dws-files.

2. In AutoCAD.NET API are necessary the events, which notifying that there will be now a loading of the module written on ARX\Lisp\VBA\.NET. And such event should give possibility to produce a loading canceling. Besides, it would be very convenient, if the given event gave also such information: what functions AutoCAD are defined in loadable module (their area of visibility, names, parameters and returned values).

3. In AutoCAD.NET API it is necessary to add possibility of editing of contextual menu Sheet Set, Sheet and Subset.

4. In AutoCAD it is necessary to add the settings, which allowing to disconnect behavior at which AutoCAD automatically loads files acad.lsp, acad.fas, acaddoc.lsp, acaddoc.fas, acad2013.lsp and acad2013.fas. Such need is caused by that given singularity AutoCAD those who writes various viruses often use. AutoCAD itself loads in itself the malicious code and fulfills it. Antiviruses don't cope with such infection and it, frequently, does the big harm to the organizations.

5. If in the drawing, being in Model space, to fulfill double cliques the mouse on attribute of block reference, which is Callout Block - the necessary sheet of filing (Sheet) automatically will be open, and at screen center it will be displayed necessary Sheet View. It works correctly only in the situation that on sheet, the paper space (Layout), instead of model space (Model), opened through any specific screen is current. If on sheet current space is Model, initialized through the specific screen Callout Block will open the necessary sheet (Sheet), but that displays not Sheet View which is necessary, and that specific screen which is leaking. It is necessary, that AutoCAD automatically passed in a paper space and showed requested Sheet View.

6. Possibility from command line cmd.exe is necessary to run a command, which would open at once the necessary drawing and in it switched on necessary Sheet View. Now there is a possibility to open from cmd.exe drawing on the necessary sheet (Layout), or on the necessary concrete type (Named View), but to open necessary Sheet View is impossible.

7. Possibility in the rtf-document to create hyperlink which would open the necessary drawing is necessary and in it switched on necessary Sheet View. Now there is a possibility to create the hyperlinks opening the drawing on the necessary sheet (Layout), or on the necessary concrete type (Named View), but to open necessary Sheet View with their help is impossible.

8. Possibility in the html-document and as in the pdf-document to create references with which help is necessary it would be possible to do the following:
  8.1. To open the drawing and to go in it to the necessary concrete type (Named View).
  8.2. To open the drawing and to go in it to the necessary sheet (Layout).
  8.3. To open the drawing and to go in it to necessary Sheet View.

9. In Sheet Set it is possible - to create additional properties (Custom Properties) for the filing (Sheet Set), or for sheet (Sheet). However there is no possibility to create such properties for group of sheets (Subset). Possibility to create Custom Properties and for Subset is necessary. It is necessary, that as it was possible to refer to these properties by means of fields (Fields).

10. The system variable is necessary (or a method in AutoCAD.Net API), allowing to control in the length of a console line AutoCAD (i.e. the maximum quantity of characters which can be located in single line in console AutoCAD).

11. The collection comprising all variables AutoCAD is necessary (for to use in a cycle). For each variable there should be an information on it concerns what level (application level, or document level), and as its availability (only for reading, or for a read and write).

Regards
Andrey Bushman
Comments