Работа с правилами в iLogic

Создание правила

До создания правила создайте все параметры, которые следует включить в это правило.

  1. Выберите на ленте вкладку "Управление" панель "iLogic" "Добавить правило" .
  2. В диалоговом окне "Имя правила" введите имя нового правила и щелкните ОК.
  3. Используйте диалоговое окно "Редактировать правило" для определения правила.
    • В документе детали или чертежа щелкните группу параметров, чтобы отобразить этот список параметров на вкладке "Параметры" справа. Затем дважды щелкните в списке параметр, чтобы вставить это имя в текст правила.

      В документе сборки выберите вкладку "3D модель" для отображения компонентов сборки или вкладку "Дерево файлов" для отображения файлов узлов и деталей. Разверните элемент файла детали для отображения параметров и элементов внутри этого файла.

      Прим.: Если в дереве модели щелкнуть непараметрический элемент, его имя приводится на вкладке "Имена" (радом с вкладкой "Параметры"). Чтобы вставить имя элемента в правила, дважды щелкните этот элемент в списке. Для многих из фрагментов чертежей требуется имя вида. Имя вида из текущего чертежа для его включения в правило можно получить, дважды щелкнув соответствующий элемент в списке.
    • Щелкните элемент правой кнопкой мыши и выберите Сохранить текущее состояние, чтобы вставить текст в правило, назначающее значения элементу.

      Например, сохраните текущее состояние параметра, чтобы вставить параметр и его текущее значение (например, d0 = 4.0 in).

      Параметры всегда сохраняются вместе с единицами измерения, но при записи новых формул единицы измерения не требуются. Чтобы сохранить состояние всех параметров определенного типа, можно щелкнуть правой кнопкой мыши группу параметров. Можно также щелкнуть элемент или компонент правой кнопкой мыши, чтобы сохранить его текущее состояние Активен (подавленное или неподавленное).

    • Используйте фрагменты, перечисленные на вкладке "Системные и пользовательские" в области "Фрагменты", для добавления функций, которые впоследствии можно настроить для правила. Дважды щелкните фрагмент для добавления его к правилу.
    • Используйте варианты, предлагаемые на панели инструментов редактирования над областью текста правила, чтобы управлять представлением правила. Также можно использовать предлагаемые варианты, чтобы вставить условные операторы, ключевые слова и операторы.
  4. Щелкните "ОК" для сохранения правила.

Редактирование правила

  1. Выберите на ленте вкладку "Управление" панель "iLogic" "Браузер iLogic", если браузер в настоящее время не отображается.
  2. В браузере iLogic перейдите на вкладку "Правила", чтобы редактировать правило в открытом документе. Можно также перейти на вкладку "Внешние правила", чтобы редактировать правило для компонента, хранящегося во внешнем файле.
  3. Дважды щелкните правило или щелкните его правой кнопкой мыши и выберите в контекстном меню команду "Редактировать правило".
  4. Используйте диалоговое окно "Редактировать правило" для редактирования правила. По мере ввода текста к тексту применяется соответствующий цветовой код для повышения удобочитаемости.
  5. Закончив, нажмите ОК.

Переименование правила

Чтобы переименовать правило, дважды щелкните (два отдельных щелчка) его имя в браузере iLogic для перехода в режим редактирования, а затем измените существующее имя.

Вставка синтаксиса правила

Используйте раскрывающиеся списки на панели инструментов над областью текста правила в диалоговом окне "Редактировать правило", чтобы вставить строки с фрагментами синтаксиса, а не вставлять синтаксис вручную. Вставив эти строки, при необходимости их можно настроить вручную. Предлагаются варианты для:

  • условных операторов,
  • ключевых слов,
  • операторов.

Чтобы вставить строку:

  1. Поместите курсор в требуемое место в правиле.
  2. Выберите строку из одного из раскрывающихся списков. Строка вставляется с использованием соответствующего цветового кода для повышения удобочитаемости.
  3. При необходимости отредактируйте вставленную строку.

Вставка фрагмента кода в правило

Используйте варианты в области "Фрагменты" в диалоговом окне "Редактировать правило", чтобы вставить в правило фрагменты кода. Затем можно при необходимости изменить вставленных фрагмент.

  1. Поместите курсор в область текста правила там, куда следует вставить фрагмент.
  2. Щелкните вкладку "Система" или "Пользовательские" в области "Фрагменты" для отображения доступных категорий для этой вкладки.
  3. Дважды щелкните фрагмент, чтобы вставить его в позицию курсора. Все компоненты фрагмента, такие как текст условия, функции и местозаполнители для переменных и параметров, окрашены в определенный цвет для повышения удобочитаемости.
  4. Отредактируйте вставленных фрагмент.

Работа со свертываемыми участками кода в правилах

Создание свертываемых участков кода и комментариев

Определите свертываемые участи кода и комментарии, чтобы не перегружать область текста правила.

Участок кода

  • Вставьте одинарную кавычку, а затем левую квадратную скобку, чтобы указать начало свертываемого участка кода. Чтобы указать завершение свертываемого участка кода, используйте одинарную кавычку и правую квадратную скобку.
  • Щелкните значок узла (-), чтобы свернуть код.

Комментарий

  • Вставьте три одинарных кавычки в начале строки, чтобы определить ее как свертываемый комментарий. Если комментарий занимает несколько строк, вставьте три одинарных кавычки в начале каждой строки.
  • Щелкните значок узла (-), чтобы свернуть комментарий.

Управление структурированием свертываемых участков кода и комментариев

Используйте следующие варианты из контекстного меню в области текста правила, чтобы работать с свертываемыми участками кода и комментариями:

  • Щелкните правой кнопкой мыши, а затем выберите СтруктурированиеВключить расширение структурирования, чтобы включить расширение участка кода или комментария в положении курсора.
  • Щелкните правой кнопкой мыши, а затем выберите СтруктурированиеВключить все структурирование, чтобы включить расширение всех свертываемых участков кода и комментариев в правиле.
  • Щелкните правой кнопкой мыши, а затем выберите СтруктурированиеОстановить структурирование, чтобы отключить все возможности структурирования и развернуть все свернутые участки кода или комментарии. При этом также перестает отображаться дерево структурирования. Чтобы включить возможности структурирования, щелкните правой кнопкой мыши, а затем выберите СтруктурированиеЗапустить автоматическое структурирование.

Предотвращение автоматического запуска правила

  1. Откройте правило в редакторе правил.
  2. Выберите вкладку "Параметры".
  3. Установите флажок "Подавленные"
  4. Щелкните ОК.
    Прим.: Подавленные правила можно запускать вручную. Можно также подавить правило в браузере iLogic.

Запуск правила без отображения диалоговых окон Inventor

  1. Откройте правило в редакторе правил.
  2. Выберите вкладку "Параметры".
  3. Установите флажок "Операция не в диалоговом режиме".
  4. Щелкните ОК.

Немедленный запуск зависимых правил при изменении значения связанных параметров

  1. Откройте правило в редакторе правил.
  2. Выберите вкладку "Параметры".
  3. Установите флажок Немедленно запустить зависимые правила.
  4. Щелкните ОК.
    Прим.: Если запускать зависимые правила немедленно, можно включить явные обновления модели после задания параметров. В момент обновления параметры уже обновлены и зависимые правила уже выполнены.

Предотвращение запуска правила при изменении параметров

  1. Откройте правило в редакторе правил.
  2. Выберите вкладку "Параметры".
  3. Установите флажок Не выполнять автоматически.
  4. Щелкните ОК.
    Прим.: При выборе этого параметра правило можно запускать только вручную, при помощи инициаторов событий или функции iLogicVB.RunRule.

Совместное использование кода в нескольких правилах

  1. Откройте правило в редакторе правил.
  2. Выберите вкладку "Параметры".
  3. Установите флажок Прямой код VB.
  4. Щелкните ОК.

iLogic не выполняет предварительную обработку кода в правиле, если он помечен как прямой код VB; следовательно, имена параметров Inventor не распознаются в правиле. Правило должно содержать классы или модули, которые можно вызвать из других правил. Используйте этот параметр, чтобы несколько правил могли совместно использовать код, или же чтобы поддерживать модульность кода. Однако помните, что код совместного доступа создать сложнее.

Выбор другого шрифта и размера шрифта для редактора правил

  1. Откройте правило в редакторе правил.
  2. Выберите вкладку "Параметры".
  3. Щелкните Выбрать шрифт.
  4. Выберите шрифт и размер шрифта. В поле образца текста отображается результат применения выбранных значений.
  5. Щелкните ОК.

Параметр выбора синтаксиса для сохранения текущего состояния

Этот параметр влияет только на сборки, когда команд "Сохранить текущее состояние" используется для параметра в компоненте внутри сборки:

  1. Откройте правило в редакторе правил.
  2. Выберите вкладку "Параметры".
  3. Установите флажок "Использовать имена компонентов", чтобы включить имена компонентов (например, Parameter("PartA:1", "d0") = 5.6 in) как часть синтаксиса. Этот выбор рекомендуется для переносимости.

    Можно также удалить этот флажок, чтобы исключить имена компонентов (например, PartA.ipt.d0 = 5.6 in).

  4. Щелкните ОК.
    Прим.: Параметр можно вставить в правило, щелкнув его имя во время создания правил на уровне сборки. Если впоследствии изменить имя компонента, чтобы оно не совпадало с исходным именем файла, использование параметрического синтаксиса позволяет легче найти компонент.

Запуск правил

Чтобы вручную запустить правило, в браузере iLogic щелкните правило правой кнопкой мыши и выберите из контекстного меню команду "Запустить правило".

Чтобы обеспечить синхронизацию параметров в правиле с моделью, до запуска правила выберите из контекстного меню команду "Повторно создать правило".

Чтобы явно запустить другое правило внутри правила, используйте функцию iLogicVb.RunRule.

Переупорядочивание дерева в браузере iLogic

Перетащите любое правило в браузере iLogic, чтобы изменить его положение в дереве. Все правила ниже перетаскиваемого правила сдвигаются по дереву вниз.

Повторное создание правила

Чтобы синхронизировать параметры в определенном правиле с моделью:

  1. Выберите правило в браузере iLogic.
  2. Щелкните правой кнопкой мыши и выберите в контекстном меню "Повторно создать правило".

Эта команда повторно связывает правило с параметрами Inventor, повторно компилирует правило и запускает его.

Повторное создание всех правил в текущем документе

Используйте эту команду для синхронизации с моделью параметров во всех правилах.

  1. Выберите документ в браузере iLogic.
  2. Щелкните правой кнопкой мыши и выберите в контекстном меню "Повторно создать все правила".

Кроме того, можно использовать команду "Повторно создать все правила" на ленте. Выберите вкладку "Управление" панель "iLogic" "Повторно создать все правила" .

Удаление правила

  1. Выберите на ленте вкладку "Управление" панель "iLogic" "Браузер iLogic", .
  2. Щелкните правило правой кнопкой мыши и выберите из контекстного меню "Удалить".
  3. Щелкните "ОК" при получении запроса на подтверждение выбранного действия.

Удаление всех правил в документе

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

Прим.: Если запустить эту команду в сборке, все правила в узлах и деталях также будут удалены.

Работа с внешними правилами

Создание внешнего правила

В браузере iLogic есть вкладка для внешних правил. С этой вкладки можно загрузить внешнее правило или создать новое.

Чтобы превратить существующее правило во внешнее:

  1. Откройте правило.
  2. Скопируйте код.
  3. Создайте новое внешнее правило и вставьте в него код.

Сохраняйте внешние правила как файлы .iLogicVb (это расширение рекомендуется) или как файлы .vb или .txt. Сохраняйте внешние правила в папку, которую можно найти, если запускать их из другого правила. iLogic выполняет поиск файлов внешних правил в следующих папках в указанному порядке:

  • в папке, где расположен текущий документ Inventor (позволяет копировать модели вместе со связанными правилами),
  • в текущей папке рабочего пространства проекта Inventor,
  • в папках из списка, заданного в конфигурации iLogic (обычно для правил рабочей группы или компании).

В браузере iLogic имеется контекстное меню для верхнего узла (внешние правила в файлах) и для каждого правила в дереве.

Создание значка внешнего правила

Для внешнего правила, отображаемого в браузере iLogic, можно добавить значок. Создайте файл .bmp (рекомендуется размер 16 X 16) с тем же именем, что и у файла правила в той же самой папке.

Например, если внешнее правило называется Правило пользовательских проверок.iLogicVb, назовите файл значка Правило пользовательских проверок.bmp.

После создания точечного рисунка перезагрузите Autodesk Inventor для отображения значка. Этот значок нельзя редактировать во время работы в Autodesk Inventor.

Редактирование внешнего правила

Чтобы редактировать внешнее правило, откройте диалоговое окно "Редактировать правило" и дважды щелкните правило в дереве, чтобы его редактировать.

Для редактирования правила можно также использовать внешнюю программу, например, Блокнот. После сохранения правила выберите из контекстного меню в дереве пункт "Повторно загрузить из файла", чтобы реализовать изменения в Inventor.

Внешние правила и параметры

Внешние правила не запускаются автоматически в ответ на изменение определенного параметра. В отличие от внутренних правил имена параметров не становятся автоматически доступны как переменные правила.

Например, следующих оператор в правиле не работает:

d1 = d0 * 0.5

Вместо него используйте следующий оператор:

Parameter("d1") = Parameter("d0") * 0.5

Этот оператор работает для любой детали или сборки, где есть параметры с именами d0 и d1. Его можно использовать для работы со связанными деталями, в которых есть некоторые общие черты.

Использование мастеров для создания специальных правил

Внимание: Используйте конструктор форм iLogic для создания форм интерфейса пользователя. Интерфейс пользователя может содержать элементы управления для инициирования правил, изменения значений параметров и задания свойства Inventor. Для конструктора форм iLogic программирования не требуется. Используйте Visual Basic для проектирования и программирования формы, если к интерфейсу пользователя предъявляются требования, не соответствующие возможностям конструктора форм iLogic.

Управление диалоговым окном на основе параметров модели

  1. Щелкните Создать правило для диалогового окна на вкладке "Мастера" в диалоговом окне "Редактировать правило".

    В диалоговом окне "Открыть файл Dll" отображается содержимое папки iLogicAdd, где хранятся ранее созданные DLL-файлы.

    Прим.: Может потребоваться создать папку iLogicAdd, расположенную по пути C:\Program Files\Autodesk\Inventor {версия}\Bin\iLogicAdd.
  2. Выберите DLL-файл для заполнения полей диалогового окна "Правило для внешнего файла DLL" соответствующими именами классов и переменных.
  3. Щелкните ОК, чтобы создать код.

Сохранение вида текущего экрана

  1. Щелкните Запомнить текущий вид на вкладке "Мастера" в диалоговом окне "Редактировать правило".
  2. Выберите "Параметр размера" в диалоговом окне "Запомнить вид".
    • Сохранить и восстановить текущие границы вида - восстановление вида с использованием настроек ориентации и масштаба в момент сохранения вида с помощью правила.
    • Не изменять размер вида при восстановлении - перемещение модели к центру дисплея и задание ориентации без изменения масштаба.
    • По размерам модели при восстановлении - перемещение модели в центр дисплея и заполнение всего дисплея (аналогично команде "Показать все").
  3. Щелкните ОК, чтобы создать код.

Создание окна сообщения

Используйте этот мастер для создания правила, которое генерирует окно сообщения.

  1. Щелкните Окно сообщения на вкладке "Мастера" в диалоговом окне "Редактировать правило".
  2. Введите заголовок, который будет отображаться в верхней части окна сообщения.
  3. Выберите, какие кнопки должны отображаться в окне сообщения.
  4. Укажите кнопку по умолчанию, выбрав номер, соответствующий ее относительному положению по порядку на основе выбора кнопок.

    Например, если в качестве схемы кнопок выбрать ДаНетОтмена, а кнопкой по умолчанию должна быть кнопка "Нет", то выберите 2.

  5. Выберите значок статуса, который следует отображать в окне сообщения.
  6. Введите текст, отображаемый в окне сообщения, заключив его в кавычки.
  7. Щелкните "Просмотр" для отображения диалогового окна с выбранными параметрами.
  8. Щелкните ОК, чтобы создать код.

Отображение диагностических сведений, когда значения параметров выходят за заданный диапазон

  1. Щелкните Ограничения параметров на вкладке "Мастера" в диалоговом окне "Редактировать правило".
  2. Введите имя параметра.
  3. Задайте максимальное и минимальное значения.
  4. Введите заголовок и текст сообщения, которое будет отображаться при нарушении минимального и максимального значений.
  5. Щелкните "Применить" для создания кода или "Сообщение по умолчанию", чтобы сбросить сообщения до тексту по умолчанию.

Использование правила для отображения диалогового окна

Можно использовать правило для отображения диалогового окна, где пользователь может внести какие-либо данные. Диалоговое окно может содержаться в правиле, однако более простым и удобным вариантом будет включить его во внешний файл DLL (библиотеку классов).

Используйте Visual Studio версии 2005 или 2008. Visual Basic Express доступен для бесплатной загрузки с веб-узла Microsoft.

Знакомство с Visual Basic 2008

  1. Если Visual Basic 2008 Express не установлен на компьютере, загрузите его с веб-узла Microsoft® и установите на компьютере. Его можно загрузить бесплатно.
  2. Откройте Visual Basic 2008 Express и создайте проект с типом "Библиотека классов".
  3. Присвойте проекту имя ClassLibrary1 (имя по умолчанию) и щелкните ОК. Запишите это имя на листе бумаге в точности, как оно было введено. Это имя потребуется на более позднем этапе.

    Открывается новое окно, а в правом верхнем углу экрана — Solution Explorer.

  4. В Solution Explorer щелкните правой кнопкой мыши имя проекта, выберите "Добавить", а затем из подменю выберите "Создать элемент". Отображается диалоговое окно "Добавить элемент".
  5. Выберите шаблон диалогового окна и щелкните "Добавить".

    В конструкторе форм Windows отображается графический вид создаваемого диалогового окна. Этот интерфейс можно использовать для добавления к диалоговому окну элементов управления.

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

  6. Перетащите текстовое поле из группы "Общие элементы управления" на панели элементов в диалоговое окно и поместите его в серой области этого диалогового окна. При необходимости размер этого диалогового окна можно изменить.
  7. Добавьте к текстовому полю метку для отображения имени параметра.
  8. Стараясь не задеть метку и текстовое поле, дважды щелкните фон диалогового окна для отображения редактора кода. Отображается следующий код.
  9. Поместите курсор непосредственно под строкой-
    Public Class Dialog1
  10. Добавьте следующую строку-
    Public d0 As Double
  11. Поместите курсор в верхней части подпрограммы OK_Button_Click перед оператором Me.DialogResult... и нажмите ВВОД, чтобы добавить новую строку.
  12. На новой строке добавьте -
    d0 = TextBox1.Text

    Теперь код выглядит следующим образом -

  13. Сохраните результаты своей работы, используя "Файл" "Сохранить" или "Файл" "Сохранить все".

    Теперь проект почти готов к построению. При выполнении операции построения Visual Basic создает файл DLL. Для Visual Basic можно указать папку для сохранения этого файла, изменив путь выходного файла для операции построения.

  14. Щелкните вкладку, где находится заголовок проекта, а затем повторно щелкните вкладку "Компилировать". Путь выходного файла -

    Program Files\Autodesk\Inventor {версия}\Bin\iLogicAdd\

  15. Чтобы построить проект, щелкните вкладку "Построить" в меню в верхней части окна. Если построение выполняется без ошибок, в строке состояния в левом нижнем углу экрана отображается сообщение Построение выполнено успешно.
  16. Повторно сохраните свою работу, используя команду "Сохранить все", и откройте Inventor.
  17. Используйте окно "Добавить правило", чтобы создать правило с именем Правило формы, содержащее следующий код:
    AddReference "ClassLibrary1"
    Sub Main()
    dim dlg as new ClassLibrary1.Dialog1
    dlg.d0 = d0
    i = dlg.ShowDialog()
    if (i = vbOK)then
    d0 = dlg.d0
    end if
    End Sub
    Прим.: Чтобы создать этот код, можно также использовать команду Создать правило для диалогового окна на вкладке "Мастера" в диалоговом окне "Редактировать правило".

    Это правило отправляет текущее значение параметра Inventor d0 в диалоговое окно, а затем отображает это диалоговое окно. Пользователь может использовать это диалоговое окно для редактирования этого значения. После щелчка кнопки "ОК" это значение из диалогового окна назначается параметру.

Создание диалогового окна

Чтобы создать диалоговое окно, позволяющее отображать и изменять значения некоторых параметров:

  1. Откройте Visual Studio.
  2. Создайте проект типа "Библиотека классов".
  3. В Solution Explorer щелкните правой кнопкой мыши имя проекта и выберите "Добавить" "Создать элемент" "Диалоговое окно".

    В конструкторе форм Windows отображается графический вид создаваемого диалогового окна. Этот интерфейс можно использовать для добавления к диалоговому окну элементов управления.

  4. Щелкните Вид Панель элементов, чтобы просмотреть доступные элементы управления.
  5. Чтобы иметь возможность отображать значение параметра Inventor и редактировать его, добавьте элемент управления типа "Поле ввода". Добавьте к каждому текстовому полю метку для отображения имени параметра.
  6. Дважды щелкните фон диалогового окна.

    В редакторе кода отображается новая подпрограмма с именем Dialog1_Load.

  7. В этой подпрограмме добавьте в конце подпрограммы следующую строку -
    TextBox1.Text = d0
  8. Поместите курсор после строки -
    Public Class Dialog1
  9. Добавьте следующую строку-
    Public d0 As Double
  10. В начале подпрограммы с именем OK_Button_Click добавьте следующую строку:
    d0 = TextBox1.Text

    Теперь код выглядит следующим образом -

    Imports System.Windows.Forms
    Public Class Dialog1
    Public d0 As Double 
    Private Sub OK_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK_Button.Click  
      d0 = TextBox1.Text
      Me.DialogResult = System.Windows.Forms.DialogResult.OK
      Me.Close()
    End Sub
    Private Sub Cancel_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel_Button.Click
      Me.DialogResult = System.Windows.Forms.DialogResult.Cancel  
      Me.Close()
    End Sub
    Private Sub Dialog1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       TextBox1.Text = d0
    End Sub
    End Class
  11. Постройте проект и сохраните его, используя "Файл" "Сохранить все".

При построении проекта создается DLL. Существует несколько вариантов:

  • Скопируйте DLL в каталог iLogicAdd, расположенный в каталоге bin прораммы Autodesk Inventor (обычно в каталоге C:\Program Files\Autodesk\Inventor {версия}\Bin\iLogicAdd).
  • Измените настройки проекта, чтобы автоматически сохранять DLL в этом каталоге. Используйте команду "Конфигурация iLogic", чтобы изменить каталог, в котором iLogic выполняет поиск DLL. См. дополнительные сведения по использованию DLL-файлов в правилах в разделе "Расширение возможностей iLogic".

В следующем примере правила используется диалоговое окно:

AddReference "ClassLibrary1"
Sub Main()
dim dlg as new ClassLibrary1.Dialog1
dlg.d0 = d0
i = dlg.ShowDialog()
if (i = vbOK) then
d0= dlg.d0
end if
End Sub

Это правило отправляет текущее значение параметра Inventor d0 в диалоговое окно, а затем отображает это диалоговое окно. Пользователь может использовать это диалоговое окно для редактирования этого значения. После щелчка кнопки "ОК" это значение из диалогового окна назначается параметру.

Можно автоматически создать аналогичный код для диалогового окна. В диалоговом окне "Редактировать правило" выберите вкладку "Мастера", а затем выберите "Создать правило для диалогового окна".