В iLogic содержатся функции для правил, позволяющие задавать или извлекать свойства Inventor для документов деталей, сборок и чертежей Inventor. По мере использования правил, чтобы применить к проектам новые конфигурации, обновляйте свойства Inventor в документах проекта. Чтобы обеспечить правильность спецификации, необходимо использовать самые последние свойства Inventor. Правила можно также использовать, чтобы читать значения свойств Inventor из документа и реагировать на них. Например, можно использовать правило для изменения толщины детали при изменении свойства материала. Правило можно применять для внесения изменений, когда масса детали выходит за предельные значения. Любое свойство Inventor, задаваемое вручную, можно также задать или прочитать с помощью правила.
Чтобы перейти к функциям iProperties, разверните узел "iProperties" на вкладке "Система" в области "Фрагменты".
Синтаксис
iProperties.Value("имя вкладки свойств", "имя свойства")
Читает или задает значение свойства в документе, содержащем это правило.
iProperties.Value("имя_файла.ipt", "имя вкладки свойств", "имя свойства")
Используется в правиле на уровне сборки для перехода к свойствам Inventor детали или узла.
При изменении имени файла детали или узла необходимо также изменить текст правила.
Лучше использовать не имя файла, а имя компонента (после его настройки).
iProperties.Value("имя пользовательского компонента", "имя вкладки свойств", "имя свойства")
Задает или читает значения свойства в компоненте. В этой функции используется не имя файла, а имя компонента. Настройте имя компонента (измените его исходное имя по умолчанию, чтобы оно не изменилось при изменении ссылки на файл.
Примеры
Задать значение свойства Inventor:
iProperties.Value("Project", "Stock Number") = "302A"
Прочитать значение свойства Inventor:
MyStringParam = iProperties.Value("Project", "Stock Number")
Задать значение пользовательского свойства Inventor:
iProperties.Value("Custom", "Age") = 41 'number type iProperties.Value("Custom", "Company") = "Autodesk, Inc" 'text type iProperties.Value("Custom", "Date") = CDate("11/1/2008") ' date type iProperties.Value("Custom", "Insured") = true 'yes or no type
Прочитать значение пользовательского свойства Inventor:
age = iProperties.Value("Custom", "Age") company = iProperties.Value("Custom", "Company") thedate = CStr(iProperties.Value("Custom", "Date")) insured = iProperties.Value("Custom", "Insured")
Помните
Work_In_Progress = 1 Pending = 2 Released = 3 iProperties.Value("Status", "Design State") = Pending
Исключенные функции
В предыдущих версиях iLogic использовались следующие функции для извлечения свойств Inventor из деталей в сборках:
iProperties.ValueInDoc("имя_файла.ipt", "имя вкладки свойств", "имя свойства")
Ссылается на имя файла.
iProperties.ValueInComponent("имя пользовательского компонента", "имя вкладки свойств", "имя свойства")
Ссылается на имя компонента.
Хотя эти функции недоступны в области "Фрагменты" в диалоговом окне "Редактировать правило", их можно использовать в правиле. Однако вместо этих более старых функций рекомендуется использовать функцию iProperties.Value.
Эта функция поддерживает использование того же самого документа в версиях Autodesk Inventor на разных языках. Если в правилах использовать английские наименования материалов и цветов, то модель будет лучше переносима. Если присвоить этой функции значение Истина, то все функции, возвращающие наименования материалов или названия цветов, будут возвращать их на английском языке. Для определения наименования материала или названия цвета можно использовать язык установки Autodesk Inventor. Но в целях соблюдения единообразия рекомендуется использовать английские названия. Следующие функции возвращают имена по-английски, если присвоить iProperties.StylesInEnglish значение Истина:
Задает или читает материал документа.
При задании материала используйте точное наименование материала (чувствительно к регистру) в том виде, как оно включено в активный стандартный список материалов. Значения материала — это всегда текстовые строки, заключенные в кавычки.
Примеры
Чтобы задать материал:
iProperties.Material = "Gold"
Чтобы прочитать материал:
MyStringParam = iProperties.Material
Задает или читает материал детали внутри сборки по заданному имени файла.
Используется в правиле на уровне сборки для получения доступа к материалу детали в сборке по заданному имени компонента.
Задает или читает текущий цвет детали. Значения цвета детали — это текстовые строки, заключенные в кавычки. Изменение цвета не влияет на текущее значение материала.
Эту функцию можно использовать только для деталей.
Примеры
Чтобы задать цвет:
iProperties.PartColor = "Green" iProperties.PartColor = "As Material"
Чтобы прочитать цвет:
MyStringParam = iProperties.PartColor
Читает или пишет массу в документе детали или сборке, содержащем правило.
При записи значения массы, вычисленное значение массы перезаписывается. Чтобы восстановить вычисленное значение, присвойте массе значение -1.
iProperties.Mass("имя_файла.ipt")
Читает или пишет массу детали или узла в сборке по заданному имени файла.
iProperties.Mass("имя_компонента:1")
Читает или пишет массу компонента в сборке по заданному имени компонента. Эту функцию можно также использовать для чтения или записи массы виртуального компонента.
Примеры
Чтобы прочитать массу:
MyMassParam = iProperties.Mass MyMassParam = iProperties.Mass("component:1") MyMassParam = iProperties.Mass("mypart.ipt")
Чтобы задать массу (перезаписать автоматически вычисленное значение):
iProperties.Mass = 3 kg iProperties.Mass("virtual_component") = 233 g iProperties.Mass("mypart.ipt") = 4.2 lb massiProperties.Mass = -1 'set the mass back to automatic calculation
Читает или пишет объем документа, содержащего правило.
iProperties.Volume("имя_файла.ipt")
Читает или пишет объем детали или узла, содержащего правило, по заданному имени файла.
iProperties.Volume("компонент:1")
Читает или пишет объем компонента в сборке по заданному имени компонента. Эту функцию можно также использовать для чтения или записи объема виртуального компонента.
Примеры
Чтобы прочитать объем:
MyVolumeParam = iProperties.Volume MyVolumeParam = iProperties.Volume("component:1") MyVolumeParam = iProperties.Volume("mypart.ipt")
Чтобы задать объем (перезаписать автоматически вычисленное значение):
iProperties.Volume = 12.4 in^3 iProperties.Volume("virtual_component") = 542 cm^3 iProperties.Volume("mypart.ipt") = 12.8 in^3 iProperties.Volume = -1 'set it back to automatic calculation
Читает значение центра тяжести модели в документе, содержащем правило.
Синтаксис
pt = iProperties.CenterOfGravity
Значение pt принадлежит типу Inventor.Point, описанному в справке по Inventor API. Можно прочесть значения X, Y и Z для точки, выраженные в величинах изменения, выбранных для документа правила:
cx = pt.X cy = pt.Y cz = pt.Z
pt = iProperties.CenterOfGravity("компонент")
Читает значение центра тяжести компонента в сборке по заданному имени компонента.
Читает значение площади поверхности модели в документе, содержащем правило.
Синтаксис
surfaceArea = iProperties.Area
surfaceArea = iProperties.Area("компонент:1")
Читает площадь поверхности компонента в сборке по заданному имени компонента.