Главная Обратная связь

Дисциплины:






Доступ к параметрам в базовой детали



Процедуры

Функции

Добавление функции к правилу

  1. Выберите правило в браузере iLogic на вкладке "Правила" или на вкладке "Внешние правила".
  2. Щелкните правой кнопкой мыши и выберите "Редактировать правило".
  3. В текстовой области правила в диалоговом окне "Редактировать правило" поместите курсор в то место, где следует вставить функцию. Как правило функции начинаются с новой строки.
  4. Найдите функцию в области "Фрагменты".
  5. Чтобы добавить эту функцию, дважды щелкните ее мышью.
  6. Если функция содержит аргументы или требует ввода данных, то при необходимости внесите изменения во вставленный фрагмент программы.

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

Редактирование функции

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

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

Ссылки

Функции Parameter

Чтобы перейти к функциям Parameter, разверните узел "Parameters" на вкладке "Система" в области "Фрагменты".

Parameter

Parameter("parameterName")

Эта функция непосредственно изменяет значения параметров.

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

PartA.ipt.d12 = 6.3

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

Parameter("PartA:1", "d12") = 6.3

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

Переименуйте компонент вручную, чтобы при замене компонента сохранить его имя.

Для имени компонента можно также использовать функцию MakePath:

Parameter(MakePath("SubAssem1:1", "Part1:1"), "d12") = 6.3

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



param_val = Parameter("d0")

param_val = Parameter("PartA:1", "d0")

Как показано в этих примерах, параметр может находиться в текущем документе. Можно использовать имя любого параметра, к которому возможен доступ из правила.

Если компонент не подавлен, то вместо имени компонента можно указать имя файла. Такой способ можно использовать для изменения параметра в базовой детали, которая не используется в качестве компонента сборки.

Parameter("PartA.ipt", "d12") = 6.3

Если параметр найти не удалось, функция Parameter генерирует сообщение об ошибке. Чтобы не отображать сообщение об ошибке, используйте следующий синтаксис:

Parameter.Quiet = True

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

Доступ к параметрам в базовой детали

Доступ к параметрам в базовой детали можно получить из производной детали или сборки. Кроме того, к ним можно получить доступ из сборки, содержащей деталь, созданную на основе базовой детали.

Иногда рекомендуется задавать параметры в базовой детали из правил в сборке. Такой метод называется моделированием сверху-вниз. При изменении базового параметра также меняются связанные параметры во всех производных деталях.

Деталь и ее параметры не всегда видны в дереве модели в диалоговом окне "Редактировать правило". Доступ к ним можно получить с помощью функции Parameter. Например, чтобы изменить параметр в базовой детали, используйте следующий синтаксис:

Parameter("BaseShaft.ipt”, ”Diameter") = 0.125 in

Обычно необходимость читать значения параметров в базовой детали отсутствует. Эти параметры уже связаны с деталью или сборкой, с которой работает пользователь.

Расширенные функции Parameter

Используйте функцию Parameter.Param для получения прямого доступа к параметру Inventor. Возвращается объект типа Параметр из API Autodesk Inventor:

param = Parameter.Param("parameterName")

If (param IsNot Nothing) Then

param.Expression = "5.0 in"

param.Tolerance.SetToDeviation(0.002 * 2.54, -0.004 * 2.54)

param.Comment = "Equation and Tolerance set by a rule"

End If

Можно также записать функцию в одну строку:

Parameter.Param("foo").Comment = "Comment set by a rule"

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

Что такое браузер iLogic

В браузере iLogic перечислены правила, формы, глобальные формы и внешние правила iLogic.

Для элементов в браузере iLogic доступно контекстное меню. Команды в этом меню зависят от выбранного элемента.

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

В браузере iLogic правила упорядочены на двух вкладках.

  • На вкладке "Правила" перечислены все правила, сохраненные в документе.
  • На вкладке "Внешние правила" перечислены все правила, которые хранятся вне Inventor (на диске), независимо от того, какой документ открыт.

Формы упорядочены двух вкладках:

  • На вкладке "Формы" перечислены все формы и кнопки для инициирования правил, сохраненных в текущем документе.
  • На вкладке "Глобальные формы" перечислены все формы и кнопки для инициирования правил, сохраненных вне среды Inventor, независимо от того, какой документ открыт.

После открытия браузера iLogic он остается открытым, пока не будет закрыт вручную. Эта настройка сохраняется для всех сеансов.

Отображение браузера iLogic можно включить или отключить, установив или сняв флажок "Браузер iLogic". Этот флажок находится в раскрывающемся списке "Пользовательский интерфейс", расположенном на панели "Окна" на вкладке "Вид".

Кроме того, браузер iLogic можно закрепить с любой стороны окна Autodesk Inventor.

Правила

Что такое правила

Правило — это небольшая программа на Visual Basic (VB.NET), которую можно использовать для контроля за другими параметрами, элементами или компонентами Inventor.

Как действуют правила?

iLogic внедряет правила в виде объектов непосредственно в деталь, сборку и документы чертежей. Правило определяет и применяет значения параметра проекта и атрибутов. Регулируя эти значения, можно определить поведение атрибутов, элементов и компонентов модели. Знания сохраняются непосредственно в документе и хранятся там аналогично тому, как хранятся элементы геометрического проекта.

Параметры в правилах

В качестве переменных Visual Basic в правилах можно использовать имена стандартных параметров Inventor. При запуске правила значение параметра присваивается переменной. В случае числовых параметров значение — это действительное число, выраженное в единицах измерения документа, заданных в окне "Сервис" "Процесс моделирования". Текстовые параметры становятся в правиле строковыми переменными. Параметры типа "Истина/ложь" становятся логическими переменными.

Параметры могут быть получены двумя разными способами:

  • Переменные VB.NET, связанные с числовыми или нечисловыми параметрами. Переменные выделяются синим цветом:

При запуске правила iLogic читает значения для этих параметров из модели и передает их правилу. После завершения выполнения правила iLogic сохраняет измененные значения обратно в модель.

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

  • Параметры, полученные с помощью функции Parameter. Например:

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

Изменение имен объектов по умолчанию в правилах

До использования в правиле одного из следующих имен объектов Autodesk Inventor измените его имя, если оно было назначено как имя по умолчанию при его создании:

  • элемент
  • эскиз
  • рабочий элемент
  • шаблон
  • зависимость
  • конструктивная пара

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

Кроме того, после изменения имени по умолчанию оно становится более переносимым. В локализованных версиях Autodesk Inventor имена элементов по умолчанию переводятся на язык этой версии. Имена автоматически меняются в браузере модели, но не в правиле iLogic. Следовательно, может оказаться, что правило не сможет их найти по имени по умолчанию. Если при этом кто-то пользуется этой же моделью в версии Inventor на другом языке, имена по умолчанию надо обязательно менять. Эта рекомендация относится только к элементам, вызываемых по имени из правила. Например, функции Measure могут использовать имена рабочих элементов. В ситуациях, когда рабочие элементы включены в модель, но не используются в функциях Measure, переименовывать их необязательно. Единственным исключением для этой рекомендации являются внедренные таблицы Excel. Не переименовывайте их.

А неанглийских версиях Autodesk Inventor используйте в правилах имена на английском языке. Например:

"3rd Party:Embedding 1"

ПримечаниеНекоторые объекты, такие как конструктивные пары, позволяют задать имя при создании.

Когда запускается правило

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

Правило запускается сразу же после его редактирования. Чтобы этого не происходило, правило необходимо подавить. При запуске правила изменения параметров не приводят к обновлению модели до завершения выполнения правила. При необходимости можно принудительно применить изменение параметров немедленно. Используйте для этого в правиле:

  • функцию Parameter;
  • функцию RuleParametersOutput().

Порядок правил

  • Правила запускаются в том порядке, в котором они отображаются в браузере. Порядок можно изменить, используя функцию iLogicVb.RunRule("ruleName").
  • Если изменившийся параметр используется в нескольких правилах, то первым запускается правила, находящееся первым в списке правил. Это происходит вне зависимости от того, как был изменен параметр.
  • Чтобы изменить порядок правил в списке, связанном с событиями документа вне зависимости от основного списка в браузере iLogic, можно использовать команду инициаторов событий.

Как обрабатывается правило

При создании или редактировании правила текст правила преобразуется в допустимый код VB.NET, который затем компилируется. Некоторые имена параметров Inventor нельзя использовать в качестве имен переменных VB.NET. Чтобы использовать весь диапазон имен параметров Inventor, iLogic подставляет вместо параметров Inventor новые имена переменных.

Ключевые слова, используемые в качестве имен параметров

Хотя ключевые слова Visual Basic можно использовать в качестве имен параметров, это не рекомендуется делать в новых документах. Однако при добавлении правил в существующие документы, имена параметров обычно изменять не приходится. Если имя совпадает с ключевым словом, и при этом это ключевое слово требуется использовать в правиле, можно:

  • изменить по возможности имя параметра Inventor (рекомендуется);
  • использовать это ключевое слово в правиле, изменив регистр. Например, если параметр Inventor называется class, то используйте ключевое слово в форме Class. Имена параметров Inventor чувствительны к регистру, однако ключевые слова VB к регистру не чувствительны. В нашем примере class будет изменено на другое имя до того, как VB увидит код, однако Class остается неизменным.

Внутреннее преобразование правил

Текст правила преобразуется в допустимый код VB.NET, который не отображается пользователю и хранится вместе с правилом. Благодаря такому способу хранения, iLogic не приходится генерировать код при каждом запуске правила. Этот код меняется только при редактировании правила.

Сообщения об ошибках компилятора VB в действительности относятся к этому промежуточному коду. В редких случаях при работе с некоторыми сложными кодами отображаются сообщения, не относящиеся к коду правила. В таком случае упростите код. При необходимости убедитесь, что используются операторы Sub Main() и End Sub.

Когда iLogic преобразует правило в допустимый код VB.NET для компиляции, единицы измерения заменяются коэффициентами преобразования.

Единицы измерения в правилах

Единицы измерения Inventor можно использовать в правилах точно так же, как они используются в стандартных параметрических формулах Inventor.

  • Для правил единицы измерений не требуются. Например, предположим, что параметру присвоено число, которое сопровождается единицей измерения, но в выражении единицы измерения не указаны. В этом случае iLogic предполагает, что для числа следует использовать единицы измерения документа, соответствующие этому параметру. Такое предположение также применяется к сложным единицам измерения, таким как миль/час. Единицы измерения документа задаются в окне "Сервис" "Процесс моделирования" "Единицы" в Inventor.
  • Имена единиц измерения можно использовать только сразу же после чисел в тексте правила. Их нельзя использовать после параметров, переменных или выражений.

Пример - единицы измерения документа

В этом примере в файле детали используются единицы измерения документа в дюймах:

d0 = 4.5 in

d18 = 7.2 in

sum = d0 + d18MessageBox.Show(sum,”Document Units - Inches”)

Если не указано обратное, iLogic предполагает, что единицы измерения чисел определены как единицы измерения документа. В этом случае сумма равна 11.7. В окне сообщения отображается значение и указывается, что единицы измерения документа выражены в дюймах.

Чтобы назначить параметру d18 значение 7.2 mm, а не 7.2 in, укажите, что d18 выражено в миллиметрах:

d0 = 4.5 in

d18 = 7.2 mm

sum = d0 + d18

MessageBox.Show(sum,”Document Units - Inches”)

В этом случае сумма равна 4.78346456692913. В окне сообщения отображается значение и указывается, что единицы измерения документа выражены в дюймах.

Чтобы выполнить предыдущие вычисления для файла детали, где единицы измерения документа выражены в миллиметрах, указывайте дюймы для всех параметров, выраженных в дюймах (например, d0 = 4.5 in).

И наконец, если опустить единицы длины из оператора, iLogic использует значение в единицах измерения документа.

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

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

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

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

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

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

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

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

5. Добавление правила

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

Вызов: Лента: вкладка "Управление" панель iLogic Добавить правило
Фрагменты Список фрагментов кода многократного применения. Дважды щелкните фрагмент, чтобы вставить его в правило.
Вкладка "Система" Список фрагментов iLogic, предлагаемых при установке. Переключает отображение таким образом, чтобы включать в список только избранные фрагменты. Отображает диалоговое окно, предназначенное для выбора избранных фрагментов.
Вкладка "Пользовательские" Список фрагментов, созданных пользователем или скопированных с вкладки "Система". Сохранение файла фрагментов Сохранение файла фрагментов с другим именем. Замена всех фрагментов в списке фрагментами из файла. Объединение фрагментов в списке с фрагментами из файла. Отображение сведений о файле для фрагментов из списка.
Модель Представление вида модели детали или чертежа либо вида компонента сборки.
Параметры Список параметров на основе типа параметра, выбранного в дереве.
Имена Совокупный список элементов дерева по мере их выбора. Щелкните Очистить список, чтобы удалить из списка все элементы и начать заново.
Дерево файлов Файловое представление сборки, которое можно использовать вместо компонентного представления на вкладке "Параметры". Используйте это представление для быстрого поиска объекта по именам детали и сборки.
Файлы Список имен файлов деталей сборки. Используйте это представление, чтобы копировать имена файлов для их использования в правиле.
Параметры Определение поведения правила, а также некоторых особенностей отображения правила.
  Поведение этого правила Подавлено - Запрет на автоматический запуск правила. Операция не в диалоговом режиме - Запуск правила без отображения диалоговых окон Inventor. При этом автоматически выбираются ответы по умолчанию. Немедленно запустить зависимые правила - Запуск других правил, которые вызываются по причине того, что это правило меняет параметр, с которым они связаны, сразу же после изменения значения параметра. Позволяет не дожидаться завершения выполнения этого правила. Не выполнять автоматически - Запрет выполнения правила в ответ на изменения параметров. Прямой код VB - Определение этого правила в качестве кода, который может использоваться совместно несколькими правилами.
  Редактор правил Выбрать шрифт - Выбор шрифта для текста правила.
  Сохранить синтаксис Использовать имена компонентов - Автоматическое преобразование параметров в синтаксис Parameter с использованием имени компонента.
Найти и заменить Поиск строки в текущем правиле и при необходимости замена этой строки другой строкой.
Искать Ввод текста, который требуется найти.
Заменить на Ввод текста, который требуется подставить вместо исходного текста.
  Учитывать регистр Выберите для различения регистра символов.
  Только слово целиком Выберите, чтобы искать только целую символьную строку. Не искать внутри более длинных слов.
  Найти Найти вхождение строки.
  Найти далее Найти следующее вхождение строки.
  Найти ранее Вернуться к предыдущему вхождению строки.
  Заменить Подставить указанную строку вместо найденной строки.
  Заменить все в этом правиле Подставить указанную строку вместо всех вхождений найденной строки в текущем правиле.
  Заменить все во всех правилах Подставить указанную строку вместо всех вхождений найденной строки во всех правилах.
Мастера Список нескольких мастеров на базе заданий.
Создать правило для диалогового окна Создание правила для пользовательского диалогового окна на основе параметров модели.
Окно сообщения Создания правила, которое генерирует окно сообщения.
  Запомнить текущий вид Создание правила, сохраняющего текущий вид экрана.
  Ограничения параметров Создание правила, которое отображает диагностические сообщения, когда значения параметров выходят за пределы заданного диапазона.
Панель инструментов редактирования Инструменты для работы с правилами iLogic.
Печать Печать текста текущего правила.
Параметры страницы Определение параметров страницы для печати текста правила.
  Вырезать Удаление выделенного текста правила и помещение его в буфер обмена.
  Копировать Помещение копии выделенного текста правила в буфер обмена.
  Вставить Вставка копии текста правила из буфера обмена в позицию курсора.
  Повторить Повторное применение последней функции редактирования.
  Отменить Отмена действия последней функции редактирования.
  Увеличить отступ Добавление пробела слева от текущей строки.
  Уменьшить отступ Удаление пробела слева от текущей строки.
  Закомментировать выбранные строки Преобразование выбранной строки текста правила в комментарий.
  Раскомментировать выбранные строки Удаление тэга комментария из строки.
  If...Then...End If Раскрывающийся список, который можно использовать для вставки выбранного условного оператора.
  Ключевые слова Раскрывающийся список, который можно использовать для вставки выбранного ключевого слова.
  Операторы Раскрывающийся список, который можно использовать для вставки выбранного оператора.
  Справка Справка для этого диалогового окна.
  OK  
  Отмена  
         

ПРИМЕР1.

Открываем «Обычный.ipt». Выбираем инструмент «Прямоугольник» (по двум точкам). После создания прямоугольника выбираем инструмент «Размер». При образмеривании сторон в поле мы вводим не только размер но и свое название параметра для упрощения дальнейшей работы – width (ширина)=100 и для смежной стороны length (длина)=100. Завершаем эскиз и переходим в 3D пространство, где с помощью команды «Выдавливание» придаем нашему эскизу объем (в данном случае толщина не имеет значения). Заходим в Manage (управление) выделяем последнюю строчку в открывшемся окне user parameters (пользовательские параметры). Опускаемся ниже и из выпадающего меню выбираем add text (добавить текст). В появившейся строчке в первой колонке запишем choice (выбор). Нажимаем на 2-ю колонку с названием text (текст) в появившемся окошке выбираем make multi-value(сделать многозначным). После чего появится диалоговое окно в верхней части которого мы запишем square and rectangle (квадрат и прямоугольник).

После чего нажмем Аdd и Ок. И завершим нажав Done.

Далее мы будем создавать правило. Для этого в браузере iLogic (Если браузер не видим кликните Manage – iLogic - iLogic browser) кликаем по названию модели и выбираем add rule( добавить правило). В появившемся окошке кликаем ОК. Откроется окно редактирования правила. В нем мы запишем следующее, после чего нажмем Ок.

После этого мы зайдем в event triggers (инициализатор событий). В открывшемся окне кликним по any model Parameter change(любое изменение параметров модели) - select rules(выбор правил) в появившемся окне ставим флажок возле названия нашего правила и жмем два раза Ок. (это означает что все изменения в модели будет происходить по выбранному правилу). Затем опять заходим в Manage (управление) - Parameters и посменно выбирая то квадрат то прямоугольник будем видеть как меняется наша модель.

 





sdamzavas.net - 2019 год. Все права принадлежат их авторам! В случае нарушение авторского права, обращайтесь по форме обратной связи...