1 Моделирование отсечениями 3D-объекты рассматриваются как твердые (сплошные) тела – Solids. А отсюда следует, что при пересечении их объемов «общие» части внутри зоны пересечения можно отсечь от исходных (или объединить объекты) и получить новый объем, новую форму. interseCt FaCes (отсечение поверхностей) Начнем с того, что в SketchUp всегда присутствовал подобный механизм, точнее с оговоркой, что в своеобразном решении – Intersect, которое можно, пожалуй, назвать «псевдо» Solids. И хотя опции Intersect считаются разновидностью опций модификаций, все-таки имеет смысл рассмотреть их в этой отдельной теме, тем более в связи с появлением в 8-й версии новой «родственной» группы инструментов Solids. Intersect создает сложные объекты за счет появления новых (дополнительных) ребер и поверхностей, образующихся в местах пересечения отдельных, независимых до этого поверхностей. Таким образом, что особенно ценно, можно создать очень сложные формы, в том числе с криволинейными поверхностями, а это для низкополигонного SketchUp, в принципе, непростая задача. 2 Опция включается после выбора исходных объектов из меню Edit > Intersect Faces (Отсечь поверхности) или, что удобней – из контекстного меню выбранного. Посмотрим, как это работает на простом примере (рис. ниже), взяв для тестирования два объекта – кубик и граненый шарик – и «задвинув» шарик в объем кубика. Видим, что при этом оба объекта остаются независимыми друг от друга, в чем нетрудно убедиться, выбрав (тройным кликом, например) один из них. Причем для этого необязательно создавать из них группы. Суть заключается в том, что у них отсутствуют общие, «пограничные» ребра на пересечениях их поверхностей, точнее – такого пересечения нет вообще. итак, для начала выбираем один (любой) из объектов, открываем контекстное меню и видим два доступных варианта применения опции: Intersect With Model (Отсечение в модели) – опция работает одновременно со всеми поверхностями всех выбранных объектов; 3 Intersect Selected Only (Отсечение только выбранного) – опция работает только с выбранными в объектах поверхностями. Начнем со второго варианта – видим, что в этом случае опция не работает, поскольку «не видит» выбранных поверхностей другого объекта... о чем и появляется информация в окошке: но если выберем не один, а оба объекта вместе, то есть фактически покажем, что должны быть задействованы все их поверхности – и первый, и второй варианты Intersect сработают с таким одинаковым результатом: 4 Что изменилось? на пересеченных поверхностях появились новые «пограничные», точнее теперь – общие ребра этих двух объектов, то есть они при этом стали единым целым. Чтобы убедиться в этом, сделаем тройной клик на любом из элементов – будет выбрана вся смежная геометрия. При этом фактически произошла «врезка» объема шара в объем кубика с образованием новых ребер и поверхностей в местах их пресечений (рис. вверху). Попробуем теперь предварительно из объектов создать группы (или компоненты) и повторим опцию – видим, что новое «пограничное» ребро появилось, однако оно оказалось «вне» групп как новый самостоятельный набор ребер, а внутри самих групп ничего не изменилось. в этом легко убедиться, раздвинув объекты-группы (рис. внизу). Поэтому, чтобы получить полностью аналогичный результат тому, с которого начали, для завершения действия Intersect необходимо тут же выполнить Explode (Разрыв) групп исходных объектов. А что будет, если выполнять Intersect в режиме 5 «внутреннего» редактирования одного из объектовгруппы? Опция подействует только на поверхности редактируемой группы, а второй объект-группа останется без изменений: есть и третий вариант действия опции – Intersect With Context (Отсечение содержимого), который становится доступным в режиме «внутреннего» редактирования одного из объектов-группы. Здесь можно сказать одно – вариант настолько неоднозначен и невнятен по смыслу и принципу применения, что можно спокойно про него забыть... тем более что он явно «избыточный». Итак, тем или иным способом в итоге получаем новый объект с «врезкой» объема шарика в объем кубика (можно сказать и наоборот). и теперь остается удалить ненужные части (ребра и поверхности), оставив только то, ради чего и производились эти манипуляции. Можем в нашем примере 6 получить три разных результата в зависимости от того, что удаляем (и оставляем) – из первого объекта вырезается часть второго, из второго вырезается часть первого, оставляем только «общую часть» первого и второго объектов: Проверим теперь, работает ли Intersect не с двумя, а с большим количеством объектов разных типов. добавим к исходным кубику и шарику еще и цилиндр. Как видим, в итоге можно получить практически любые новые объекты – варианты результата ограничены только нашим воображением и степенью развития пространственного мышления. и, резюмируя тему механизма Intersect Faces в SketchUp, 7 отметим самое главное – во- первых, он работает с любыми наборами любых объектов и отдельных поверхностей, а вовторых, – на практике вполне можно обойтись одним, основным вариантом – Intersect With Model. Плюс, конечно, потребуется несколько дополнительных шагов по работе с редактированием групп (компонентов) и удалению «строительного мусора». Solid tools (инструменты сплошных тел) Прежде всего отметим, что хотя опции Intersect Faces и Solid Tools «родственны» по целям и результатам, это все-таки совершенно разные механизмы по принципу действия, условиям и порядку применения. если Intersect Faces по сути работает с любыми пересекающимися поверхностями любых объектов, то Solid Tools – с объектами в целом, причем требуются объекты определенного типа – сплошные (твердотельные). Какие объекты в SketchUp попадают в эту категорию? Сплошным для него является любой 3D-объект (модель), обязательно – компонент или группа (!), который имеет единый замкнутый объем, то есть он не может иметь открытых внутрь частей (проще говоря – «дыр») или внутренних поверхностей и ребер под внешней оболочкой. Чтобы проверить, является ли выбранная группа (компонент) сплошным объектом, вызываем ее Entuty Info: 8 видим, во-первых, что обозначение Solid добавляется к указанию типа объекта, и во-вторых – появляется окошко Volume, в этом контексте – объем твердого тела в кубических единицах измерения, установленных в проекте. в SketchUp этот параметр доступен только для сплошного тела (объекта). По умолчанию панель этих инструментов (блок кнопок) в интерфейсе отсутствует (выключена) – вызываем ее через меню View > Toolbars > Solid Tools. Поскольку инструменты работают только со сплошными объектами, при попытке применения к другим объектам появится запрещающее окошко с предупреждением, что это не твердое тело. Прежде всего отметим, что некоторые опции работают с любым (два и более) количеством Solidобъектов, другие – только с двумя. исходя из этого, 9 целесообразно применять инструменты двумя различными способами: – для опций, работающих со множеством объектов (последовательность выбора неважна): выбираем все объекты любым способом > выбираем опцию (кликаем ее кноп- ку) > опция срабатывает и завершается; – для опций, работающих только с двумя объектами (важна последовательность вы- бора): выбираем опцию (кликаем ее кнопку) > появляется курсор с номером 1, которым надо указать первый по очереди объект > появляется курсор с номером 2, которым надо указать второй по очереди объект > опция срабатывает и завершается. впрочем, второй способ работает и для опций, работающих со множеством объектов. outer shell (Внешняя оболочка) – работает на двух и более выбранных объектах, в результате происходит «слияние» исходных объектов в один. При этом перекрывающиеся части удаляются, как бы «поглощаются» общей внешней оболочкой нового объекта. Особенно наглядно происходящее при включенном режиме визуализации X- Ray (Рентген): 10 intersect (Отсечение) – работает на двух и более выбранных объектах, в результате получаем новый объект, созданный из перекрывающиеся частей исходных. исходные объекты удаляются. 11 union (Объединение) – в общем аналогичен Outer Shell, поскольку в результате также происходит «слияние» двух исходных объектов в один новый. Но отличие все-таки есть – оно проявляется при определенной геометрии исходных объектов. Поскольку наш тестовый пример тут не подходит (на нем как раз разницы и не увидим), поэтому используем другой: 12 видим, что применением Union может быть создана внутренняя «полость», а Outer Shell ничего, кроме общей внешней оболочки, не допускает. subtract (Вычитание) – работает по принципу: из второго объекта вырезается перекрывающаяся часть от первого, «неиспользованная» часть которого удаляется. Здесь важна последовательность выбора – что будет первым, что вторым объектом. Так, если первым выберем шарик, получим тот же результат, что и на показанном выше примере применения Intersect. если наоборот, первым выберем кубик – получим результат, показанный ниже. 13 trim (Обрезка) – работает по принципу: из второго объекта вырезается (изымается) перекрывающаяся часть и присоединяется к первой, при этом оба измененных объекта остаются в сцене. Здесь также важна последовательность выбора – что будет первым, что вторым объектом. Так, если первым выберем шарик, получим результат, показанный далее. если наоборот, первым выберем кубик – получим результат, показанный выше в опции Subtract. 14 split (разделение) – работает только с двумя объектами, последовательность выбора не важна. в результате получаем разделение на три новые solid-группы (компонента) – часть от первого объекта + часть от второго + перекрывающаяся часть пересечения объектов. Резюмируя тему механизма Solid Tools в SketchUp, можно отметить его главное отличие и преимущество перед механизмом Intersect – опции «отсечения» объемов не требуют для получения конечного результата никаких последующих манипуляций «очистки» вручную от лишних, уже ненужных элементов. Кроме того, использование solidгрупп (solid-компонентов) наиболее точно отвечает принципу «физической достоверности» моделируемых объек- тов. Очевидно также, что в SketchUp все, что скрыто под внешней оболочкой объектов, то есть не визуализируется, – на самом деле бесполезный «груз». и еще – вспомним все то, что уже было сказано о 15 преимуществах максимально возможного использования групп и ком- понентов: – если они к тому же являются solidобъектами, получаем еще больший выигрыш в удобстве и скорости работы. в то же время помним и о главном ограничении Solid Tools – они работают только с определенным «сплошным» типом объектов, а значит, неприменимы в некоторых ситуациях, где Intersect работает без проблем. Хотя на самом деле это уже вопрос методики моделирования – ничто не мешает изначально «настроиться» на работу с объемами именно как с твердотельными объектами...