Рекламодатель: ЗАО «Топ Системы»

ИНН 7726601967 ОГРН 1087746953557

Рекламодатель: ООО «ЛС-Технологии»

ИНН 7807258360 ОГРН 1227800102375

Рекламодатель:
ООО «С3Д Лабс»

ИНН 7715938849 ОГРН 1127747049209

8 - 2001

Granite One в вопросах и ответах

Александр Лягушкин, Андрей Шишкин

Стратегия РТС

   Что такое Granite One?

   Каковы потенциальные пользователи Granite?

   Чем Granite отличается от других подобных технологий?

   Поддерживает ли Granite взаимодействие между разработчиками?

   Кто сможет получить Granite ля использования?

   Чем Granite отличается от Pro/TOOLKIT

   Откуда появился Granite One?

   Почему РТС решила выпустить Granite One как средство разработки?

   Granite One — новый продукт. Будет ли он столь же надежен в работе, как и другие подобные технологии?

Архитектура и концепции

   Какие языки программирования и платформы поддерживает Granite?

   Какова концепция фичерса в Granite?

   Как в Granite отслеживаются имена объектов?

   Как Granite обеспечивает выполнение команд Undo и Rollback?

   Использует ли Granite преимущества многопроцессорных платформ?

   Как осуществляется управление памятью в Granite?

   Как приложения хранят и читают файлы Granite?

   Как Granite обрабатывает ошибки и нештатные ситуации?

Моделирование геометрии

   Какие способы представления кривых и поверхностей используются в Granite?

Тестирование, сообщения о выявленных ошибках и поддержка пользователей

   Имеется ли в ядре встроенная возможность ведения протокола, упрощающая процесс выявления и исправления ошибок?

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

   Какая техническая поддержка предоставляется пользователям Granite?

   Какая документация по Granite доступна пользователям?

Как можно приобрести Granite?

Весной этого года компания PTC объявила о начале лицензирования Granite One — среды разработки прикладного программного обеспечения, основанной на возможностях геометрического моделирования, создания интеллектуальных операций-фичерсов, графики и обмена данными, лежащих в основе Pro/ENGINEER. Начало лицензирования Granite знаменует собой появление на рынке новейшей платформы, пришедшей на смену первому поколению простых ядер геометрического моделирования и определяющей новый стандарт ядра для систем CAD/CAM/CAE — ядра, поддерживающего не только геометрическое моделирование, но и функциональную совместимость приложений. PTC полагает, что появление Granite даст компании возможность стать одним из лидеров в этой области. Проводя политику «открытых дверей», компания PTC готова в целях создания нового эффективного стандарта совместимости лицензировать Granite One пользователям, партнерам и даже конкурентам. Ряд ведущих разработчиков программного обеспечения (Moldflow Corp и др.) уже объявили о планах использовать Granite One в качестве ядра своих приложений. Учитывая большой интерес специалистов к Granite One, постараемся ответить на наиболее часто задаваемые вопросы.

Стратегия PTC

Что такое Granite One?

Granite — ядро для создания ассоциативно совместимых друг с другом CAD/CAM/CAE-систем и приложений. Опираясь на передовые разработки и решения PTC, Granite заключает в себе возможности, позволяющие различным приложениям совершенно естественно читать файлы друг друга без использования трансляторов, анализировать прочитанную информацию и создавать новую геометрию. Цель Granite — посредством создания ассоциативной и гетерогенной среды инженерной разработки превратить реальный процесс проектирования и подготовки производства в действительно параллельный процесс. Первая версия Granite — Granite One — включает в себя библиотеки, обеспечивающие возможности ассоциативного моделирования, а также среду разработки для быстрого создания и отладки приложений, написанных на Granite.

В начало В начало

Каковы потенциальные пользователи Granite?

Круг потенциальных пользователей Granite весьма широк, в их числе:

  • компании — разработчики прикладных систем и приложений, работающих с твердотельными моделями, могут использовать возможности Granite One по созданию интеллектуальных операций-фичерсов в качестве функционального ядра моделирования своих систем, а также для совместимости с другими CAD/CAM/CAE-системами, тоже написанными на Granite. Такой подход аналогичен использованию компанией PTC среды Granite в своих продуктах Pro/ENGINEER и Pro/DESKTOP;
  • компании — разработчики приложений, не являющихся твердотельными моделлерами, но осуществляющих визуализацию, анализ или иного рода работу с такими CAD-моделями, созданными на базе ядра Granite, могут использовать Granite для чтения моделей и работы с ними, сохраняя при этом все преимущества ассоциативной связи. Используя подобное приложение, компания — изготовитель оснастки, например, могла бы читать файлы Pro/ENGINEER, содержащие модель оснастки. При этом если бы изменилась модель оснастки в Pro/ENGINEER, то и в приложении для ЧПУ-обработки, написанном на Granite и используемом изготовителем оснастки, все изменения были бы видны. Кроме того, ассоциативная связь позволила бы получить измененные траектории ЧПУ-обработки, если таковые были ранее рассчитаны;
  • опытные пользователи могут самостоятельно интегрировать в среду Granite собственные разработки, предназначенные для решения задач моделирования или анализа, чтобы обеспечить их совместимость и ассоциативную связь с имеющимися у них CAD/CAM/CAE-системами, базирующимися на Granite. Например, компания — разработчик авиационной техники могла бы интегрировать с Granite написанные и используемые в компании расчетные программы в целях создания нового специального приложения, генерирующего формы поверхностей крыльев, которые могли бы быть использованы в процессе дальнейшей разработки конструкции в Pro/ENGINEER;
  • высшие учебные заведения, особенно математического, технического или компьютерного профиля, могут использовать Granite как средство для изучения методологии твердотельного моделирования, а также для создания различных CAD-приложений для выполнения учебных и исследовательских работ. Полученные при этом модели будут полностью совместимы со всеми другими системами и приложениями, разработанными на базе Granite.
В начало В начало

Чем Granite отличается от других подобных технологий?

По сравнению с технологиями других компаний-разработчиков, использование Granite дает множество преимуществ. Рассмотрим лишь некоторые из них.

Совместимость на уровне собственных форматов файлов. Созданные с использованием Granite приложения могут читать файлы любых других программ, написанных на базе Granite, в их собственных форматах без использования «нейтральных» файлов или трансляторов.

Ассоциативность. Созданные с использованием Granite приложения ассоциативно совместимы с другими приложениями, написанными на базе Granite, включая Pro/ENGINEER. Это означает, что деталь может быть разработана в одной прикладной программе, проанализирована в другой, а в третьей программе для нее могут быть рассчитаны траектории обработки на станках ЧПУ. При изменении исходной детали результаты работ, выполненных в последующих связанных приложениях, обновляются автоматически. Это позволяет организовать действительно параллельную инженерную разработку в гетерогенной среде.

Надежность Pro/ENGINEER. Ядро моделирования Granite использует те же самые библиотеки геометрического моделирования, что и Pro/ENGINEER — наиболее популярный и надежный твердотельный моделлер в мире. Следовательно, уже сегодня более 250 тыс. инженеров работают с приложениями, созданными на базе Granite. Granite используется при инженерной разработке промышленной продукции самого широкого спектра, включая такие стратегической важности проекты, как проект корабля X-38 для спасения экипажа международной космической станции, разработка оборудования для испытаний, проводимых Министерством энергетики США, а также при разработке потребительской продукции с тщательно продуманным дизайном, как, например, кукла Барби от Mattel или новое Интернет-устройство Compaq iPAQ. Выпуск новых версий Granite будет производиться параллельно с выходом новых версий Pro/ENGINEER, поэтому развитие Pro/ENGINEER обеспечит и развитие Granite.

Моделирование с использованием интеллектуальных операций-фичерсов. Granite содержит в себе ядро моделирования, базирующееся на использовании операций-фичерсов (features). Использование такого ядра значительно упрощает работу по созданию прикладных программ для моделирования, применяющих управление моделью на уровне фичерсов. Объекты-фичерсы являются частью объектной модели Granite. В фичерсах содержится вся информация о геометрии, а также история ее создания, с операциями Rollback (Прокрутить назад), Undo (Отменить) и Redo (Вернуть). Команда Undo, таким образом, доступна в любое время на уровне модели, а не только во время текущего сеанса моделирования. Все изменения конкретной модели сохраняются непосредственно в ней самой, а следовательно, не нуждаются в регенерации при последующей загрузке модели из файла. Прикладные программы, основанные на использовании Granite, могут «видеть» фичерсы и историю создания моделей непосредственно в данных Granite, принадлежащих другим приложениям.

Встроенные трансляторы. Для обмена данными с системами, не использующими Granite, предусмотрены двусторонние трансляторы в форматах IGES, STEP, VDA и ACIS SAT. Ну и конечно, Granite может читать без каких-либо трансляторов файлы приложений, созданных на базе Granite.

Современные архитектура и средства. Созданные для использования на персональных компьютерах и с учетом современной Интернет-инфраструктуры, средства разработки приложений (API) Granite позволяют реализовать самое разнообразное взаимодействие с объектами посредством Java, COM, а также C++.

В начало В начало

Поддерживает ли Granite взаимодействие между разработчиками?

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

Granite обеспечивает новую технологию передачи инженерной информации между приложениями. Построенные на базе Granite прикладные программы могут работать с CAD-файлами, созданными в любой другой построенной на базе Granite прикладной программе, читая данные Granite прямо из файлов в собственных форматах таких приложений. Это достигается путем использования плагина gPlug, поставляемого разработчиком соответствующей прикладной программы. Плагин «знает», где найти данные Granite в структуре файла в собственном формате. Поскольку файлы Granite ассоциативны, то каждый раз, когда в приложении, написанном на Granite, осуществляются изменения модели, соответствующие изменения происходят и в последующих связанных приложениях; при этом нет необходимости в обременительной процедуре экспорта данных.

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

В начало В начало

Кто сможет получить Granite для использования?

PTC стремится к тому, чтобы лицензии Granite смогли получить заинтересованные разработчики CAD/CAM/CAE-систем и приложений, пользователи Pro/ENGINEER, учебные заведения, а также другие потенциальные пользователи.

В начало В начало

Чем Granite отличается от Pro/TOOLKIT?

Pro/TOOLKIT является средством настройки Pro/ENGINEER и разработки приложений, работающих в среде Pro/ENGINEER. Поскольку Pro/TOOLKIT напрямую связан с Pro/ENGINEER, находящимся в активном сеансе работы, то для использования созданных с помощью Pro/TOOLKIT приложений и настроек необходимо приобрести и установить Pro/ENGINEER. Pro/TOOLKIT наиболее подходит для пользователей Pro/ENGINEER и разработчиков, создающих приложения, расширяющие возможности Pro/ENGINEER. Некоторые возможности Pro/ENGINEER, в том числе работа со сборками, чертежами, эскизами, взаимодействие с Pro/INTRALINK, доступны посредством Pro/TOOLKIT API, но не являются предметом Granite.

Granite — это небольшая библиотека, предназначенная для включения в независимые прикладные программы и приложения. Предоставляя для создания геометрии больше возможностей, чем Pro/TOOLKIT, Granite не обеспечивает непосредственного доступа в приложения Pro/ENGINEER. Связь Granite c Pro/ENGINEER, как и с любой другой прикладной программой, написанной на Granite, заключается в естественной способности Granite читать файлы Pro/ENGINEER в их собственном формате.

В начало В начало

Откуда появился Granite One?

Компания РТС гордится тем, что создала Pro/ENGINEER — одну из лучших в мире технологий твердотельного моделирования, поддерживающую совместную разработку продукции. PTC постоянно инвестирует средства в развитие архитектуры Pro/ENGINEER, не прерывая работ по обновлению Pro/ENGINEER. Приобретая права на новые прикладные программы и делая эти программы частью своего ассоциативного семейства решений для инженерной разработки, PTC интегрировала в них технологию, используемую в Pro/ENGINEER. В процессе интеграции РТС тщательно создавала и отлаживала компоненты этой технологии для их последующего эффективного использования среди своих многочисленных групп разработки программного обеспечения во всем мире. Для выпуска Granite РТС просто приняла решение собрать эти компоненты в единый пакет и сделать его доступным для разработчиков, работающих в других компаниях.

В начало В начало

Почему PTC решила выпустить Granite One как средство разработки?

РТС достигла беспрецедентно высокой эффективности взаимодействия своих продуктов. Компания принимала и принимает активное участие в деятельности многих комитетов, комиссий и рабочих групп, направленной на решение проблем обмена данными, помогая расширять и поддерживать STEP, IGES и другие протоколы обмена. Теперь РТС решила сделать шаг вперед. Опираясь на свою высокую компетентность в области твердотельного моделирования и управления данными, на сотрудничество с известными партнерами, а также на свои достижения в области разработки программных продуктов, компания РТС намерена радикально изменить представление о совместимости приложений на рынке систем автоматизированной инженерной разработки и производства продукции. Granite, с его ассоциативностью и поддержкой взаимодействия между приложениями на уровне файлов в их собственном формате, является примером этой стратегии. Разумеется, поддерживается совместимость и с другими стандартами передачи данных, ведь Granite включает в себя трансляторы IGES, STEP, ACIS и VDA.

В начало В начало

Granite One — новый продукт. Будет ли он столь же надежен в работе, как и другие подобные технологии?

Granite использует те же самые коды, что и Pro/ENGINEER, имеющий заслуженную репутацию самого надежного решения для твердотельного моделирования. Хотя Granite использует некоторые новые средства и языки программирования, в его основе лежит технология моделирования, остающаяся на сегодняшний день самой эффективной и надежной в мире.

В отличие от других подобных систем, развитие Granite не связано с разработкой и написанием новых функций для моделирования. Просто РТС посредством Granite API сделала доступной функциональность, используемую Pro/ENGINEER для твердотельного моделирования.

В начало В начало

Архитектура и концепции

Какие языки программирования и платформы поддерживает Granite?

Средства Granite API доступны из среды объектно-ориентированного программирования высокого уровня, поддерживающей Java, COM и C++.

В настоящее время Granite работает на платформах Windows, версии для других платформ доступны по специальному запросу.

В начало В начало

Какова концепция фичерса в Granite?

Granite использует объекты-фичерсы для представления моделирующих операций, структурируя их в значимую дискретную последовательность. Каждая моделирующая операция связана с использованием какого-либо фичерса, которому принадлежит часть геометрии модели, созданная в результате применения данного фичерса.

  • как элемент модели фичерс является объектом действия для команд Undo/Redo и Rollback;
  • как носители информации фичерсы содержат в себе информацию о геометрии, созданной в процессе моделирования. Объект-фичерс определяет методы сбора, поиска, доступа к информации о поверхностях, кромках, кривых, истории, а также определяет средства диагностики, принадлежащие данному фичерсу;
  • как совокупность методов объект-фичерс содержит моделирующие операции высокого уровня, такие как выдавливание (Extrude), вращение (Revolve) и им подобные, а также моделирующие операции низкого уровня. Помимо этого Granite предоставляет расширенные возможности для моделирования, в частности построение протяжек (Sweep), скруглений (Round) и др.
В начало В начало

Как в Granite отслеживаются имена объектов?

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

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

В начало В начало

Как Granite обеспечивает выполнение команд Undo и Rollback?

Granite предоставляет два механизма возврата к предыдущему состоянию в истории модели: подавление фичерсов и Undo. Сочетание этих возможностей обеспечивает высокоэффективное моделирование.

Undo дает возможность вернуть модель в ее предыдущее состояние. Сделанные в каждой модели изменения могут быть независимо как отменены (Undo), так и возвращены назад (Redo). Приложения могут устанавливать любое количество меток на модели и производить операции Undo до этих меток. Работа с меткой проста и осуществляется посредством ссылки на метку. В отношении Redo поддерживается аналогичный механизм.

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

В начало В начало

Использует ли Granite преимущества многопроцессорных платформ?

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

В начало В начало

Как осуществляется управление памятью в Granite?

Используя ту же самую схему управления памятью, что и Pro/ENGINEER, Granite запрашивает память из области динамически распределяемой памяти (heap) операционной системы с помощью стандартных методов. Прикладная программа не требует никаких дополнительных утилит управления памятью к тому, что уже реализовано в ядре Granite. Динамическая память запрашивается большими порциями, которые затем распределяются внутри приложения с использованием специально оптимизированных алгоритмов, предназначенных для работы с геометрическими данными 3D.

В начало В начало

Как приложения хранят и читают файлы Granite?

На выходе из Granite модели являются потоком байтов. Само приложение предоставляет функции внешнего (обратного) вызова для сохранения этих данных в каком-либо файле или в базе данных (в зависимости от того, что требуется этому приложению), а также для обратного чтения данных из файла или из базы данных. Таким образом, приложение полностью контролирует способ хранения и отвечает за сохранность данных, тогда как Granite осуществляет интерпретацию данных и непосредственное моделирование геометрии.

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

В начало В начало

Как Granite обрабатывает ошибки и нештатные ситуации?

Granite обрабатывает в C++ и Java нештатные ситуации (исключения), подавая сигнал об ошибке. В COM исключения обрабатываются с использованием стандартных средств COM, предусмотренных для обработки ошибок. Сообщение о нештатной ситуации содержит такую подробную информацию об ошибке, как код (степень) серьезности и тип ошибки, необходимое для исправления ошибки действие, а также специальную геометрическую информацию, зависящую от конкретной ошибки.

В начало В начало

Моделирование геометрии

Какие способы представления кривых и поверхностей используются в Granite?

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

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

Granite поддерживает определения различных типов кривых и поверхностей. Кривые могут быть линиями, дугами, эллипсами, параболами, гиперболами, сплайнами, b-сплайнами и композитными кривыми. Типы поддерживаемых поверхностей — плоские, цилиндрические, конические, торы, поверхности вращения, сплайновые и b-сплайновые поверхности.

В начало В начало

Тестирование, сообщения о выявленных ошибках и поддержка пользователей

Имеется ли в ядре встроенная возможность ведения протокола, упрощающая процесс выявления и исправления ошибок?

Сообщения Granite API могут быть записаны в нейтральном для языков программирования формате, который легко конвертируется в коды Java или C++ для исполнения в среде наладки. Можно также послать в PTC файлы протоколов вместе с сообщением о выявленных ошибках.

В начало В начало

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

Среда разработки Granite — gStudio — представляет собой базирующееся на Java средство создания и тестирования новых программных кодов, которое отображает модели Granite и позволяет проводить их проверку и оценку, имеет строчный интерпретатор для команд Java и Granite. С помощью gStudio можно быстро создавать и тестировать новые программные коды, а также получать файлы с протоколами работы своих приложений для обнаружения ошибок. Вы можете также конвертировать эти файлы протоколов в коды C++ или Java и использовать их в своих приложениях.

В начало В начало

Какая техническая поддержка предоставляется пользователям Granite?

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

В начало В начало

Какая документация по Granite доступна пользователям?

Комплект документации по Granite, поставляемый пользователям в виде набора интерактивных документов для чтения с использованием стандартных Web-браузеров, включает:

  • функциональный обзор модели данных, используемой Granite, и концепций моделирования;
  • руководство по решению задач, являющееся обучающим пособием по основам Granite API;
  • справочник классов Granite API;
  • документацию для пользователя по работе с сопутствующими приложениями, например gStudio.

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

В начало В начало

Как можно приобрести Granite?

Желающим приобрести лицензию Granite необходимо обратиться в PTC к Блэйку Картеру (Blake Courter, Manager, MCAD Business Development) по адресу:

PTC

140 Kendrick St

Needham, MA 02494, USA

Тел.: +1 (781) 370-5250

E-mail: bcourter@ptc.com.

«САПР и графика» 8'2001

Регистрация | Войти

Мы в телеграм:

Рекламодатель:
ООО «Нанософт разработка»

ИНН 7751031421 ОГРН 5167746333838

Рекламодатель: ЗАО «Топ Системы»

ИНН 7726601967 ОГРН 1087746953557

Рекламодатель: ООО «НТЦ ГеММа»

ИНН 5040141790 ОГРН 1165040053584