Специализированное администрирование > Поддержка визуализации и публикации > Интеграция WVS и Creo View > Визуализация динамических структур
  
Визуализация динамических структур
При просмотре структуры детали или CAD-документа в Creo View или на вкладке Визуализация в навигаторе структуры изделия графика для структуры генерируется динамически, объединяя представления по умолчанию для объектов в структуре (деталь или CAD-документ) в единый файл PVS. Детали или EPM-документы выбираются для отображения с помощью текущих критериев навигации.
При визуализации этих структур может возникать несколько ситуаций, в которых ожидаемая пользователем визуализация не захватывается представлением по умолчанию деталей в структуре. В этом разделе будет рассмотрен порядок действий для таких различных ситуаций и соображений при изменении поведения динамической визуализации.
Визуализация констр. элементов сборки
Если сборка содержит констр. элементы, которые изменяют геометрию ее потомков (например, создают вырез в потомке), это может привести к неверному отображению результирующей геометрии в динамической визуализации. Если сборка содержит такие типы изменений, они обычно публикуются как статическое представление или расширенная позиционирующая сборка и правильная геометрия потомков сохраняется только в представлении сборки (а не потомка). В результате визуализация динамической структуры становится неверной, так как загружает геометрию потомка из представления по умолчанию потомка.
Визуализация констр. элементов сборки в динамических структурах детали может быть активирована путем задания для настройки пользователя Визуализация > Динамическая структура > Констр. элементы сборки в динамических структурах деталей значения Да. Визуализация констр. элементов сборки в динамических структурах детали может быть активирована путем задания для настройки пользователя Визуализация > Динамическая структура > Констр. элементы сборки в динамических структурах деталей значения Да.
Включение этой настройки позволяет системе Windchill считывать представления файлов сборки и определять наличие констр. элемента сборки. В этом случае выбирается использование результирующей геометрии из представления сборки вместо представления по умолчанию потомка.
Обработка констр. элементов сборки в динамической визуализации ограничена возможностью обращения к "правильной" геометрии на основе сочетания критериев навигации, применяемых к структуре и представлениям, существующим в системе. Файл OL, содержащий констр. элемент сборки, загружается из представления сборки. Если существует несколько итераций или версий дочерних деталей, нет никакого способа гарантировать, что файл OL, используемый для отображения констр. элемента сборки, был создан для итерации или версии, выбранной для сборки в соответствии с текущими критериями навигации.
Это в значительной степени зависит от разработанной стратегии публикации и от того, выполняется ли повторная публикация сборок при изменении их потомков.
Например, если существует сборка с двумя дочерними деталями, для каждой из которых имеется две версии, то существует четыре возможных комбинации геометрии:
Деталь 1 A.1, Деталь 2 A.1
Деталь 1 A.2, Деталь 2 A.1
Деталь 1 A.1, Деталь 2 A.2
Деталь 1 A.2, Деталь 2 A.2
При создании структуры детали с помощью последней спецификации конфигурации в структуре детали будут отображаться детали "Деталь 1 A.2" и "Деталь 2 A.2". Однако если "Деталь 1" содержит констр. элементы сборки, она может использовать файл OL для детали "Деталь 1 A.1", а не для детали "Деталь 1 A.2".
Визуализация гибких сборок Creo Parametric
Гибкие сборки позволяют родительской сборке переопределять информацию позиционирования одного из компонентов дочерней сборки. Это означает, что в случае динамической визуализации расположение компонента загружается из представления родительской сборки. При этом переопределяется позиция, существующая в дочерней сборке более низкого уровня.
Гибкие сборки отображаются в соответствующем альтернативном расположении в динамических CAD-структурах или структурах деталей согласно настройкам родительских сборок при открытии динамической CAD-структуры или структуры детали в Creo View, когда для пользовательской настройки установлено значение Да.
Визуализация > Динамическая структура > Конструкторские элементы гибкого сборочного производства в динамических CAD-структурах
Визуализация > Динамическая структура > Конструкторские элементы гибкого сборочного производства в структурах динамических деталей
Если используется динамическая структура с гибкими констр. элементами и констр. элементами сборки, для констр. элементов сборки используется геометрия из родительской сборки, а для гибких констр. элементов используются преобразования (расположения) из родительской сборки.
* 
Гибкие сборки поддерживаются только адаптером Creo View для Creo Parametric 5.0 или более поздних версий.
Визуализация представленных в CAD деталей
При отображении динамической структуры детали графическое представление состоит из объединенных представлений деталей в структуре. Для некоторых деталей структура дочерней детали или не существует, или является неполной, и для потомков не существует связанных с ними графических представлений. Примером этого могут быть детали поставщика. Для деталей поставщика существует единственная деталь в структуре, которая представляет всю сборку поставщика. В этих случаях 3D-графика не является полной. Структуры детали, в которых отсутствует структура дочерней детали, называются представленными в CAD деталями.
Начиная с версии Windchill 10.2 M030 можно конфигурировать Windchill для отображения 3D-графики представленных в CAD деталей. Полное представление деталей, представленных в CAD, используется для отображения 3D-графики. Представление, используемое для отображения графики, является представлением по умолчанию детали. Если представление по умолчанию отсутствует, используется представление по умолчанию в EPM-документе, связанном с изображением, а полное представление, включающее все дочерние элементы, является объединенным. Все дочерние детали представленной в CAD детали в структуре детали удаляются из структуры визуализации.
В приведенном ниже примере для детали ASSYA существует связь изображения с CAD-сборкой, содержащей три дочерних элемента. Для CAD-сборки существует опубликованное представление. Если эта деталь идентифицирована как деталь, представленная в CAD, результирующая структура визуализации включает дочерние элементы CAD-сборки.
Настройка структуры детали
Можно изменить способ генерации динамической структуры детали, предоставляя пользовательский хук, позволяющий исключить детали, использовать представления, отличные от представления детали по умолчанию, или включить полное представление сборки вместо объединения представлений, связанных с ее дочерними элементами. Дополнительные сведения см. в разделе Modifying the Default Behavior of Dynamic Part Generation (Изменение поведения по умолчанию при динамической генерации деталей) руководства Windchill Customization Guide (Руководство по настройке Windchill) или в файле <Windchill>\prog_examples\wvs\com\ptc\wvs\PartStructureFilter.java.
Дополнительные административные настройки, влияющие на динамическую визуализацию
Для управления визуализацией констр. элементов сборки используются следующие свойства WVS.
Свойство WVS
Описание
edrload.dynamicpartstructure.excludeassemblyrepresentations
edrload.dynamiccadstructure.excludeassemblyrepresentations
Значение по умолчанию: "Истина"
Краткий обзор: указывает, нужно ли исключить представления с дополнительными констр. элементами сборки. Эти свойства используются, чтобы повысить производительность при создании динамической структуры. Они не оказывают влияния на фактический конечный результат; т. е. динамическая структура остается той же самой, независимо от значения, заданного для свойства.
Описание. Эти свойства указывают, нужно ли исключить представления деталей сборки или CAD-документов, для которых существуют дополнительные элементы сборки (такие как сварные швы и трубы), из динамической структуры детали CAD.
Это свойство по умолчанию имеет значение Истина, если оно не задано.
* 
Повышение производительности от использования этого свойства реализуется для представлений, опубликованных с помощью адаптера Creo View, который вводит данные в файл PVS, чтобы определить, существуют ли констр. элементы сборки. В настоящее время единственный адаптер, поддерживающий это свойство, - это адаптер Creo Parametric, начиная с версии Creo View 3.0 M020.
edrload.dynamicpartstructure.versionmismatch
Значение по умолчанию: "Деталь"
Краткий обзор: указывает, какое предупреждение о несоответствии версии отображается при открытии Creo View.
Описание: это свойство используется для конфигурирования отображения сообщений с предупреждением о несоответствии версии при просмотре пользователями динамических структур деталей с активированной обработкой констр. элементов сборки. В частности, при несоответствии версий CAD-документов отображается предупреждение. Существует четыре возможных значения этого свойства:
WTPart - в предупреждении отображаются только несоответствия версий детали.
EPMDocument - в предупреждении отображаются только несоответствия EPM-документов.
EPMDocumentRevertToWTPart - в предупреждении отображаются несоответствия EPM-документов. Если невозможно обнаружить, существуют ли несоответствия EPM-документов, осуществляется проверка несоответствий деталей.
Both - в предупреждении отображаются несоответствия деталей и несоответствия EPM-документов.
Значение по умолчанию для этого свойства: WTPart, если не указано другое или если задано значение, отличное от перечисленных выше.
publish.cadconvert.PROE.getalldependentsforextposassy
Значение по умолчанию: "Ложь"
Краткий обзор: тип приложения для поиска Java-класса.
Описание: допустимый для типа PROE при публикации в качестве расширенной позиционной сборки. Если задано значение Истина, представление загружает зависимые файлы из компонентов всех уровней сборки в структуре сборки. Если задано значение Ложь, будут загружены только компоненты первого уровня в структуре сборки.
* 
Задание для этого свойства значения True оказывает влияние на производительность. Задайте для этого свойства значение Истина для клиентов, использующих метод моделирования, создающий констр. элементы сборки для непрямых потомков в сборке верхнего уровня.
Идентификация деталей в качестве деталей, представленных в CAD
Конфигурирование групп для идентификации деталей, представленных в CAD - для управления определением деталей, идентифицируемых как детали, представленные в CAD, используется XML-файл. Можно так сконфигурировать XML-файл, чтобы он содержал несколько групп, для представления деталей, представленных в CAD. Каждая группа может состоять из нескольких глобальных атрибутов и/или динамических типов деталей. Настройка WVS, доступная в контекстах Сайт и Организации в меню Визуализация > Динамическая структура > Расположение XML-файла конфигураций деталей, представленных в CAD, конфигурирует расположение и наименование файла .xml, используемого для конфигурирования деталей, идентифицируемых как детали, представленные в CAD. Расположение может быть указано относительно каталога <Windchill> или может быть абсолютным. Дополнительные сведения о создании файла конфигурации для идентификации деталей, представленных в CAD, включая возможность локализации наименования и описания, см. в файле CADRepresentedPartConfiguration.xml, расположенном по адресу: <Windchill>\codebase\com\ptc\wvs\server\xml\.
* 
При обновлении XML-файла необходимо перезагрузить его в Windchill. Администратор может обновить настройку и нажать кнопку ОК, чтобы выгрузить изменения; в противном случае файл будет обновлен при следующем запуске сервера методов.
Настройка пользователя для выбора групп, используемая для идентификации деталей, представленных в CAD - пользователи могут выбрать, какие группы нужно использовать для идентификации деталей в качестве деталей, представленных в CAD, путем задания настройки пользователя Визуализация > Динамическая структура > Представленные в CAD детали в динамических структурах деталей. В приведенном ниже примере Bucket Cylinder, Main Cylinders и Head Lights выбраны для идентификации деталей в качестве деталей, представленных в CAD.
Настройка пользователя для определения, должны ли отображаться неразмещенные компоненты, которые нужно использовать в динамических структурах деталей - пользователи могут выбрать, отображать ли неразмещенные компоненты, которые нужно использовать в динамических структурах деталей, путем задания настройки пользователя Визуализация > Динамическая структура > Показать неразмещенные компоненты в динамических структурах деталей. Например, если для этой настройки задано значение Да, неразмещенные компоненты отображаются при открытии динамической структуры детали в Creo View.
* 
При просмотре структуры деталей, представленных в CAD, на вкладке Визуализация выбор объекта не всегда подсвечивает правильный объект в структуре, поскольку структура отличается от структуры объектов визуализации. При просмотре деталей, представленных в CAD, в Creo View подсвечивается правильный объект, поскольку Creo View отображает структуру, измененную генерацией динамической структуры.
Пример. XML-файл конфигурации представленной в CAD детали
Ниже приведен пример XML-файла, демонстрирующий управление фильтрацией деталей, представленных в CAD.
Group 1 defines an IBA-named "cad-represented-part" in which its value starts with "crp"<!-- ####################################################### --> <!-- This configuration file is used by dynamic part structure visualization to control the CAD Represented Part Filtering. --> <!-- --> <!-- ####################################################### --> <!-- # The following XML elements and attributes are used to control CAD Represented Part Filtering # --> <!-- # defined by the following XML schema CADRepresentedPartConfiguration.xsd # --> <!-- ####################################################### --> <!-- --> <!-- Element: "cad-represented-parts" = Declaration element for all control options pertaining to CAD Represented Part Filtering. --> <!-- Element: "group" = defines a set of CAD Represented filters displayed on the UI --> <!-- Attribute: "id" = String value representing a unique id for the "group" element. --> <!-- Attribute: "name" = If attribute "resource_name" is defined the value is used to access the entry in the resource --> <!-- bundle for the name of the "group" else if "resource_name" is not present the value will --> <!-- be displayed as is on the UI for the name of the "group" element. --> <!-- Attribute: "description" {optional} = If attribute "resource_name" is defined the value will be used to access the entry in the --> <!-- resource bundle for the description of the "group" else if "resource_name" is not defined --> <!-- the value will be displayed as is on the UI for the description of the "group" element. --> <!-- Attribute: "resource_name" {optional} = Resource class to use to pull the "name" and "description" attribute values from. --> <!-- If this is defined for a "group" element the attributes "name" and "description" --> <!-- on the "group" element will be used as the keys to the entries in the resource file. --> <!-- Attribute: "default" {optional} = Sets the default value for the preference "group" to checked (enabled) or --> <!-- unchecked (disabled), if not defined the default will be "disabled" --> <!-- Element: "iba" = Defines a single part attribute to indicate the part as a "CAD Represented Part". --> <!-- Element: "name" = An attribute name that exists on a part in which its value can be used to determine if a part is --> <!-- a "CAD Represented Part". NOTE: The IBA types supported for this feature are String and boolean --> <!-- Element: "regex" = A Java regular expression used to determine if the attribute value equates to a "CAD Represented Part" --> <!-- Element: "object-type" = String name of a Windchill defined WTPart or soft type of WTPart. --> <!-- --> <!-- ############# --> <!-- # Example 1 # --> <!-- ############# --> <!-- Defines Two cad-represented-parts: --> <!-- Group 1 defines an IBA named "cad-represented-part" in which its value starts with "crp" --> <!-- and will be considered a CAD Represented Part. The group is enabled. --> <!-- --> <!-- Group "name" will be displayed as the string literal: "Name of the group displayed on the preference UI" --> <!-- Group "description" will be displayed as the string literal: "Description of group displayed on preference UI" --> <!-- --> <!-- Group 2 defines an IBA value of "cad-represented-part2" --> <!-- in which if its value is true will be considered a CAD Represented Part, The group is disabled. --> <!-- NOTE: Must use true or false for the regex value for boolean attributes. --> <!-- --> <!-- Group "name" will be displayed as the string literal: "Name of the group displayed on the preference UI" --> <!-- Group "description" will be displayed as the string literal: "Description of group displayed on preference UI" --> <!-- --> <!-- <cad-represented-parts> --> <!-- <group id="1" name="Name of the group displayed on the preference UI" --> <!-- description="Description of group displayed on preference UI" default="enabled"> --> <!-- <iba> --> <!-- <name>cad-represented-part</name> --> <!-- <regex>crp.*</regex> --> <!-- </iba> --> <!-- </group> --> <!-- <group id="2" name="Name of the group displayed on the preference UI" --> <!-- description="Description of group displayed on preference UI" default="disabled"> --> <!-- <iba> --> <!-- <name>cad-represented-part2</name> --> <!-- <regex>true</regex> --> <!-- </iba> --> <!-- </group> --> <!-- </cad-represented-parts> --> <!-- --> <!-- ############# --> <!-- # Example 2 # --> <!-- ############# --> <!-- Defines a "cad-represented-parts" with one entry which --> <!-- defines the entry for "object-type" to have a value of "org.rnd.ECADSoftType" which is a Windchill softtype, The --> <!-- group is disabled. --> <!-- --> <!-- Group "name" will be displayed as the string literal: "Name of the group displayed on the preference UI" --> <!-- Group "description" will be displayed as the string literal: "Description of group displayed on preference UI" --> <!-- --> <!-- <cad-represented-parts> --> <!-- <group id="1" name="Name of the group displayed on the preference UI" --> <!-- description="Description of group displayed on preference UI" default="disabled"> --> <!-- <object-type>org.rnd.ECADSoftType</object-type> --> <!-- </group> --> <!-- </cad-represented-parts> --> <!-- --> <!-- ############# --> <!-- # Example 3 # --> <!-- ############# --> <!-- Defines a cad-represented-parts with three entries and is enabled: --> <!-- First entry defining an IBA value "cad-represented-part" in which if its value is true --> <!-- will be considered a CAD Represented Part. --> <!-- NOTE: Must use true or false for the regex value for boolean attributes. --> <!-- Second entry defining a soft type value of "org.rnd.ECADSoftType1" --> <!-- Third entry defining a soft type value of "org.rnd.ECADSoftType2" --> <!-- --> <!-- Group name is defined by the resource class and key pairs: --> <!-- resource class = "com.ptc.wvs.resource" defined by the attribute "resource_name" on element "group" --> <!-- resource key = "name_key" defined by the attribute "name" on element "group" --> <!-- Group description is defined by the resource class and key pairs: --> <!-- resource class = "com.ptc.wvs.resource" defined by the attribute "resource_name" on element "group" --> <!-- resource key = "description_key_key" defined by the attribute "name" on element "group" --> <!-- --> <!-- <cad-represented-parts> --> <!-- <group id="1" name="name_key" --> <!-- description="description_key" resource_name="com.ptc.resource" default="enabled"> --> <!-- <iba> --> <!-- <name>cad-represented-part</name> --> <!-- <regex>true</regex> --> <!-- </iba> --> <!-- <object-type>org.rnd.ECADSoftType1</object-type> --> <!-- <object-type>org.rnd.ECADSoftType2</object-type> --> <!-- </group> --> <!-- </cad-represented-parts> --> <!-- ####################################################### -->
-<cad-represented-parts>
-<group default="enabled" description="Defines an IBA named CRP
where all objects that match the Java regex 'crp.*'
will be treated as a cad represented part."
name="CAD Represented Part" id="1">
-<iba>
<name>CRP</name>
<regex>crp.*</regex>
</iba>
</group>
</cad-represented-parts>