Мартынюк (4_WireFrame&Surface)

Посмотреть архив целиком

33



Мартынюк В.А.


Пособие 4. Режим работы WireFrame&Surface


Оглавление




Введение и некоторые термины 2

Geometrical Set. 2

Work on Support 3

Видимость элементов. 3

Новые термины в диалоговых окнах 3

Панель инструментов WireFrame 4

Projection 4

Intersection 6

Circle 6

Corner 7

Connect Curve 8

Spline 8

Панель инструментов Surfaces 10

Extrude 10

Revolve 10

Sphere 10

Cylinder 10

Offset 11

Sweep 11

Fill 12

Multisections Surface 13

Blend 13

Панель инструментов Operations 14

Split 15

Trim. 15

Boundary 16

Extract 16

Extrapolate 16

Join 16

Healing 18

Disassemble 19

Untrim 20

Affinity 20

Axis To Axis 21

Панель инструментов Analysis 21

Connect Checker 22

Curve Connect Checker 23

Surfacic Curvature Analysis 24

Distance Analysis 26

Porcupine Analysis 27

Панель инструментов Tools 27

Create Datum 27



Введение и некоторые термины

Напомним, что главная цель данной серии учебных пособий – поверхностное моделирование в системе CATIA. Ранее, в предыдущих пособиях, мы рассмотрели два режима работы - построение эскизов (Sketcher) и построение отдельной детали (Part Design). Эти пособия были достаточно инвариантными, и предназначались для общего, начального ознакомления с системой.

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

Вообще, нужно отметить, что CATIA содержит много разделов, режимов работы, посвященных работе с поверхностями. Для решения конкретной задачи пользователю приходится пользоваться инструментами из разных разделов CATIA. Трудно однозначно определить область применения того, или иного раздела. Многие команды повторяются, присутствуют в разных разделах. Мы постараемся такого повторения не допускать и в каждом режиме работы рассматривать только самые интересные команды. Но, тем не менее, перечисление команд конкретного раздела системы (в том числе и данного раздела) делает похожим пособие на некий, достаточно объемный справочник.

Мы будем постепенно наращивать сложность инструментов построения, измерения и редактирования поверхностей. Нужно сказать, что самым простым режимом работы, или разделом CATIA, посвященном поверхностям, и является режим Wireframe and Surfaces Design.

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

Geometrical Set.

В Пособиях 1 и 3 уже достаточно говорилось о структурировании проекта. И о том, что одним из возможных разделов структурированного дерева спецификаций может быть раздел Geometrical Set. Именно сейчас этот раздел становится особенно актуальным. Дело в том, что во всех предыдущих пособиях в конечном итоге мы говорили о построении твердых тел или их отдельных частей, формообразований. И все эти тела или их части размещались в разделах дерева спецификаций PartBody или Body. А сейчас мы будем говорить о множестве вспомогательных точек, пространственных кривых, поверхностей, эскизов и пр. Эти компоненты проекта не отнесешь к элементам твердых тел. Эти компоненты и помещаются в геометрические наборы Geometrical Set.

Геометрических наборов в сложном проекте может быть очень много. Размещение конкретного элемента проекта в том, или ином геометрическом наборе никак не отражается на самом проекте. Это похоже на размещение файлов в различных директориях. Содержимое файла ведь не зависит от того, в какой директории он находится.

Включение любого нового раздела в ваш проект осуществляется по команде из падающего меню Insert. В частности, чтобы включить новый раздел геометрического набора нужно выполнить команду Insert/Geometrical Set. То есть вы можете вставить новый раздел вашего проекта (и геометрический набор в том числе) в любой момент времени. Не обязательно в самом начале проектирования.

В самом начале проектирования в диалоговом окне New Part система как бы предлагает: «Могу сразу организовать первый раздел Geometrical Set. Хочешь?». Для наших задач поверхностного моделирования лучше согласиться и включить соответствующую кнопочку. Но если вы этой кнопочки не включите, и система сразу вам не организует первый геометрический набор, то потом вы можете многократно сделать это самостоятельно.

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

Work on Support

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

  • Иногда удобно заранее, сразу для нескольких построений указать такую плоскость или поверхность поддержки. Для этого и служит команда Work on Support, которую можно вызвать из падающего меню Tools. Эта же команда присутствует и в панели команд Tools.

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

  • Напоминаю, что нужно чаще пользоваться контекстным меню. В частности, при указании содержимого поля Support можно непосредственно уже при выполнении данной команды не указать, а тут же и сформировать поверхность или плоскость поддержки. Если вы неудачно сформировали содержимое этого поля, то с помощью того же контекстного меню можно его и очистить. Для этого в контекстном меню нужно выбрать команду Clear Selection.

Итак, что для «постоянного» пользования можно назначить плоскость или поверхность поддержки в инструментальной панели Tools с помощью команды Work on Support.

Видимость элементов.

В этом разделе мы часто будем строить поверхности. Причем одни поверхности будут получаться из других. Например, мы рассечем какую-либо поверхность некоторой кривой. И на экране останется видна только половина поверхности. Но это не значит, что исходная, целая поверхность совершенно для нас потеряна. Посмотрите в дерево спецификаций. Там элемент исходной, целой поверхности называется, например, Extrude.1, а результат рассечения - Split.1. После очередной операции система обычно сразу выключает видимость исходной поверхности и оставляет видимой только результат последней операции. Но при желании можно включить видимость и исходной поверхности.


Новые термины в диалоговых окнах

В отличие от инструментов режима Part Design и вообще от твердотельного моделирования, команды построения поверхностей всегда отличаются в лучшую сторону своей «подробностью». В поверхностном моделировании система не просто предлагает построить поверхность. Система позволяет пользователю еще и особо оговорить: как пройдут границы этой будущей поверхности, в каких пределах эта поверхность будет построена, через какие точки поверхность должна пройти и т.д.

Во многих диалоговых окнах вы можете встретить некоторые новые термины.


Guides – обозначает границы будущей поверхности. Например, во многих графических системах есть возможность строить поверхности методом протягивания образующего контура вдоль контура направляющего (например, команда Sweep). Предварительно пользователь строит оба контура: образующий (Profile) и направляющий (Spine). При этом эти контура не обязаны даже пересекаться. Что получиться в результате - система решает самостоятельно. Так вот, Guides – это некие «рельсы», по которым «прокатятся» края образующего контура и, таким образом, сформируют границы будущей поверхности. А Spine - это некая осевая, направляющая линия построения поверхности. Обычно Guides - это пространственные кривые, которые пользователь строит дополнительно к контурам образующему и направляющему. При задании Guides будущая поверхность становится более предсказуемой.

Spine – (как уже говорилось выше) это направляющая пространственная кривая. Иногда в качестве Spine можно использовать одну из Guides.

В разделе Generative Shape Design есть даже специальная команда (Creating a Spine), с помощью которой можно по двум заданным Guides построить (примерно посередине между ними) и направляющую кривую Spine.


Наиболее значимые панели инструментов данного режима работы представлены на рис.1. Рассмотрим их по очереди.

Панель инструментов WireFrame

Нужно сказать, что в системе CATIA под элементами WireFrame чаще всего понимаются точки, линии, пространственные кривые и вспомогательные плоскости. И результатами выполнения команд данной панели чаще всего и являются построенные точки, линии, пространственные кривые и вспомогательные плоскости. Но не поверхности!

Первую и, наверное, самую важную часть инструментов WireFrame, а именно: построение точек, линий и плоскостей мы уже достаточно подробно рассмотрели в Пособии 3.Поэтому сразу перейдем к следующим инструментам. А именно: к командам построения проекций, пересечений, дуг, сплайнов, сопряжений и пр.

Projection

С помощью данной команды можно определить проекцию пространственной кривой (или группы кривых) на указанную поверхность. Диалоговое окно команды представлено на рис. 2.



рис.1




рис.2 рис.3


Первое, что необходимо сделать, - это выбрать тип проекции. Для этого существует поле Projection Type. Предлагаются два типа проекции:

  • Normal

  • Along a Direction

Учтите, что результаты проецирования могут разительно отличаться друг от друга в зависимости от выбранного типа и, особенно, направления проецирования.

Затем в поле Projected следует перечислить все компоненты, которые необходимо спроецировать. Их может быть несколько. Для того, чтобы выделить группу компонентов, нужно щелкнуть курсором на изображении «мешочка» рядом с этим полем и появится новое диалоговое окно (рис. 3), в котором можно все проецируемые элементы и перечислить.

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

Результатов проецирования может быть много, поэтому обязательно выключите кнопку Nearest Solution. Это кнопка предполагает, что система предоставит вам только один, «первый попавшийся» результата проецирования. Если же вы выключите эту кнопку, то взамен система предоставит вам диалоговое окно Multi-result Management (рис.4), в котором вы сможете выбрать все или только некоторые из предоставленных результатов.



рис.4 рис.5


Система еще предоставляет возможность сгладить неровности полученной проекции элемента. Для этого в диалоговом окне присутствует поле Smoothing.


Intersection

Полезная команда (диалоговое окно представлено на рис. 5). Позволяет находить различные элементы пересечения между указанными компонентами.

А именно:

  • Между кривой и кривой – находит точку пересечения.

  • Между поверхностью и поверхностью – находит линию пересечения.

  • Между кривой и поверхностью.

  • Между телом и поверхностью находит или контур пересечения, или часть отсеченной поверхности.

Причем пересекающихся компонентов может быть много. Для этого у полей First Element и Second Element присутствуют изображения «мешочка». Хотя, конечно, вы можете ограничиться только двумя компонентами.

Около полей Element и Second Element присутствуют кнопки Extend Linear Supports for Intersection. Это понятное средство. Представьте себе две непересекающиеся (но и не параллельные) прямые линии, лежащие в одной плоскости. Конечно, у них есть точка пересечения, но найти ее можно только в том случае, если вы разрешите продолжить исходные линии.

И есть еще одно очень полезное средство: внизу есть кнопочка Intersect Noncomplanar….. Это очень полезно, поскольку не всегда линии лежат в одной плоскости.

Но если вы ищете элемент пересечения между “разнородными” компонентами: между линией и поверхностью, между телом и поверхностью, то пересечение должно быть явным!

Результатом пересечения даже двух компонентов могут быть различные примитивы: точка, контур, плоскость, кривая поверхность. Для избежания возможной неоднозначности полученных результатов в диалоговом окне (рис.5) пользователю предоставляются кнопки Result: Points, Curve, Plane, Surface. Часто они затемнены (пассивны), но в случаях возможной неоднозначности система выделяет те кнопки, из которых пользователь может выбрать нужный ему результат.

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

В поле Extrapolation Option присутствует кнопка Extrapolate Intersection on First Element. Используется только для случая пересечения поверхностей. В этом случае построенная линия пересечения (для первой из указанных поверхностей) может быть продолжена до самых границ этой поверхности. Иногда это удобно.

Наконец еще одна кнопка в том же поле – Intersect Non Coplanar Line Segmtnts позволяет найти точку пересечения между прямыми непараллельными отрезками, не лежащими в одной плоскости. В этом случае точка пересечения будет находиться точно посередине между плоскостями, в которых располагались исходные отрезки.

В дереве спецификаций после данной команды появляется элемент Intersect.


Следующая группа команд из нашей панели инструментов позволяет строить произвольно ориентированные в пространстве окружности и сглаживать различные промежутки между кривыми.



Circle

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

В диалоговом окне команды следует выбрать:

  • Способ построения окружности в поле Circle Type.

  • Точку центра окружности (Center).

  • Плоскость, в которой будет расположена окружность (Support).

Остальные поля и кнопки понятны и без объяснения.



рис.6 рис.7


Corner

Это достаточно мощная команда сопряжения пространственных кривых. Похожие команды (Connect и Corner) были в режиме построения эскизов. Только там не было возможности особенно влиять на качество сопряжения. Здесь такие возможности появляются. Диалоговое окно представлено на рис. 6.

Первое, что следует указать – это способ построения угла. (Поле Corner Type). Система предоставляет два способа:

  • Corner on Support

  • 3D Corner.

    • Первый способ (рис.7) предполагает, что исходные прямые или кривые линии лежат на некоторой плоскости или поверхности и имеют точку пересечения. Обычно в этом случае пользователь должен указать две пересекающихся линии (Element 1, Element 2), задать радиус скругления, и оговорить – следует ли обрезать оставшиеся после скругления «кусочки» для каждой из исходных линий (Trim Element 1, Trim Element 2).

Кроме этого, обязательно следует указать плоскость или поверхность, на которой располагаются исходные линии (Support).

Если же вы включите кнопку Corner on Vertex, то уже не придется указывать вторую линию. В этом случае считается, что речь идет о ломаной полилинии, для всех углов которой нужно произвести скругления заданным радиусом.

    • Очень интересным представляется вариант построения угла 3D Corner. В этом случае рассматриваются две пространственные кривые линии или прямые, не лежащие в одной плоскости и не принадлежащие одной поверхности. И никакой точки пересечения у них не существует. Тем не менее, и для этого случая возможно применение команды Corner.

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

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

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

Как и в предыдущих случаях, здесь может иметь место несколько результатов. С помощью клавиши Next Solution вы можете нужный вам вариант.



Connect Curve

  • Это средство является еще более мощным развитием предыдущей возможности 3D Corner. Здесь сопряжение двух кривых осуществляется более предсказуемо. Но предварительно на сопрягаемых кривых нужно поставить вспомогательные точки, в которых будет иметь место сопряжение.



рис.7а


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

    • Вы вызываете команду Connect Curve. В поле Connect Type (рис.7а) следует установить значение Normal. Альтернативой является режим сопряжения Base Curve – то есть сопряжение по подобию некоторой заданной кривой. Но нам интереснее более распространенный случай – Normal.

    • Затем в полях First Curve и Second Curve указываете ранее проставленные точки будущего сопряжения. Система тут же идентифицирует и сами кривые и предлагает вариант сопрягающей кривой (единственный).

  • Удобство команды заключается в том, что вы можете управлять формой сопрягающей кривой. Для этого в полях First Curve и Second Curve дополнительно присутствует возможность у каждой точки сопряжения указать способ ее согласования с исходной кривой: по точке, по первой производной, по второй производной. Кроме этого, вектора касательной к кривой сопряжения в точках сопряжения можно менять по направлению и по величине. В результате кривая сопряжения разительно меняется.

  • Команда работает и со сплайнами, и с кривыми типа Curves.

  • В диалоговом окне команды присутствует кнопка Trim Elements. Если ее включить, то по завершению команды будут отброшены ненужные после сопряжения остатки исходных кривых.

  • В результате выполнения команды в браузере появится новый элемент Connect, который объединит и исходные кривые, и результат сопряжения. Но и исходные кривые также доступны в браузере.

  • Если ты с самого начала не включил кнопку Trim Elements, то потом при повторном редактировании тебе это уже не удастся. Придется просто переделать команду. Кстати, в этом случае (без Trim Elements) новый элемент в браузере Connect будет обозначать только ту часть кривой, которая действительно соединяет исходные линии.


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


Spline

  • До сих пор мы имели дело только с плоскими сплайнами при построении эскизов. В данном случае мы можем построить пространственный сплайн.

  • В будущем нам предстоит работать с тремя типами пространственных кривых в системе CATIA:

    • Spline, который мы здесь рассматриваем;

    • 3D Curve (см. далее)

    • Curve (см. далее)

      • Диалоговое окно представлено на рис. 8. Сплайн строится по предварительно построенным или неким характерным точкам. Эти точки и перечисляются в основном поле диалогового окна (рис. 8). Точки можно удалять, добавлять, заменять. Для этого существуют соответствующие кнопки.

П Р И М Е Ч А Н И Е : если не хотите сюрпризов с видимостью отдельных точек и самого сплайна, старайтесь располагать сплайн в разделе Geometrical Set, а не в разделах PartBody или Body.

  • Можно предварительно все точки будущего сплайна расположить на некоторой поверхности. Затем в диалоговом окне включить кнопку Geometry on Support и указать соответствующую поверхность как Support. В этом случае сплайн будет строго лежать на указанной поверхности.

Может возникнуть вопрос: зачем стараться расположить сплайн на некоторой поверхности, если образующие его точки и так лежат на этой поверхности? Дело в том, что точки могут лежать на поверхности, а построенный сплайн (если не следовать вышеуказанным рекомендациям) – нет! Он (сплайн) может несколько отклоняться от поверхности. В этом случае, чтобы добиться



рис.8 рис.9


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

  • Вы можете существенно влиять на форму сплайна, задавая характеристики каждой его характерной точки. Для этого предварительно следует щелкнуть по кнопке Show Parameters. Диалоговое окно несколько увеличится (рис.9). В расширенной части окна в первую очередь нужно выбрать форму задания параметров каждой точки (Constraint Type): Explicit или From Curve.

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

  • Рассмотрим случай задания параметров для точек сплайна Explicit. Предварительно нужно курсором пометить имя соответствующей точки в общем списке диалогового окна. Соответствующая строка в списке «загорится» синим цветом. Затем для каждой точки сплайна можно задать четыре параметра:

  • Направление вектора касательной Tangent Dir. Обычно в соответствующем поле Tangent Dir. стоит значение No Selection. А остальные поля (Tangent tension, Curvature Dir., Curvature Radius) при этом остаются неактивными. Вам следует подвести курсор к полю Tangent Dir и с помощью контекстного меню выбрать направление касательного вектора сплайна. Для начала это могут быть направления стандартных осей координат. После этого все окошки параметров Tangent tension, Curvature Dir. и Curvature Radius окажутся активными.

  • Величину вектора касательной Tangent Tension

  • Направление вектора второй производной Curvature Dir

  • Величину радиуса кривизны Curvature Radius

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

    • Следует особо оговорить возможность добавления новых точек в сплайн или замену старых точек сплайна на новые. Фактически, это единственная возможность радикально изменить форму существующего сплайна. Так вот, следует помнить, что новые точки, которые вы собираетесь добавить в перечень уже существующих характерных точек сплайна, никак не должны быть связаны с самим сплайном.

Например, если вы построили некоторую точку 1 на самом сплайне (On Curve). Потом относительно нее построили вторую точку 2 уже вне сплайна. И если теперь вы захотите добавить точку 2 в перечень характерных точек сплайна и, таким образом, изменить его форму, то система воспротивится. Появится диагностическое сообщение: Feature involved in an update cycle.

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

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

  • Add Point After

  • AddPoint Before

  • Replace Point

Например, для добавления точки методом Add Point After следует включить соответствующий переключатель, затем в списке всех уже использованных точек указать точку, за которой последует включение новой точки (она в списке при этом «загорится» синим цветом), и затем указать постороннюю точку, которая и будет включена в список. Форма сплайна при этом разительно изменится.





Панель инструментов Surfaces

Все эти инструменты этой панели осуществляют различные способы построения поверхностей. Начнем с самых простых.


Extrude

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

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

Перемещение профиля возможно в двух противоположных направлениях. Поэтому в диалоговом окне в поле Extrusion Limits можно задавать два предела.

В остальном команда понятна.


Revolve

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

Если посмотреть вдоль оси вращения, то относительно своего первоначального положения профиль может вращаться и по часовой стрелки, и против нее. Эти возможные вращательные перемещения задаются в диалоговом окне с помощью двух углов: Angle 1 и Angle 2.

Sphere

Понятная команда формирования сферической поверхности. Задаются: точка центра и радиус поверхности. А также четыре угла «раскрыва». Два угла задаются в направлении меридианов, и два угла – в направлении параллелей.

Cylinder

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

Для построения необходимо задать: точку центра одного «донца» этой цилиндрической поверхности и направление оси. Направление оси и сама ось не обязательно должны совпадать. Затем еще нужно уточнить: радиус поверхности и ее длину. Причем, «выращивать» цилиндрическую поверхность можно в обоих направлениях – «туда и сюда». Поэтому в диалоговом окне присутствуют две длины: Length 1 и Length 2. Кроме этого, есть и копка Reverse Direction.

Offset

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

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


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

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


Sweep

  • Сразу хочу предупредить, что в системе есть много похожих команд. И, к сожалению, не все они одинаково совершенны. Часто более «молодые» инструменты меньше капризничают и выдают более предсказуемые результаты. В частности, в разделе FreeStyle есть аналогичная команда Styling Sweep, которая также формирует поверхность как след от перемещения образующего профиля вдоль профиля направляющего, но работает надежнее.

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

  • В данной команде итоговая поверхность есть след от перемещения некоторого образующего профиля (Profile) вдоль профиля направляющего (Guide или Spine).

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

  • Первое, что приходится определять – это тип образующего контура (Profile Type). Четыре кнопки в самом верху диалогового окна позволяют выбрать этот тип:

    • Explicit – произвольный профиль

    • Line – прямая линия

    • Circleчасть окружности

    • Conicконическое сечение

Естественно, что чаще всего нам приходиться иметь дело с точно определенным профилем произвольной формы – Explicit. А использование линии, дуги или конического сечения в качестве образующего профиля – случай довольно редкий.

  • Далее в поле SubType следует выбрать один из трех способов построения поверхности:

  • With Refererence Surface

  • With Two Guide Curves

  • With Pulling Direction

  • Сразу нужно сказать, что понятия Refererence Surface и Pulling Direction, включенные в названия способов построения поверхности, связаны с положением образующей плоскости во время построения поверхности. Под этой образующей плоскостью нужно понимать плоскость, в которой располагается образующий контур Profile, во время его движения вдоль контура направляющего.

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

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

А это означает, что на первый случай вы можете ограничиться только первыми двумя способами построения и в диалоговых окнах определять только величины: Profile, Guide, Anchor Point.

  • Важно четко представлять себе, что во время предварительного построения образующего и направляющего контуров совершенно не обязательно, чтобы эти кривые совпадали или пересекали друг друга. Эти пространственные кривые могут располагаться совершенно «далеко» и независимо друг от друга.

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

    • Можно сказать, что самым «экономным» способом построения поверхности является способ With Refererence Surface. В нем можно ограничиться всего двумя кривыми: образующей (поле Profile) и направляющей (поле Guide Curve).

Если образующий и направляющий контура отстоят друг от друга на некоторое расстояние, то итоговая поверхность будет построена так, как будто к середине образующего контура был приставлен контур направляющий. Размер поверхности «вдоль» движения будет определен направляющим контуром (в обе стороны). Размер поверхности «поперек» движения будет определен направляющим контуром.

      • Но самым предсказуемым способом построения поверхности является способ With Two Guide Curves. В нем пользователь предлагает системе

        • один профиль образующий Profile.

        • и две будущие границы поверхности Guides.

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

Пользователь указывает системе – какими точками (или концами) образующий контур «прокатится» по границам Guides. Для этого по длине образующего контура нужно указать две точки - Anchor 1 и Anchor 2.

  • Размеры будущей поверхности и вдоль, и поперек полностью определяют границы Guides. Если длины границ Guides значительно различаются между собой, то размер итоговой поверхности «вдоль» определяется самой короткой из них. Поэтому при построениях предпочтительно всегда стараться выровнять длины границ Guides.



Fill

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

  • На подготовительном этапе достаточно построить несколько пространственных кривых или прямых линий, которые создадут замкнутый контур. Можно ограничиться и одним замкнутым эскизом или замкнутой кривой. С помощью данной команды система заполнит внутреннее пространство замкнутого контура гладкой поверхностью. Главное – построить границы будущей поверхности. А само построение поверхности трудностей не вызывает!

  • Можно заставить будущую «заплатку» пройти через указанную точку и, таким образом, задать ей требуемую кривизну.

  • Команда может построить «заплатку» и по предоставленным пространственным кривым, и по границам рядом расположенных поверхностей. Правда, эта команда не обеспечивает гладкости сопряжения. Но для этих целей в системе существуют иные возможности.

  • Итак, представьте себе несколько замкнутых границ. Вызываем команду Fill. Появляется диалоговое окно (рис. 11). В нем нужно перечислить все границы и по клавише ОК поверхность будет построена.

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

Кстати, этой командой можно вполне можно заменить и предыдущую Sweep. Только кроме уже построенных образующего контура и двух Guides нужно построить и четвертую замыкающую кривую (или прямую), которая и определит окончательные границы поверхности.




рис.10 рис.11


Multisections Surface

Также очень хорошая команда. Строит поверхности по предварительно построенным сечениям.

В каком-то смысле – это аналог команды Multi-Section Solids из режима Part Design. Здесь также требуется предварительное построение сечений. Также возможно предварительное построение и использование границ Guides. Те же значения имею понятия Coupling, Relimitation.

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

Но данная команда менее капризна. Эта команда не боится разного числа точек соответствия в отдельных сечениях. Поэтому если у вас в разделе Part Design не получилось построить тело командой Multi-Section Solids, смело можете переходить в раздел WireFrame&Surfaces. Здесь по тем же сечениям с помощью данной команды вы построите незамкнутую поверхность. Вернетесь в режим Part Design и уже командой Close Surface превратите поверхность в тело.

Blend

Эта команда также строит поверхность. По двум границам. Но главная область применения данной команды – «заделывание» промежутков между поверхностями (рис. 12, 12а).



рис.12 рис.12а

В диалоговом окне (рис.13) кроме сопрягаемых границ (First Curve, Second Curve) нужно еще указать и сами поверхности (First Support, Second Support), между границами которых мы собираемся построить сглаживающую поверхность.

Далее можно указать (поля First Continuity, Second Continuity) – по каким критериям будет осуществлено сглаживание поверхностей в местах стыков: по первой производной, по второй производной. Причем, эти параметры можно указывать в отдельности для каждой поверхности.

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


Панель инструментов Operations

Вся панель инструментов представлена на рис. 14. Разберем отдельные команды из этой панели. Но несколько изменим порядок рассмотрения.

Есть выделенные отдельно две команды Split и Trim (рис.15). Обе они служат для разделения поверхностей.






рис.13




рис.14 рис.15 рис.16


Split

  • Команда отсекает часть кривой или поверхности при наличии четкой границы: точки на кривой, кривой на поверхности, или поверхности, которая пересекает другую поверхность.

  • В диалоговом окне в поле Element to Cut следует указать имя кривой или поверхности, которые подвергаются операции отсечения. Кстати, этих элементов может быть много.

  • В поле Cutting Elements следует перечислить те примитивы, с помощью которых производится отсечение. При этом не обязательно, например, чтобы отсекающая кривая полностью перекрывала всю поверхность. Если включить кнопку Automatic Extrapolation (внизу диалогового окна), то система автоматически продлит кривую до ее полного пересечения с границами поверхности.

  • После указания всех участников операции оказывается, что та часть примитива, которую система собирается удалить, окрашена в белый цвет (для кривой) или затемнена (для поверхности). С помощью кнопки Other Side вы можете уточнить – какую часть примитива собираетесь оставить.

  • Лишний раз напомню, что в результате этой команды из исходной поверхности в проекте останется только одна ее половина!

  • После выполнения команды в браузере появится веточка Split.



Trim.

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

  • Чаще всего данная операция применяется для объединения двух взаимно пересекающихся поверхностей (рис.16). Но, без всякого скругления!!! Как уже говорилось, оба элемента, участвующие в операции – равноправны. Поэтому их нужно просто перечислить в поле Trimmed Elements. С помощью кнопок Other Side можно выбрать – какая часть от каждого участника останется на экране.

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

  • После выполнения команды в браузере появится веточка Trim.



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

Для подобных выделений существует группа команд Extracts (рис.17).



рис.17 рис.17а

П Р И М Е Ч А Н И Е : В диалоговых окнах этой группы команд есть общее поле Propagation Type. С помощью этого параметра можно уточнить пределы выделяемого участка поверхности или ее границы. Например, вы выделяете участок границы поверхности. В поле Propagation Type система предлагает такие значения:

  • Complete boundary - полная, замкнутая граница поверхности

  • Point Continuity - часть ребра от одной до другой характерной точки. Точки на ребре устанавливаются предварительно.

  • Tangent continuity – граница от одного скачка по первой производной, до другого.

  • No propagation – имеется в виду только тот участок границы, на который вы указали курсором.

Рассмотрим подробнее команды этой группы по отдельности.





рис.18 рис.19



Boundary

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

  • В диалоговом окне команды (рис.17а) есть поле Propagation Type. Мы только что обсудили его возможные значения.

  • Кроме этого, в диалоговом окне есть поля Limit1 и Limit2, в которых (для случая Point Continuity) можно указать точки-границы выделяемого ребра поверхности.

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

Extract

С помощью этой команды можно выделить одну определенную грань оболочки. Не следует путать эту команду с командой Offset. В данном случае мы имеем точную копию выделенной грани, но никак не смещаем ее относительно исходной грани.

В разделе Generative Shape Design есть еще более мощная команда (Multiple Extract), с помощью которой можно выделить сразу несколько граней из оболочки параллелепипеда, например. Или несколько отдельных ребер из целой границы грани.

Extrapolate

А эта команда позволяет расширить, экстраполировать некоторую кривую или поверхность в сторону одной из указанных границ. Естественно, экстраполяция линейная, поэтому подобная операция естественно приводит к «упрощению» продолжения поверхности. Команда часто используется при вспомогательных построениях в поверхностном моделировании.


Переходим к группе очень важных и полезных команд объединения-лечения (рис. 18).

Join

  • Зачем группу кривых или поверхностей нужно объединять? Вообще-то можно обойтись и без объединения. Но часто в последующих командах удобно целую группу линий указать как общую границу чего-либо или группу поверхностей определить как общую оболочку. Например, для превращения поверхности в тело предварительно все кусочки исходной оболочки нужно объединить под одним именем. Для этого и служит команда Join.

Таким образом, данную команду можно рассматривать как вспомогательную, подготовительную.

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

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

  • Check Connexity – проверка на соединение.

  • Check Tangency – проверка на непрерывность касательных векторов.


П Р И М Е Ч А Н И Е : Вообще-то в системе существует гораздо более мощная и специально предназначенная для этих целей команда проверки качества соединения двух поверхностей – Connect Checker. Но и данная команда Join кое-что может в этом плане.


    • Если вы не включите кнопку проверки на соединение, то объединить можно куски поверхности, которые отстоят друг от друга хоть на метр.

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

  • При включенной кнопке Check Connexity система объединит поверхности, которые:

  • располагаются вплотную друг к другу,

  • поверхности, между которыми существуют небольшие щели (не более 0.1 мм),

  • поверхности, которые даже «наползают» друг на друга, пересекают друг друга.

И данная команда позволяет выяснить все вышеперечисленные особенности такого объединения.

  • В частности, размер допустимой щели между поверхностями задается в диалоговом окне в поле Merging Distance. И величина допустимой щели колеблется в пределах от 0.001 мм до 0.1 мм.

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

Для этого нужно указать курсором на синие строки перечисленных имен объединяемых поверхностей в диалоговом окне и вызвать контекстное меню. Далее, в этом меню нужно выбрать команду Check Selection. В ответ появится еще одно диалоговое окошко, в котором нужно нажать на клавишу Preview.

Если объединяемые куски поверхностей имеют общие точки, то система покажет эти места красной стрелкой и сопроводит это красным транспарантом: Intersection. Domain Intersect Themselves.

Если объединяемые куски поверхностей общих точек не имеют, значит - между ними есть щель. Если эта щель меньше, чем величина, указанная в поле Merging Distance, то система выдаст диагностическое сообщение:Check Completed. No Topological Problem Found.

В обоих случаях система благополучно объединит куски поверхности.

Если же щель между поверхностями окажется больше, чем величина в поле Merging Distance, то система выдаст сообщение: Non Connex result. Result Counts Two Domains и никакого объединения не произойдет. Более того, система еще укажет красной стрелкой на большую щель и сопроводит ее транспарантом: Connexity Error.


  • Если вы включите еще и проверку на скачок касательных векторов (кнопка Check Tangency), то этим вы значительно усложните процесс объединения.

В диалоговом окне есть кнопка и поле Angulat Threshold, в котором можно задать значение угла (не более 180 градусов), ниже которого скачок угла касательных векторов в месте стыка еще позволит выполнить объединение поверхностей. Если же скачок касательных векторов в месте стыка окажется больше значения в поле Angulat Threshold, то объединения не произойдет.

  • Итак, если вам нужно объединение поверхностей в любом случае, просто выключите кнопки Check Connexity и Check Tangency.

  • Если все-таки объединение происходит, то система еще и предоставляет общий вектор «направленности» объединенных поверхностей. Направление этого вектора легко изменить с помощью курсора.



Healing

  • Это важная команда – лечения поверхностей. Вообще, термин «лечить поверхность» очень распространен в поверхностном моделировании. Вы часто будете получать различные поверхности, над которыми впоследствии еще придется много поработать – вылечить их.

  • Но сразу нужно отметить, что данная команда исправляет только стыки между поверхностями и их сегментами. Никаких изменений внутри поверхности данная операция не производит. Поэтому «кривую» поверхность предварительно необходимо разбить на более-менее ровные куски, (см. команду Disassemble) а потом исправить стыки между ними.

  • Какие дефекты исправляет данная команда в стыках между поверхностями? Большие щели между отдельными сегментами (Cells) и скачки касательных векторов.

Скачки радиусов кривизны (разрывы по второй производной) данная команда не устраняет. И это сильно ограничивает ее возможности!

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

  • А зачем нужно измерять дефекты поверхностей? Дело в том, что не все щели между сегментами поверхности или разрывы по первой производной считаются дефектами. Небольшие щели (например, в 0.001 миллиметра) считаются допустимыми. Небольшие скачки касательного вектора в точках излома (например, в 0.5 градуса) также в некоторых случаях считаются допустимыми.

С другой стороны щель, например, в 3 мм может считаться уже и не щелью, а промежутком, специально спроектированным между гранями отдельных поверхностей. А поскольку «лечение», то есть устранение указанных недостатков, система производит автоматически, предварительно нужно оговорить – какие щели считать щелями, чтобы устранить и, какие промежутки считать полезными промежутками и их не трогать. Поэтому было бы полезно перечислить некоторые термины.

Диалоговое окно данной команды представлено на рис. 20. В нем присутствуют такие поля:

Merging Distance – задает значение промежутка между отдельными участками поверхности, выше которого промежуток считается запланированным и его не следует устранять.

Distance Objective - задает значение промежутка между отдельными участками поверхности, ниже которого промежуток считается допустимым и его не следует устранять.





рис.20 рис.21 рис.22


Tangency Angle - задает значение скачка по углу касательного вектора в точке излома между отдельными участками поверхности, выше которого скачок считается запланированным и его не следует устранять. Для этого поля существует очень важное ограничение. Максимально допустимый угол, который здесь можно указать, составляет 10 градусов. Это означает, что средство Healing не всесильно. Большие изломы (больше 10 градусов) оно не сможет вам устранить. А что делать, если излом велик? Нужно возвращаться к кривым, на базе которых построена поверхность, и лечить кривые.

Tangency Objective - - задает значение скачка по углу касательного вектора в точке излома между отдельными участками поверхности, ниже которого скачок считается допустимым и его не следует устранять.

Поле Continuite предлагает пользователю выбрать только два режима лечения:

  • Point

  • Tangent

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

    • Важно сознавать, что во время этой процедуры система строит новую поверхность, которую она старается максимально близко приблизить к исходным сегментам поверхности. Но все-таки эта новая поверхность отличается от исходных сегментов! И система сообщает максимальное отклонение результирующей, «вылеченной» поверхности от исходных сегментов поверхностей. Например, Dev: 0.411 mm.

И вам еще придется решать – соглашаетесь ли вы на такое искажение исходных поверхностей ради некоторого сглаживание в стыках между ними, или нет.

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

  • Нужно сказать, что часто при «лечении» поверхностей бывает такая ситуация, в которой измеренные с помощью команды Connect Checker (см. ниже) характеристики поверхности показывают:

  • Поверхность состоит из нескольких сегментов (Patches).

  • Щелей между сегментами нет.

  • Скачков касательных векторов между сегментами нет.

  • На границах сегментов существуют большие скачки радиусов кривизны. (200%).

В этом случае наша команда Healing горю не поможет, потому что она не исправляет скачки по второй производной. А как быть? Нужно вернуться к исходным кривым и «вылечить» их.



Disassemble

О Т В Л Е Ч Е Н И Е :

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

  • Multi-Segments

  • Multi-Cells

Первые получаются из многосегментных кривых. Например, вы строите пространственную кривую 3D Curve. И еще на этапе ее построения оговариваете, что она будет состоять из нескольких сегментов (есть такая возможность в способе Near Points). Если же вы построите односегментную 3D Curve, то потом ее можно будет превратить в многосегментную кривую с помощью команды Converter Vizard.

Итак, каким-либо способом вы построили многосегментную кривую. Если теперь из этой многосегментной кривой построить поверхность (например, способом Extrude), то и поверхность будет многосегментная (Multi-Segments).

Как получить Multi-Cells поверхность? Постройте два эскиза в отстоящих друг от друга на некотором расстоянии параллельных плоскостях. В одном эскизе постройте гладкий сплайн. А во втором эскизе - ломаную полилинию. И по этим контурам постройте поверхность командой MultiSections Surfaces. В результате вы получите поверхность, которую система сразу сама разобьет на отдельные Cells. Количество этих Cells определится числом прямолинейных участков полилинии. Таким образом вы получите поверхность типа Multi-Cells.


Убедиться в том, что построенная поверхность состоит из нескольких частей, можно по-разному. Например, есть возможность получить информацию о любом графическом примитиве. Команда Geometric Information в режиме FreeStyle. А можно еще проще увидеть многосегментность поверхности. Для этого нужно в панели инструментов View выбрать способ представления поверхностей Shading with Edges. При этом отдельные части и в поверхности типа Multi-Segments, и в поверхности типа Multi-Cells будут выделены черными линиями!!


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


Разделить многосегментную поверхность на отдельные сегменты можно с помощью команды Fragmentation (режим работы FreeStyle).

Разделить «многолоскутовую» поверхность (Multi-Cells) на отдельные лоскуты можно с помощью команды Dissasemble.

В данной статье мы поговорим только о команде Dissasemble.




    • Если применить данную команду Disassemble к поверхности типа Multi-Cells, то система каждый отдельный Cell оформит вам в виде отдельной поверхности Surface!!!. Только нужно использовать опцию All Cells, а не Only Domain.

  • Зачем делается такое разбиение? Оно выполняется в тех случаях, когда стыки между кусочками (отдельными Surfaces) вас не удовлетворяют. Обычно в них имеют место скачки по первой и второй производным. Весь механизм «выглаживания» поверхностей в CATIA основан на исправлении именно стыков отдельных кусочков поверхностей. Вот для этого предварительно и приходится общую негладкую поверхность разбить на отдельные кусочки.

  • Диалоговое окно команды Disassemble представлено на рис.21. Окно не обычное. В поле Input Elements нужно указать – над какой поверхностью вы собираетесь выполнить эту команду. Далее система предлагает вам выбрать режим работы:

All Cells – в этом случае система очень «мелко» разобьет поверхность – на составные части Cells.

Domains Only – в этом случае система все компоненты разобьет только на отдельные примитивы, не связанные друг с другом.

  • Учти, что каждое выполнение команды Disassemble приводит к автоматическому образованию нового геометрического набора Geometrical Set, в котором и будут располагаться выделенные Cells. Это могут быть или Surfaces, или Curves.


Untrim

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

Во время выполнения команды следует только указать на интересующую вас поверхность и нажать на кнопку ОК. В дереве спецификаций в результате восстановления поверхности появится элемент с именем Surface Untrim.1


Последняя группа команд из рассматриваемой панели инструментов – это команды Transformation (рис. 22). Не стоит останавливаться на таких понятных командах, как перемещение, поворот, масштабирование и симметричное построение. Необычными являются только две команды.

Affinity

Команда аффинного преобразования. С помощью данной команды можно сильно преобразовать уже построенные компоненты вашего проекта. При этом вы фактически назначаете новую систему координат для вашего проекта: местоположение точки начала координат, расположение стандартных декартовых осей. И самое главное, вы можете раздельно для каждой из координат (X, Y, Z) изменить коэффициент пересчета. Похожей является команда масштабирования. Но там вы задаете один коэффициент масштабирования, общий для всех координат. А здесь есть возможность как бы раздельного масштабирования.

Диалоговое окно команды Affinity представлено на рис. 23. В этом окне нужно перечислить элементы, которые будут подвергнуты преобразованию, указать новое начало координат, плоскости и оси новой системы координат. И самое главное – коэффициенты пересчета по всем осям.


Axis To Axis

Эта команда переносит указанные компоненты вашего проекта в новую систему координат. Конечно, эту новую систему координат предварительно еще нужно построить. И для этого есть специальная команда Axis System, о которой еще речь впереди. Но если вы эту новую систему координат построили, то перейти в нее можно с помощью рассматриваемой команды Axis To Axis.

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

Диалоговое окно команды Axis To Axis представлено на рис. 24. В нем сначала следует перечислить те компоненты, которые вы собираетесь перенести в новую систему координат. Затем указать старую и новую системы координат. После этого можно приступать к выполнению.






рис.23 рис.24




Панель инструментов Analysis

  • Панель инструментов представлена на рис. 25. Все эти команды предназначены для измерения различных характеристик исследуемых пространственных кривых и поверхностей. Мы рассмотрим пять наиболее употребимых команд из этой панели, но сразу скажу, что наиболее востребованными командами являются:

    • Connect Checker

    • Curve Connect Checker

    • Porcupine Analysis

  • Мы уже упоминали, что в дереве спецификаций присутствуют различные элементы. В том числе и элементы различных измерений. Так вот, практически после любой из рассматриваемых ниже команд в дереве спецификаций появится элемент Free Form Analysis.1. А далее – еще один элемент, уточняющий конкретное измерение. Например, Distance Analysis.1.

Connect Checker

    • Команда анализирует качество соединения двух поверхностей. Можно и больше поверхностей соединить и проверить сразу характеристики всех стыков, но проще анализировать попарные соединения.

    • Команда ориентирована на определение и измерение:

    • Возможной щели между поверхностями

    • Скачка касательного вектора в местах стыка

    • Скачка кривизны в местах стыка.

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

  • Щели между поверхностями измеряются в миллиметрах.

  • Скачки касательного вектора измеряются в градусах.

  • Скачки кривизны измеряются в процентах. Что, кстати, одинаково верно и для коэффициента кривизны, и для радиуса кривизны.

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



рис.25 рис.26 рис.27 рис.28



( R1 – R2 ) / R2 * 100%

  • Итак, сначала нужно выделить две исследуемые поверхности, а потом вызывать команду Connect Checker.

Вызов команды сопровождается появлением на экране сразу двух диалоговых окон (рис.26, 27). А впоследствии можно воспользоваться и еще одним упрощенным диалоговым окном (рис.28). Но вся полезная информация сосредоточена в главном диалоговом окне (рис.26).

Рассмотрим это главное диалоговое окно подробнее.

  • В поле Analysis Type следует указать – что вы сейчас измеряете в стыке между указанными поверхностями:

Distance - расстояние между поверхностями.

Tangency – скачок касательных векторов.

Curvature – скачок кривизны.

  • Очень важное окошко - Maximum Gap. Здесь нужно указать системе – что еще считать нежелательной щелью, а что – уже промежутком между совершенно несвязанными между собой поверхностями. Если мы говорим, что Maximum Gap = 0,2 мм, то считается, что все промежутки более этой величины – это уже не щели, которые нужно измерить, а потом «заделать», а большие расстояния между отдельными поверхностями. И никакой анализ (ни G0, ни G1, ни G2) для таких больших промежутков (больших, чем указано в Maximum Gap) система проводить не будет.

Поэтому для начала назначайте Maximum Gap побольше. Например, в 0,5 - 1 мм.

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

  • Следующее поле Discretization задают частоту измерений по длине стыка. Предлагается 4 степени частоты:

  • редкую (Light),

  • грубую (Coarse) ,

  • среднюю (Medium)

  • и частую (Fine).

Обычно можно ограничиться грубой частотой (Coarse).

  • Следующее поле Display четырьмя кнопками задает способ представления результатов измерения:

    • Color Scale – включает дополнительное диалоговое окно (рис.27), с помощью которого система цветовой шкалой передает изменение измеряемых величин.

    • Comb включает построение графиков изменения измеряемых величин.

    • Envelope – оформляет построенные графики замыкающей кривой.

    • Information – включает текстовую информацию и максимальных и минимальных измеряемых величин.

  • Еще одна кнопка внизу (Quick) представляет вместо двух диалоговых окон одно (рис.28), в котором приводятся только максимальные измеренные величины. В этом окне перечислены: максимальный заданный промежуток (Maximum Gap), число рассмотренных поверхностей, число анализированных стыков.

Кроме этого, в верхней части окна присутствуют три кнопки, с помощью которых вы можете заказать анализ любого или сразу всех измеряемых величин. Рядом с кнопками присутствуют небольшие окошки, в которых заданы пороговые значения для промежутка, скачка касательного вектора и скачка радиуса кривизны. Эти пороговые значения можно менять. С помощью этих пороговых значений измеряемых величин вы можете просмотреть не все щели, а только щели больше 0.3 мм, например.

Каждой кнопке и окошку порогового значения соответствует свой цвет: красный, желтый, синий.

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

  • Кстати, мы неоднократно упоминали о том, что в дереве спецификаций может присутствовать элемент, представляющий собой результаты некоторых измерений. Так вот, после выполнения операции Connect Checker в дереве спецификаций появятся элементы с именами Free Form Analysis.1 и Surface Connection Analysis.1


Curve Connect Checker

  • Это аналогичная команда, но используется она для измерения качества соединения (стыков) двух и более кривых. Между кривыми возможен даже некоторый промежуток. Команда очень востребована при измерении характеристик исследуемых кривых.

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

    • Предварительно выделяется кривая или группа кривых, а затем вызывается сама команда. Диалоговое окно (рис.29) несложно. В единственном его поле Analysis Type следует только выбрать вид измерения:

Distance - расстояние

Tangency – скачок касательного вектора

Curvature- скачок кривизны

Overlapping – «нахлест»

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

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

  • Если выбрать кнопку Quick, то система предоставит другое диалоговое окно (рис.30), в котором она сразу предоставит все максимальные замеренные дефекты соединения. Кроме этого, в этом окне вы можете указать пределы для Distance, Tangency и Curvature, выше которых система и будет производить и фиксировать измерения.

Все измеренные величины система высвечивает на рисунке непосредственно около места соединения двух кривых. Красным, зеленым и синим цветом так, как показано в диалоговом окне рис. 30.






рис.29 рис.30


Surfacic Curvature Analysis

  • Эта команда измеряет кривизну исследуемой поверхности. Команда впечатляет своими картинками, но сразу хочу предупредить, что для этих целей в системе существует более точная и удобная аналогичная команда – Cutting Planes (режим работы FreeStyle), о которой мы поговорим позже.

  • Если вы помните теоретический материал, то в каждой точке поверхности можно выделить два главных, взаимно-перпендикулярных направления. В каждом из этих направлений можно определить кривизну. Одно значение кривизны называется максимальным, другое - минимальным. В терминах системы CATIA одно из таких главных направлений называется направлением максимальной кривизны, другое направление – направлением минимальной кривизны. А произведение этих величин называется Гауссовой кривизной поверхности в данной точке. Все три значения кривизны в заданной точке можно определить с помощью команды Surfacic Curvature Analysis.

  • Диалоговое окно команды (рис. 31) несложно. В поле Type вы определяете тип измерений. Допускаются такие измерения:

  • Gaussian

  • Maximum

  • Minimum

  • Limited

  • Inflection Area

    • Стоит оговорить только последние два режима.

Измерение Limited предполагает измерение максимального радиуса кривизны при рассмотрении только его положительных значений.

Здесь система позволяет посмотреть раскраску исследуемой поверхности не для всего диапазона зафиксированного радиуса кривизны (от максимального до минимального). А только для диапазона величин этого радиуса, который вы сами назначите.

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

Максимальное численное значение радиуса кривизны задается в специальном окошечке диалогового окна. Это окошечко становится активным только в этом режиме. И это значение тут же дублируется на цветовой палитре около «верхнего» цвета (диалоговое окно рис. 32).

Значение радиуса кривизны для «нижнего» цвета вы также назначаете сами. Ниже мы еще рассмотрим возможности редактирования палитры.

Значение радиуса кривизны для «промежуточного» цвета вы можете задать линейно интерполированным.



рис.31 рис.32 рис.33


  • Измерение Inflection Areaпозволяет раскрасить исследуемую поверхность в два цвета: зеленый и синий. Синий цвет определяет области, в которых кривизны минимального и максимального направлений совпадают по знаку (Гауссова кривизна положительна). А зеленым цветом закрашиваются области поверхности, в которых кривизны минимального и максимального направлений не совпадают по знаку (Гауссова кривизна отрицательна).


  • Возможности редактирования цветовой палитры. Это вспомогательное диалоговое окно (рис. 32) включается по кнопке Color Scale из основного диалогового окна. Внизу этого окна (что очень важно) всегда представлены максимальное и минимальное значения измеряемой величины.

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

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

  • Для цветных прямоугольников система предлагает такие возможности:

  • Edit - выводит вас в другое диалоговое окно, в котором можно изменит цвет

  • UnFreeze - сделает цвет данного прямоугольника линейно интерполированным между цветами соседних прямоугольников (верхнего и нижнего).

  • No Color - сделает цвет данного прямоугольника черным


    • Для численных значений система предлагает такие возможности:

  • Edit позволяет сменить численное значение.

  • Use Max или Use Min назначает выбор максимальное или минимальное значения из рисунка.

    • В поле Display Options основного диалогового окна (рис. 31) присутствуют такие полезные кнопки:

      • Color Scale - включает дополнительное диалоговое окно (рис. 32)

      • On The Fly – включает режим оперативного измерения кривизны вслед за перемещением курсора по исследуемой поверхности..

      • 3D MinMax – позволяет измерить и зафиксировать максимальное и минимальное значение измеряемой величины.

  • В поле Analysis Options есть две кнопки:

        • Positive Only действительно позволяет оценивать только положительные величины. Используется только для режимов Gaussian, Maximum, Minimum.

        • Radius Mode Используется только для режимов Maximum, Minimum. Включает измерение радиуса кривизны, а не коэффициента кривизны.

  • Нужно сказать, что перед использованием данной команды следует проверить некоторые установки в падающем меню Tools/Options:

  • На закладке Display/Performances в поле 3D Accuracy точность представления примитивов должны быть задана 0.01.

  • На закладке General/Display/Navigation в поле Selection должна быть выключена кнопка Highlight Faces and Edges.

  • И самое главное – в панели инструментов визуализации View должен быть выбран способ визуализации проекта - Shading With Material.


Distance Analysis

  • Эта команда позволяет определить расстояние между пространственными кривыми, кривыми и поверхностями, только поверхностями. Мы уже сталкивались с понятием расстояния между отдельными участками поверхностей в команде Connect Checker. Но там определялось качество соединения между поверхностями, между которыми возможны небольшие щели. Размеры этих щелей можно было определить командой Connect Checker, а затем «заделать», например, с помощью команды Healing.

  • В данном случае речь идет о поверхностях или кривых, далеко расположенных друг относительно друга. И расстояния между ними непросто определить, поскольку возникает проблема: в каком направлении следует считать эти расстояния? Вот для решения этой проблемы и существует команда Distance Analysis. На рис. 33 представлен один из возможных вариантов взаимного расположения поверхностей и определения расстояния между ними в направлении оси Z.

  • Диалоговое окно команды представлено на рис. 33а. Обратите внимание на то, что при использовании данной команды нужно отдельно указывать оба примитива, между которыми вы меряете расстояние. Для этого в диалоговом окне присутствуют кнопки First Set, Second Set.

  • Чаще всего этой командой приходится пользоваться для определения расстояния между кривой и поверхностью или для проверки: лежит кривая на поверхности, или нет. На рис. 33б показан результат подобного измерения.

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

Porcupine Analysis

  • Этот команда измеряет кривизну исследуемой пространственной кривой. Если речь идет о поверхности, то система измерит только кривизны ее границ. На рис. 34 показан результат такого измерения. Картинка напоминает дикобраза, ощетинившегося своими иглами. На самом деле так представлены радиусы кривизны исследуемой кривой.

  • Если вы примените этот инструмент к поверхности, то система измерит кривизны характерных кривых на ее поверхности. Например, будут измерены кривизны границ отдельных составляющих Patch.

  • В этой команде можно расширить основное диалоговое окно и добавить специальное окно с графиками измеряемых величин.



рис.33а рис.33б




рис.34 рис.35

  • Команда очень востребована при измерении характеристик исследуемых кривых.

  • Бывают ситуации, когда команда Curve Connect Checker не находит никаких дефектов, команда Curve Smooth (режим Generative Shape Design) отказывается кривую исправлять. Говорит – There is no discontinuity to smooth. А на вид - кривая очевидно негладкая. И только с помощью данного инструмента вы сможете убедиться сами и убедить других в том, что кривая имеет точно измеренные скачки по радиусу кривизны.






Панель инструментов Tools


Панель инструментов представлена на рис. 35. Панель известная. Она присутствует в любом режиме работы системы. Некоторые из этих команд мы уже рассмотрели выше или в других курсах. Здесь выделим только некоторые команды, характерные именно для данного режима работы Wireframe and Surface Design.

  • Axis System

Ранее мы упоминали команду Axis To Axis – команду перехода из одной системы координат в другую (панель Operations). И там мы говорили, что предварительно эту самую другую систему координат нужно еще приготовить! Вот рассматриваемая команда Axis System и готовит новую систему координат.

В диалоговом окне этой команды следует выбрать тип новой системы координат, указать расположение точки начала новой системы координат, определить направление осей. В дереве спецификаций появится новый элемент – Axis System.1, а в области проектирования новая система координат будет отмечена условным знаком.

  • Work on Support

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

  • Snap to Point

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

    • Working Supports Activity

Вы можете в своем проекте назначить несколько элементов поддержки. С помощью данной команды можно эти элементы поддержки менять.

  • Keep Mode

Этот выключатель определяет видимость (или невидимость) исходных компонентов вашего проекта при выполнении некоторых команд. Например, вы переносите кривую линию на некоторое расстояние в заданном направлении. Останется ли видимой эта линия на старом месте, или нет - зависит от выбранного вами режима: No Keep Mode (не останется видимой) или Keep Mode (останется видимой).

Конечно, в системе, в каждой отдельной команде есть возможность оговорить эти же особенности и по-другому. Но в данном случае вы задаете видимость (или невидимость) исходных компонентов не на одну конкретную команду, а на весь сеанс работы.

  • Catalog Browser

Эту возможность подключать к вашему проекту унифицированные детали из «чужих» каталогов мы уже обсуждали в Пособии 3 (также в панели Tools).


Create Datum

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

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

Все было бы хорошо, но если вы попробуете выполнить эти манипуляции, система тут же сообщит, что перемещение невозможно, потому что некоторые вспомогательные элементы, использованные при построении вашей поверхности (плоскости, направления) зафиксированы. И система не может эту «зафиксированность» нарушить.

Как же воспользоваться возможностями локального компаса? Нужно еще при первоначальном построении графических примитивов, которые вы намерены впоследствии перемещать, включить режим Create Datum из панели команд Tools.

Например, вы построили поверхность, и она называется Styling Sweep. Название отражает прием, которым вы воспользовались для построения поверхности. Затем вы строите новую поверхность, например, путем перемещения поверхности Styling Sweep на некоторое расстояние.

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

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

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



В заключение нужно сказать, что этом режиме работы WireFrame&Surfaces присутствуют и другие возможности, но для первого ознакомления можно ограничиться и сказанным.






Случайные файлы

Файл
159292.rtf
21381-1.rtf
26519.rtf
22648.rtf
125207.rtf