Пояснительная записка (1230110), страница 4
Текст из файла (страница 4)
Visual LISP (VLISP) – это интегрированная среда разработки программ на языке программирования AutoLISP в системе AutoCAD 14 (2000), которая значительно облегчает процесс создания программы, ее изменения, тестирования и отладки. Кроме того, Visual LISP обеспечивает эффективное использование автономных приложений Object ARX, написанных на языке AutoLISP. Visual LISP включает следующие функциональные компоненты:
-
текстовый редактор, ориентированный на синтаксис языка AutoLISP и использующий язык кодирования цветом (DCL), что значительно упрощает чтение и отладку программ на языке AutoLISP;
-
консоль, куда выдаются сообщения о результатах загрузки программы, различные диагностические сообщения и т. д.;
-
форматтер, который преобразует текст программы и придает ему легко читаемый структурированный вид;
-
эмулятор AutoLISP, обеспечивающий наглядность процесса выполнения программы;
-
программу проверки синтаксиса, распознавания неправильных конструкций AutoLISP;
-
компилятор, который уточняет выполнение программы, ускоряет, а также обеспечивает безопасную и эффективную систему выдачи результатов;
-
встроенную систему контроля, которая обеспечивает удобный доступ к переменным и значениям выражений с целью просмотра структуры данных и их изменений;
-
отладчик, обеспечивающий высокий уровень отладки программ;
-
контекстно-зависимые справки для функций AutoLISP;
-
систему управления проектом, которая упрощает работу с приложениями [16].
2.4 VBA
Язык VBA используется многими большими компаниями, которые занимаются разработкой программного обеспечения. Инструментальные средства VBA ничем не отличаются от подобных средств, применяемых в автономном языке Visual Basic. Для того чтобы программисты, пишущие макросы для Microsoft Office, научились писать программы на языке VBA для приложений AutoCAD, им необходимо всего лишь познакомиться с основными функциональными возможностями этой программы. Одним из свойств VBA является возможность взаимодействия с другими приложениями, такими как Microsoft Excel, Microsoft Word, Microsoft Access и Visual Basic, с использованием технологии ActiveX Automation. Эта технология была разработана компанией Microsoft для программирования компонентных приложений на основе модели СОМ. Технология ActiveX Automation позволяет обращаться к объектам и функциям AutoCAD из Microsoft Excel или других приложений, поддерживающих ActiveX. В то же время объекты и возможности Excel или какого-нибудь другого приложения могут с успехом использоваться в среде программирования AutoCAD. Язык AutoLISP, например, не поддерживает возможность перекрестного межпрограммного макропрограммирования. Использование VBA в программе AutoCAD
Visual Basic позволяет писать программные коды, компилируемые в независимо исполняемые файлы (файлы с расширением .exe). Исполняемые файлы не зависят ни от используемых приложений, ни от документов, в которых они были написаны. Программы VBA должны соответствовать вашим потребностям. Программы, написанные на языке VBA, могут сохраняться в виде проектов, содержащих всю информацию, необходимую для компилирования и запуска этих программ. В AutoCAD имеется независимая область, в которой можно выполнять любые операции, относящиеся к проекту. Эта область называется интегрированной средой разработки (IDE – Integrated Development Environment).
Приложение Autocad VBA представляет собой набор программных модулей, модулей классов и форм. Пороект может быть сохранен как в рисунке (внедренный), так и во внешнем файле. Внедренный проект автоматически загружается при открытии рисунка. Ограничение внедренных проектов в том, например, что они не могут закрыть рисунок, внутри которого находятся. Глобальные проекты в этом плане более гибки, при этом однако пользователь должен знать где расположен файл в котором хранятся макросы. Глобальный проект проще передавать другим пользователям и в нем удобно хранить общие макросы. В любой момент могут быть использованы оба типа проектов. На уровне двоичного кода проект Autocad VBA не совместим с проектом Visual Basic, однако обмен формами, модулями и классами можно производить через экспорт- импорт. (Команды IMPORT и EXPORT VBA).
Принципы программирования на VBA для AutoCAD основываются на трех базовых составляющих.
Первой составляющей является сама программа AutoCAD, которая обладает большим набором объектов, различных данных и команд. AutoCAD является приложением с открытой архитектурой и имеет интерфейсы различных уровней. Для эффективного использования VBA желательно иметь навыки программирования под AutoCAD. Однако следует отметить, что положенный в основу VBA объектно-ориентированный подход к программированию существенно отличается от используемого в AutoLISP.
Второй составляющей является интерфейс ActiveX Automation, который определяет порядок передачи сообщений (взаимодействия) с объектами AutoCAD. Программирование на VBA требует понимания принципов организации интерфейса ActiveX Automation.
Третьей составляющей является, собственно, сама среда VBA. VBA имеет свой собственный набор объектов, ключевых слов, констант и т.д., которые используются при написании, отладке и выполнении программ. В комплект поставки AutoCAD входит обширная справочная система по VBA от Microsoft [15].
2.5 ActiveX
ActiveX Automation – это разработанная корпорацией Microsoft технология, которая основана на архитектуре компонентной объектной модели (COM). Этот интерфейс позволяет выполнять адаптацию AutoCAD, использовать хранящиеся в чертежах данные совместно с другими приложениями, а также автоматизировать выполнение различных задач.
Можно создавать объекты чертежа и управлять ими из любого приложения, выполняющего функцию контроллера автоматизации. Интерфейс Automation позволяет работать с другими приложениями на макроуровне, что невозможно в AutoLISP.
Программный доступ к чертежам можно осуществлять из самых разных сред программирования. До разработки ActiveX Automation были доступны только интерфейсы AutoLISP и C++.
Существенно упростилось совместное использование данных с другими приложениями, например Microsoft Excel и Microsoft Word.
Можно, например, выдать запрос в командной строке, изменить настройки, создать набор объектов или найти нужные объекты чертежа. Тип используемых средств для создания контроллера следует выбирать с учетом сложности манипуляций, которые будут выполняться с объектами чертежа.
Все доступные через интерфейс объекты называются объектами Automation. Объекты Automation позволяют работать с методами, свойствами и событиями. Методы являются функциями, с помощью которых можно выполнять операции над объектом. Свойства являются функциями, которые позволяют устанавливать или получать информацию о состоянии объекта. События – это операции или вызовы, инициированные пользователем, на которые отвечает программа [17].
Практически любое приложение может работать с объектами Automation непосредственно в среде AutoCAD. В качестве таких приложений могут выступать отдельные исполняемые exe-файлы, библиотеки динамической компоновки (DLL-файлы), а также макросы, созданные в таких приложениях, как Microsoft Word или Microsoft Excel. Наиболее распространенным, вероятно, будет отдельный исполняемый файл. При использовании приложений сторонних разработчиков необходимо следовать прилагаемым к ним инструкциям по установке и использованию продукта.
3 ОПИСАНИЕ ПРОЕКТНЫХ ПРОЦЕДУР
Рассмотрим работу проектных процедур для проектирования элементов путевого развития и составления координатной сетки элементов.
При нажатии кнопки «Платформа высокая» (рисунок 14) открывается диалоговое окно (рисунок 15), в котором требуется ввести задать параметры для ее построения. Параметры платформы включают следующие параметры:
-
длина;
-
тип прохода;
-
ширина прохода;
-
местоположение прохода.
Рисунок 14 – Высокая
платформа
Тип прохода для высокой платформы может быть двух типов – мост и тоннель.
Для каждого типа проходов существует минимальная ширина прохода, поэтому после выбора прохода, необходимо указать его ширину. Если указанная ширина окажется меньше минимальной, то после нажатия кнопки «Ок», диалоговое окно закрывается, выводится сообщение об ошибке и выполнение команды прерывается.
Также в этом диалоговом окне присутствует возможность непосредственно для черчения станции. В блоке «Чертить» существует возможность выбора направления черчения платформы относительно пути – сверху или снизу.
Рисунок 15 – Диалоговое окно
платформы
В некоторых случаях необходимо чертить ось пассажирского здания, которая должна проходить через середину платформы по оси OY. Иными словами, для последующего составления координатной сетки, осью OY будет считаться линия перпендикулярная направлению главных путей и проходящая через середину платформы. Для того, чтобы начертить ее сразу после построения платформы, необходимо поставить галочку «Чертить ось пассажирского здания». Следует отметить, что для построения осевой линии, должна быть подгружена штрихпунктирная линия с названием «ACAD_ISO10W100». Сделать это можно следующим образом:
-
в рабочем окне AutoCAD открыть вкладку «Главная»;
-
в панели «Свойства» нажать на кнопку «тип линий», затем нажать «Другое…»;
-
в открывшемся диалоговом окне (рисунок 16) нажать «Загрузить»;
-
в окне «Загрузка/Перезагрузка типов линий» выбрать «ACAD_ISO10W100», после чего закрыть все диалоговые окна нажатием кнопки «ОК».
Рисунок 16 – Загрузка типов линий
Пример построения высокой платформы представлен на рисунке 17.
Рисунок 17 – Пример построения низкой платформы
Процедура построения низкой платформы (рисунок 18) похожа на построение высокой платформы, но с небольшими изменениями. На низких платформах, кроме тоннелей и мостов, может быть еще один тип прохода – настил. Настил не требуется ввода ширина прохода, так как ширина платформы не зависит от ширины настила.
Рисунок 18 – Низкая платформа
Для указания направления движения путей используются кнопки «Однонаправленное», «Двунаправленное» и «Встречное» (рисунок 19).
Рисунок 19 – Процедуры указания
направления движений
Алгоритм указания направления движения состоит в следующем:
-
выбор типа направления;
-
задание угла;
-
указание точки установки.
Пример работы процедуры для указания направления движения представлен на рисунке 20.
Рисунок 20 – Пример построения встречного движения
Для указания границ начала станций используются процедуры установки станционных табличек (рисунок 21). В зависимости от номера главного пути выбирается нужное направление станционной таблички.
Рисунок 21 – Нечетная граница станции
После выбора нужной границы станции следует указать точку установки. Пример построения границы станции показан на рисунке 22.











