Файл: Методические указания по выполнению лабораторных работ по дисциплине (модулю) Лингвистическое и программное обеспечение автоматизированных систем.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 11.01.2024

Просмотров: 610

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

1.Цель и задачи работы

2.Общие положения (теоретические сведения)

2.1. Принцип рекурсии в правилах грамматики

2.2. Запись правил грамматик с использованием метасимволов

2.3. Запись правил грамматик в графическом виде

3. Задание на лабораторную работу

4. Ход работы (порядок выполнения работы)

5. Содержание отчета

1.Цель и задачи работы

2.Общие положения (теоретические сведения)

2.1. Разработка лексического анализатора

2.2. Разработка синтаксического анализатора

2.3. Пример построения простого синтаксического анализатора

2.4. Анализаторы для сложных рекурсивных грамматик

5. Содержание отчета

1. Цель и задачи работы

2. Общие положения (теоретические сведения)

2.5. Логическая структура XML-документа

2.8. Описание структуры XML-документов

2.9. Язык XML Sсhema Definition (XSD)

2.10. Программная обработка XML-документов

2.11. Обработка XML-данных с использованием модели DOM

2.12. Входные данные

2.14. Сопоставление объектной иерархии с XML-данными

2.15. Создание XML-документа

2.16. Считывание XML-документа в DOM

2.17. Директивы таблицы стилей, встроенные в документ

2.18. Загрузка данных из модуля чтения

2.19. Доступ к атрибутам в модели DOM

2.20. Получение всех атрибутов в виде коллекции

2.21. Получение единичного узла атрибута

2.22. Считывание объявлений сущностей и ссылок на сущности в DOM

2.23. Сохраняемые ссылки на сущности

2.24. Разворачиваемые и не сохраняемые ссылки на сущности

2.25. Создание новых узлов в модели DOM

2.26. Создание новых атрибутов для элементов в модели DOM

2.27. Атрибуты по умолчанию

2.28. Дочерние узлы атрибута

2.29. Проверка имен XML-элементов и атрибутов при создании новых узлов

2.30. Создание новых ссылок на сущности

2.32. Копирование существующих узлов

2.33. Копирование существующих узлов из одного документа в другой

2.34. Копирование фрагментов документа

2.35. Удаление узлов, содержимого и значений из XML-документа

2.36. Изменение узлов, содержимого и значений в XML-документе

2.37. Проверка XML-документа в DOM

2.38. Проверка XML-документа в DOM

2.39. Обработка ошибок проверки и предупреждений

2.40. Сохранение и запись документа

2.41. Запись XmlDeclaration

2.42. Запись содержимого документа с помощью свойства OuterXml

3.Задание на лабораторную работу

4. Ход работы (порядок выполнения работы)

5. Содержание отчета

1. Цель и задачи работы

2. Общие положения (теоретические сведения)

3.1. Запись макроса

3.2. Организация ввода данных

3.3. Вывод данных

3. Задание на лабораторную работу

4. Ход работы (порядок выполнения работы)

5. Содержание отчета

1. Цель и задачи работы

2. Общие положения (теоретические сведения)

Организация ввода данных

Вывод данных

Заключение

3. Задание на работу

4. Ход работы (порядок выполнения работы)

5. Содержание отчета

1. Цель и задачи работы

2. Общие положения (теоретические сведения)

3.4. Эскизы

3.5. Эскизы в документах Деталей

3.6. Взаимодействие с пользователем

3.7. Выбор файла

3 Задание на работу (рабочее задание)

4. Ход работы (порядок выполнения работы)

5. Содержание отчета





Вывод данных



Для вывода текста пользователю можно воспользоваться функцией ksMessage:
iKompasObject.ksMessage("Start")
В результате выводится окно с текстом:


Заключение



Таким образом, становится ясно, что сама система Компас-3D даже в базовой поставке обладает всеми возможностями для построения специализированной САПР. И процесс проектирования хоть и трудоемок, но не так уж и сложен.

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

3. Задание на работу


Создать макрос для параметрического построения данной детали в 3D в КОМПАС средствами языка Python
























4. Ход работы (порядок выполнения работы)



1) Ознакомится теоретической справкой.

2) Разработать ПО для реализации задания.

3) Оформить отчет.

4) Защитить работу преподавателю.

5. Содержание отчета



1) Титульный лист

2) Задание

3) Чертеж с указанием параметров.

4) Описание процесса подготовки макроса.

5) Скриншоты с демонстрацией работы программы.

6) Выводы по работе

7) Список используемой литературы

8) Приложение – текст макроса.
Лабораторная работа № 6

Разработка программных продуктов для трехмерного моделирования с использованием встроенных языков среды Autodesk Inventor

1. Цель и задачи работы


Цель работы – освоить навыки применения и разработки графических библиотек для САПР «Autodesk Inventor».

Для достижения поставленной цели необходимо выполнить следующие задачи:

- Освоить принципы применения стандартных графических библиотек.

- Разработать ПО графической библиотеки.

2. Общие положения (теоретические сведения)



Inventor API реализуется на основе COM технологии и предоставляет разные способы обратиться к данным Inventor при помощи различных видов надстроечных приложений (Plug-in modules).

INCLUDEPICTURE "https://api-2d3d-cad.com/wp-content/uploads/2018/02/image001-1-300x285.jpg" \* MERGEFORMATINET INCLUDEPICTURE "https://api-2d3d-cad.com/wp-content/uploads/2018/02/image001-1-300x285.jpg" \* MERGEFORMATINET INCLUDEPICTURE "https://api-2d3d-cad.com/wp-content/uploads/2018/02/image001-1-300x285.jpg" \* MERGEFORMATINET INCLUDEPICTURE "https://api-2d3d-cad.com/wp-content/uploads/2018/02/image001-1-300x285.jpg" \* MERGEFORMATINET

Белые поля представляют компоненты, которые обеспечивают API – Inventor и «Apprentice Server». Синий цилиндр в основании представляет Inventor данные, к которым Вы обращаетесь – это детали, сборки, и т.д. Все желтые поля представляют программы, которые Вы записываете. Когда одно поле включает другое поле, это указывает, что включенное поле выполняется в том же самом процессе как поле, включающее его

VBA, подобно Visual Basic, позволяет Вам создавать кроме модулей кода (Module, ThisDocument) еще модули формы (UserModule) и класса (Class Module). В отличие от Visual Basic все VBA модули содержатся в пределах одного файла и не могут загружаться отдельно от проекта.



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

VBA от Inventor поддерживает три типа проектов: документ, приложение и пользовательский. Основное различие между этими типами проектов – расположение проекта VBA. Проекты документов хранятся в документах Inventor. Приложения и пользовательские проекты хранятся во внешних файлах. Поскольку Inventor поддерживает сохранение проектов VBA в документах Inventor или во внешних файлах, вы можете решить, какой подход лучше подходит для вашей конкретной ситуации. Ниже приведены некоторые факторы, которые следует учитывать при принятии этого решения.

Проекты документов позволяют легко добавлять код, специфичный для документа, к самому документу. Например, если у вас есть стандартная деталь, которая используется для создания семейства деталей, можно написать программу, которая устанавливает параметры детали для создания различных экземпляров. Эту программу удобно встроить в документ Inventor, чтобы программа всегда была доступна вместе с документом детали.

Inventor автоматически загружает проект приложения всякий раз, когда пользователь запускает Inventor. Это делает макросы внутри проекта приложения всегда доступными. Только один проект может быть определен как проект приложения. Файл проекта, который служит проектом приложения, определяется с помощью диалогового окна «Параметры приложения» Inventor, как показано ниже. Поле «Проект VBA по умолчанию» на вкладке «Файл» определяет, какой пользовательский проект использовать в качестве проекта приложения.


Пользовательские проекты не загружаются автоматически, но должны загружаться вручную с помощью команды «Загрузить проект» в меню «Файл VBA» Inventor (в Inventor выберите вкладку «Инструменты», затем «Редактор VBA», затем «Файл | Загрузить проект ...»). Новые пользовательские проекты также можно создавать с помощью команды «Новый проект» в меню «Файлы VBA». Нет ограничений на количество загружаемых пользовательских проектов.


Доступ к интерфейсу VBA Inventor в Inventor осуществляется с помощью команды «Редактор VBA» на вкладке «Инструменты» на ленте. Команда Macros позволяет запускать существующие макросы и открывать редактор для определенного макроса. Эти две команды также доступны с помощью сочетаний клавиш Alt + F8 и Alt + F11.

Прежде чем идти дальше, давайте определимся с некоторыми терминами. Sub – это, по сути, функция без возвращаемых значений. Код заключен в операторы Sub и End Sub. Sub может иметь аргументы, которые могут быть входными и выходными, но не имеют возвращаемого значения. Макрос (macro) - это особый случай Sub, у которого нет аргументов. Любые Sub без аргументов будут считаться макросами. Например, следующий код будет рассматриваться VBA как макрос.

Public Sub SampleMacro()

MsgBox "This is a sample."

End Sub


При выполнении команды «Макросы» ("Macros") в Inventor отображается диалоговое окно, показанное ниже. В этом диалоговом окне отображается список всех доступных в настоящее время макросов. Этот список можно отфильтровать с помощью поля со списком «Макросы в» ("Macros in"). Это позволяет вам перечислить макросы, содержащиеся в конкретном проекте (документ, пользовательский проект или проект приложения), или чтобы вывести список всех макросов во всех загруженных проектах.



Когда макрос выбран из списка, все кнопки справа, кроме одной, становятся активными:

Run - выбранный макрос выполняется без отображения среды программирования VBA.

Cancel – закрывает диалоговое окно.

Step Into - Открывает среду программирования VBA и начинает выполнение выбранного макроса пошагово. Это полезно при отладке макроса.

Edit - Открывает среду программирования VBA с позицией курсора в начале первой строки макроса.

Create - Если выбран существующий макрос, эта кнопка неактивна. Если новое имя вводится в поле «Имя макроса» ("Macro name"), эта кнопка становится активной, и при ее нажатии будет создан макрос с указанным именем.

Delete – Удаляет выбранный макрос. Удаляет Sub из проекта.

3.3.1Файлы и документы


Объект File представляет собой хранилище в файловой системе (то есть файл на диске). Объект Document представляет собой экземпляр модели или чертежа в памяти. Документ может иметь только один связанный объект File. Однако, поскольку возможно иметь несколько экземпляров (или уровней детализации) файла в памяти, которые сохраняются в одном хранилище файловой системы, несколько объектов
Document могут быть связаны с одним и тем же объектом File.

3.3.2Файл и Ссылки на Документ


Объект FileDescriptor описывает ссылку из файла на другой файл. DocumentDescriptor описывает ссылку из документа на другой документ. Дескриптор содержит всю информацию, необходимую для поиска указанного файла / документа, а также состояние ссылки (исправное, неразрешенное, замененное и т.д.). Объекты File и FileDescriptor представляют собой консолидированное представление всех представлений документа. На рисунке ниже показаны отношения между объектами FileDescriptor, File, DocumentDescriptor и Document.


3.3.3Соответствующие API свойства


Примечание: Интерфейс документа заменен на ApprenticeServerDocument в Apprentice. Все названия свойств остаются прежними.

Объект File

Свойство

Возвращаемые объекты

Описание

AvailableDocuments

Document objects

Документы в памяти.

AllReferencedFiles

File objects

Все файлы, на которые ссылается этот файл (включая рекурсивно вложенные ссылки).

ReferencingFiles

File objects

Все файлы в памяти, которые напрямую ссылаются на этот файл.

ReferencedFiles

File objects

Все файлы, на которые напрямую ссылается этот файл. Неразрешенные и подавленные ссылки пропускаются.

ReferencedFileDescriptors

FileDescriptor objects

Коллекция, описывающая все прямые ссылки, содержащиеся в этом файле. Это сводный обзор всех ссылок на документы. Включает неразрешенные и подавленные ссылки. Также включает ссылки на внешние файлы (xls, bmp и т.д.)


DocumentApprenticeServerDocument) Object

Свойство

Возвращаемый тип

Описание

File

File object

Связанный объект File.

AllReferencedDocuments

Document objects

Все документы, на которые есть ссылки в этом документе (включая рекурсивно вложенные ссылки).

ReferencingDocuments

Document objects

Все документы в памяти, которые напрямую ссылаются на этот документ.

ReferencedDocuments

Document objects

Все документы, на которые есть прямая ссылка в этом документе. Неразрешенные и подавленные ссылки пропускаются.

ReferencedDocument
Descriptors

DocumentDescriptor objects

Коллекция, описывающая все прямые ссылки, содержащиеся в этом документе. Включает неразрешенные и подавленные ссылки.

ReferencedOLEFile
Descriptors

ReferencedOLEFileDescriptor objects

Коллекция, описывающая все прямые ссылки на внешние файлы, содержащиеся в этом документе. Включает неразрешенные ссылки.

ReferencedOpaqueFile
Descriptors

ReferencedOpaque
FileDescriptor objects

Коллекция, описывающая все прямые ссылки на внешние файлы, содержащиеся в этом документе. Включает недостающие ссылки.