Содержание

рисуем плавные графики с помощью кривых Безье / Хабр

Доброго времени суток, харбачитатель.

В этой статье мне хотелось бы рассказать об одном придуманном когда-то алгоритме (или скорее всего — переизобретённом велосипеде) построения плавного графика по заданным точкам, используя кривые Безье. Статья была написана под влиянием вот этой статьи и очень полезного комментария товарища lany, за что им отдельное спасибо.

Постановка задачи
Есть массив Y-ков точек, расположенных равномерно по оси X. Нужно получить плавный график, который проходит через все заданные точки. Пример на рисунке ниже:

Всех, кому интересно, прошу под кат.

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

Основная идея

Разобью идею на три подпункта, чтобы было понятней и читабельней.
  1. О кривых Безье хорошо написано на вики и на javascript.ru. Если внимательно читать, то можно обратить внимание, что кривая Безье выходит из первой точки касательно к прямой начальная_точка-первая_опорная_точка. Аналогично и в конце — кривая заходит касательно прямой последняя_опорная_точка-конечная_точка. Таким образом получается, что если у нас одна кривая заканчивается в точке А и зашла касательно к прямой а, а другая кривая выходит из этой точки А касательно к той-же прямой
    а
    , то этот переход между двумя кривыми Безье у нас получится плавным.
  2. Исходя из первого пункта получается, что у нас опорные точки слева и справа относительно точки А должны лежать на одной прямой. Поразмыслив немного, было решено, что эта прямая должна быть такой, чтобы ∠BAB1=∠CAC1 (рисунок ниже), где точки B1 и C1 — опорные.
  3. Расстояние от точки А до точек B1 и C1 было решено взять равным половине шага по X между точками B и A, A и C, и т.д. Мне сложно как-то обосновать такой выбор, но важно, чтобы это расстояние было меньше, чем шаг по X между точками
    А
    и B, иначе может получится что-то такое, как на рисунке ниже. Важно понимать, что чем больше будет это расстояние, тем более извилистой будет кривая и наоборот. Расстояние в половину шага по X мне кажется оптимальным, но тут уже возможны варианты.

Таким образом получается, что задача сводится к поиску прямой (B1C1) и, собственно, опорных точек B1 и C1, по которым мы потом будем строить кривые Безье.
Поиск прямой

Как известно, прямая на плоскости выражается формулой y=kx+b, где k — тангенс угла наклона прямой к оси Х, а b — «высота» пересечения прямой и оси Y.
Поиск коэффициента k

Скажу наперед, что k = tg(φ) = tg((α-β)/2) = (Sqrt(((YA-YB)2+ΔX2)*((YA-YC)2+ΔX2))-ΔX2-(YA-YB)*(YA-YC)) / (ΔX*(YC-YB)), где ΔX — расстояние по Х между точками графика (напомню, что у нас точки расположены равномерно по Х). Ниже представлено математическое доказательство правильности формулы, но если вы не в настроении, то можете его просто пропустить.
Математическое выведение коэффициента k
  1. Пускай угол ∠O1BA=α, а угол ∠O
    2
    СA=β
    .
    Тогда ∠BAO1=90o; ∠CAO2=90o, так как △ABO1 и △ACO2 — прямоугольные.
  2. (1) ∠B11=∠B1AB+∠BAO1+∠O1AС+∠CAС1=180o
    (2) ∠B1AB=∠C1 — по условию
    (3) ∠BAO1=90o
    (4) ∠O1AС=∠CAO2=90o

    Из (1), (2), (3) и (4) получается, что:
    2*∠C1AС+(90o-α)+(90o-β)=180o
    2*∠C1AС+180o-α-β=180o

    (5) ∠C1AС=(α+β)/2

  3. (6) ∠C1AС=∠C1AD+∠DAC=φ+∠DAC
    (7) ∠DAC=∠O2CA=β — как внутренние разносторонние углы образованные двумя параллельными прямыми (AD) и (O2C) и секущей (AC)

    Из (5), (6) и (7) получается, что:
    ∠C1AС=φ+∠DAC
    (α+β)/2=φ+β
    φ+β=(α+β)/2
    (8) φ=(α-β)/2

  4. k=tg(φ)=tg((α-β)/2)

    Из △ABO1:
    sin(α)=[AO1]/[AB]
    cos(α)=[BO1]/[AB]

    Из △ACO2:
    sin(β)=[AO2]/[AC]
    cos(β)=[CO2]/[AC]

    Под квадратными скобками подразумевается длинна отрезка (не хотел использовать вертикальные прямые — надеюсь, что читатель меня простит)

  5. Из предыдущего подпункта следует:
  6. Зная, что:
    [BO1]=[CO2]=ΔX
    [AO1]=YA-YB
    [AO2]=YA-YC
    [AB]=Sqrt([AO1]2+[BO1]2)=Sqrt((YA-YB)2+ΔX2)
    [AC]=Sqrt([AO2]2+[CO2]2)=Sqrt((YA-YC)2+ΔX2)

    Получаем, что:


И так, k мы нашли. Забегая наперед скажу, что
b
нам при расчетах не пригодится. Приступим к поиску опорных точек.
Ищем опорные точки

Сразу скажу, что: ΔX’=ΔX/2*Sqrt(1/(1+k2)), координаты опорной точки справа: XC1=XA+ΔX’;YC1=YA+k*ΔX’, и слева:XB1=XA-ΔX’;YB1=YA-k*ΔX’.Немного математики, которая это доказываетИз тригонометрии мы помним, что:

Из △AC1O:
ΔX’=[AO]=[AC1]*cos(φ).
[C1O]=[AO]*tg(φ)=k*ΔX’

Если мы принимаем [AC1] равным половине шага по X между основным точками графика (точками B и A,

A и C, т.д.), то:

И вот, собственно:
XC1=XA+ΔX’
XB1=XA-ΔX’
YC1=YA+k*ΔX’
YB1=YA-k*ΔX’

К приятному!

  1. От товарища lany (огромное ему за это спасибо и плюс ему к карме) я узнал, что html5 с помощью функций quadraticCurveTo() и bezierCurveTo() умеет рисовать по canvas-у кривые Безье сам. Соответственно, алгоритм можно применить с JavaScript-ом.
  2. Приятной особенностью алгоритма есть то, что график предсказуемо «выпирает» за границы пространства точек, через которые мы собственно проводим график. Если брать расстояние до опорных точек равными половине шага по X (отрезок
    [AC1]
    на последнем рисунке), то зазора в четверть шага по X сверху и снизу от границ canvas-а будет достаточно.

Пример реализации на JSFiddle

UPDATE:

  1. Попытки сделать так, чтобы опорные точки нужно было считать один раз, а потом, при масштабировании графика, просто использовать их координаты, потерпели неудачу. Все упирается в то, что в расчет коэффициента k входит и текущий масштаб по X, и текущий масштаб по Y. И вытянуть их из формулы не выходит. Товарищ quverty меня об этом предупреждал и оказался прав.
  2. Хотел бы обратить внимание, что кривизну построенного графика можно регулировать. Для этого следует изменять расстояние до опорных точек — менять коэффициент
    ΔX’=ΔX/2*Sqrt(1/(1+k2))
    , а именно — знаменатель вот этого его кусочка: ΔX/2. Знаменатель меньше 1 брать не следует (читай третий подпункт пункта «Основная идея»). Поэкспериментировать можно на JSFiddle (129 строка JavaScript-а).
  3. Обратите внимание на реализацию сплайна Катмулла-Рома товарища IIvana. И спасибо ему за этот комментарий.

Кривые Безье. От новичка до профессионала

Всем привет! Меня зовут Алексей. Конечной целью данного урока будет получение векторного скоростного такси, такого как на рисунке в шапке урока. Его мы будем отрисовывать в проге CorelDraw. Но, поскольку это все-таки «урок», то хотелось бы сделать его так, чтобы тот кто его прочтет действительно научился чему-нибудь, а не тупо прочел и высказал свое мнение, или же повторил указанные операции и через день забыл. С этой целью в конце первой части урока будет небольшое задание (Вам надо будет скачать несколько логотипов и обрисовать их), на наработку опыта в использовании инструмента кривых Безье. Также, в конце первой части, я присоединил видеоролик, демонстрирующий как работать с кривыми Безье (в качестве видео-иллюстрации первой части урока).

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

Профессионалы смогут лишь оценить изложение материала, а вот конкретную целевую аудиторию я определяю как новичок, начинающий знакомиться с прогой CorelDraw и пока что имеющий базовые понятия рисования объектов. Так вот, по этой причине я сразу хочу написать чему я вас научу в этом уроке….и, надеюсь, знания полученные здесь конкретно продвинут вас на огромный уровень профессионализма в работе с программой. Урок будет довольно большой по объему, но, опять же, я преследую цель, чтобы человек, который прочтет его реально научился и получил практические навыки, которые можно применять на практике (в частности в рекламе — при обрисовки логотипов), а не тупо проделал последовательность действий. Итак, что вы узнаете и научитесь делать по выполнению данного урока:

1. Профессионально работать с кривыми Безье (кстати, возможно пригодится при рисовании сплайнов в 3D Max’e).

2. Узнаете об инструменте Прозрачность.

3. Научитесь правильно работать с операциями сложения/вычитания/умножения.

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

Поехали.

1.Подготовка.

С чего начать? С конкретного примера. Частенько бывает так, что приходит к тебе дядя-заказчик и просит сделать ему какую-нибудь рекламу, ну там щит 3х6, перетяжку, буклет, визитку и т.д. Первое что ты у него спрашиваешь – дайте мне логотип вашей фирмы. А дядя-заказчик в этом деле человек недалекий, ему в принципе и не надо таким быть, он вот значит и говорит тебе мол логотипа какого тебе надо нету (а нужен ессно в векторе), есть вот только визитка. И тут, ты начинаешь приготавливаться с самому худшему. В голове сразу же рождается мысль, что придется тебе этот логотип обрисовывать. И ладно, если он, логотип, окажется простеньким еще полбеды. Но может случиться и так, что будет вообще страшно глянуть. В принципе, ничего страшного нету, и на практике обрисовка даже самого сложного логотипа может занять не более 30 минут чистого рабочего времени, просто с определенного времени это начинает казаться таким тупым занятием, что отсюда и возникает такое чувство недовольства при первых признаках необходимости обрисовки.

Итак, прежде чем начать обрисовывать логотип, его надо отсканировать с визитки или с буклета или еще с чего. Сканировать можно в разрешении 150-300 dpi, больше не надо (опять же, смотрите какое качество, если логотип достаточно большой и контрастный, четко видны все его линии, то можно и поменьше разрешение поставить). И после этого желательно сохранить из фотошопа в JPG или GIF оптимизированным для веба. Это делается для того, чтобы при импорте в корел растровой картинки она весила меньше и не слишком загружала работу программы.

Рис. 1

Посмотрите на рис. 1. Это будет наш учебный логотип. Перетащите его просто из браузера на рабочее поле программы. Либо же, сохраните рисунок у себя на диске, а затем из программы CorelDraw выполните операцию Импорт: File – Import и укажите файл, который вы только что сохранили. Эти два способа ничем не отличаются друг от друга и относятся к операции Импорт, тем не менее первый способ гораздо быстрей. Таким способом можно также перетаскивать файлы на рабочее поле программы.

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

Рис. 2

А теперь посмотрите на рис. 2. Я уже обвел часть логотипа от левого острого угла до самой верхней точки. Вы видите линию? Я с трудом. Поскольку в кореле по умолчанию рисуется линия черным цветом самой маленькой толщины, в терминах корела – волосяной линией. Вследствие этого, как вы заметили, линия практически плохо различима поверх нашей картинки с логотипом. Поэтому, для того, чтобы она хорошо контрастировала и мы видели в своей работе ЧТО мы уже обвели, а что еще предстоит обвести, необходимо понизить прозрачность у самой картинки. Для этого, инструментом «стрелка» выделяем нашу картинку и выбираем инструмент прозрачности (рис. 3)

Рис. 3

После того, как выбрали, визуально вроде как бы ничего не изменилось. Правильно. Посмотрите вверх, там появилась панель «дополнительных параметров», которая разная, для разных инструментов. В нашем случае, дополнительные параметры появились именно для инструмента «Прозрачность». По умолчанию, стоит отсутствие прозрачности – None (рис. 4).

Рис. 4

Из выпадающего списка выбираем Стандартную прозрачность – Uniform. Т.е., в результате наших хитромудрых действий, объект становится прозрачным, это значит, что объекты которые лежат под ним будут видны. Степень прозрачности регулируется ползунком, либо вводом точного значения в пределах от 0 до 100 в поле рядом с ним (0 – отсутствие прозрачности, 100 – полностью прозрачный объект). Но, поскольку у нас под нашим логотипом никаких других объектов не лежит, то понятный пряник, ничего под ним и не видно, но этим самым мы добились того, что когда мы будем рисовать снова линию поверх картинки, она будет гораздо контрастней по сравнению с обрисовываемой картинкой и как следствие хорошо различимой. На практике, зачастую, лично по моим наблюдениям хватает установить прозрачность в пределах 70-80, поэтому здесь вы руководствуетесь принципом – чтобы контуры обводимого объекта были видны, и хорошо контрастировали с будущими линиями. Я выбрал прозрачность около 80, и теперь посмотрите на рис. 5 – моя линия стала хорошо различимой, теперь я точно не запутаюсь в том, ЧТО я уже обрисовал, а что еще предстоит обрисовать.

Рис. 5

Практически, все необходимое что надо знать о прозрачности и что нам пригодится мы узнали, ну еще есть кнопочка «отменить прозрачность» (рис. 4).

Заканчивая подготовительную часть, последним шагом нам нужно закрепить объект. Что это значит? Когда мы будем обрисовывать логотип, мы будем перемещаться поверх этой картинки, и случайно можем ее захватить, т.е. выделить и сместить. Это не то что неудобно, а нам вообще противопоказано – мы ТОЧНО обводим картинку по контуру, и вдруг она смещается, вследствие чего нам надо максимально точно снова «подогнать» ее под то, что мы уже нарисовали. Поэтому, чтобы такого не случилось, на время мы ее просто напросто заблокируем от каких-либо случайных поползновений. Выбираем нашу картинку инструментом стрелка и жмем на ней правой клавишей мышки – из контекстного меню, выбираем команду Закрепить объект – Lock object (рис. 6). По краям картинки, появились «замочки» говорящие о том, что она заблокирована. Теперь мы при всем желании даже не сможем ее выбрать, захватить и сдвинуть с места – сами попробуйте что-либо проделать с ней инструментом стрелка. Не получается? Значит все сделали правильно. Разблокируем мы ее в самом конце, но, забегая вперед, можно сказать, что делается это аналогично – на картинке нажимаем правой клавишей мышки и там видим одну единственную команду Unlock Object (разблокировать).

Рис. 6

2.Кривые Безье.

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

Стоп! Прежде чем приступить к обучению работе с кривыми Безье, небольшое отступление, которое может быть полезно. Настоятельно рекомендую запомнить немного «горячих клавиш» реально облегчающих и ускоряющих работу в кореле. В свое время меня просто удивило, когда я отдавал макеты в печать, люди которые принимали их (и надо полагать корел не первый день видели в глаза) не знали подобных фишек. Итак пара волшебных клавиш которые используются практически всегда, если вы работаете в кореле:

F4 — показать все объекты на рабочем поле. Иногда бывает так, что в результате приближения/отдаления масштаба с помощью лупы новичок может залезть неизвестно куда и дезориентироваться в том, где он находится на рабочем поле. И чтобы снова найти свою картинку начинает приближать либо удалять лупой какие-нибудь области, либо использует полосы прокрутки вверх/вниз и влево/вправо, чтобы найти рисунок, отчего может залезть еще дальше. Еще хуже, бывает когда новичок использует колесо мышки, потому что оно, это колесо, не совсем адекватно отдаляет/уменьшает, точнее «урывками» и слишком быстро. Поэтому гораздо легче использовать клавишу F4: приблизил лупой один объект, поработал с ним, и если надо увидеть ВСЕ что творится на рабочем поле — нажимаешь F4. А потом заново приближаешь нужный объект и работаешь с ним. И т.д. К тому же, если у вас на рабочем поле всего лишь один объект, то после нажатия F4 он весь и покажется.

Space (пробел) — при работе в кореле выполняя практически любую операцию ОЧЕНЬ ЧАСТО приходится использовать инструменты «стрелка» и «лупа». Но, переключаться между ними, каждый раз выбирая их мышкой на панели инструментов с определенного времени начинает раздражать. В связи с этим, рекомендую пользоваться пробелом (я обычно нажимаю его большим пальцем левой руки). Смысл его — он позволяет переключаться между ДВУМЯ ПОСЛЕДНИМИ ИСПОЛЬЗУЕМЫМИ ИНСТРУМЕНТАМИ: стрелка — выделил объект, потрансформировал — ПРОБЕЛ — лупа — отдалил область просмотра, приблизил другой объект — ПРОБЕЛ, появилась стрелка — начал работать с другим объектом и т.д. Удобно!

Дублирование — позволяет создавать дубликат (копию) объекта простым перетаскиванием. Выделяем объект инструментом стрелка. Хватаемся за него и тащим в свободное место, как будто мы просто хотим его переместить. НО! В том месте где мы по старинке просто отпустили бы клавишу мышки, мы нажимаем ПРАВУЮ клавишу (еще удерживая левую) мышки и после отпускаем обе кнопки. Получаем дубликат объекта. Ну, что можно сказать, иногда это гораздо удобней и самое главное быстрей, если необходимо получить копию объекта.

Shist+PageUp/Shift+PageDown — поместить объект на передний или задний план. Ну и еще полезно будет знать: если у вас так получилось, что вы нарисовали фигуру поверх предыдущего объекта и полностью его закрыли новой фигурой, но вам его надо «достать» любой ценой, при этом, верхнюю фигуру двигать уже нельзя, то зажимаете Ctrl+Alt и мышкой нажимаете в том месте (по верхней фигуре), где вы точно знаете что нижний объект лежит. В результате чего он выделяется и дальше вы его либо трансформируете, либо отодвигаете, либо вытаскиваете на передний план Shift+PageUp.

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

Рис. 7

Начинаем обводить верхнюю дугу с левого острого угла, и пойдем по направлению к крайнему правому, т.е. в ПРАВОМ НАПРАВЛЕНИИ. Выбираем инструмент кривых Безье (рис. 8), максимально приближаем наш логотип, чтобы он был виден весь, ставим первую точку в самом уголке и НЕ ОТПУСКАЯ клавишу мышки тянем направляющую в правую сторону. НЕМНОГО тянем! Смысл направляющих – они отвечают во-первых за направление изгиба кривой, и во-вторых – длина направляющей (т.е. как сильно мы ее вытянем) отвечает за СИЛУ ВЫГИБА кривой. Но, в первой точке мы не знаем, как поведет себя кривая дальше, как она «ляжет» на обводимый контур, поэтому, направляющую мы вытягиваем совсем немножко. В любом случае, c первого раза изгиб кривой, прилегающей к первой точке воспроизвести удается мало когда. Поэтому надо будет возвращаться к этой точке, чтобы окончательно отредактировать кривую. Когда вытянули направляющую линию, отпускаем мышку и идем к следующей точке. Заметьте, мы пока находимся в «режиме рисования».

Рис. 8

Рисуем дальше. Вторую точку выбираем по принципу – смотрим где на нашей фигуре точка максимального изгиба у нашей верхней дуги. И в дальнейшем, этот принцип тоже работает. Т.е., если посмотрим на рис. 9 для второй нашей точки я выбрал точку максимального изгиба нашей верхней дуги (самая верхушка «горба»). Можно конечно рисовать и «маленькими шагами», ставив дополнительные точки (на рис. 9 они обозначены синим цветом). Но это не имеет смысла, поскольку для нашей кривой мы вполне обойдемся и без них. И они только запутают, а точнее сделают нашу работу по «точному» воспроизведению кривой более сложной, поскольку каждая такая дополнительная точка вносит свою лепту в кривизну дуги. Поэтому совет на будущее — старайтесь при рисовании обходиться по возможности минимальным количеством точек. Ну, вы это сами поймете, придет с опытом. Итак, точку максимального выгиба определили.

Рис. 9

А теперь еще один нюанс, необходимый для ПРАВИЛЬНОГО понимания и работы с кривыми Безье, не поняв который можно запутаться и забросить изучение этого инструмента. Итак, как мы условились в самом начале, мы рисуем верхнюю дугу СЛЕВА-НАПРАВО, т.е. мы поставили первую точку в самом крайнем левом остром угле, дальше ставим вторую точку правее, в максимальном изгибе и закончим с нашей верхней дугой в крайнем правом ОСТРОМ угле. Т.е., ОБЩЕЕ НАПРАВЛЕНИЕ РИСОВАНИЯ – ВПРАВО (рис. 10). Теперь, возвращаемся ко второй нашей точке. К каждой точке на кривой можно провести касательную линию, которая будет в этой точке касаться самой кривой (рис. 10).

Рис. 10

Поэтому, когда мы продолжаем рисовать кривую ставим вторую точку в точке максимума и:

Не отпуская кнопку мыши вытягиваем направляющие одновременно:

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

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

Рис. 11

Поэтому помимо того, что мы тянем направляющую ВПРАВО, мы следим также чтобы линия которая образуется этими нашими направляющими КАСАЛАСЬ в нашей точке дуги, и ни в коем случае не «залазила внутрь» фигуры рис. 12. Там же, на этом рисунке, показано почему же именно следует тянуть именно вправо, а не влево, вниз. Смотрите, если мы рисуем вторую точку и будем тянуть ВЛЕВО или ВНИЗ, т.е. уже пойдем в обратном направлении, у нас будущая кривая начнет выгибаться совершенно в другую сторону, что нам вообще не нужно рис. 12.

Рис. 12

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

1. Импортируем картинку, которую собираемся обрисовать.

2. Назначаем ей прозрачность (70-80% достаточно)

3. Закрепляем картинку чтобы не ёрзала (выбираем стрелкой, правая клавиша мышки, Lock Object).

4. Начинаем рисовать с ОСТРОГО угла (в нашем случае с левого). Выбираем инструмент Безье, нажимаем мышкой в первой точке и НЕМНОЖКО вытягиваем направляющую по касательной к дуге в этой точке и в ПРАВОМ направлении (поскольку будем рисовать слева и закончим в правой точке).

5. Отпускаем мышку, нажимаем во второй точке и не отпуская кнопку мыши вытягиваем направляющую ВПРАВО и ПО КАСАТЕЛЬНОЙ к дуге в этой точке. И т.д. к каждой точке.

6. Заканчиваем рисовать в правой точке, т.е. точке с ОСТРЫМ УГЛОМ. Чтобы закончить рисовать, отпускаем клавишу мышки и переключаемся на инструмент стрелка (я обычно нажимаю на пробел Space, чтобы переключиться на инструмент стрелка, снимаю выделение с только что нарисованной кривой, нажав в любом свободном месте, дальше выбираю снова инструмент кривые Безье и рисую следующий участок. Заметьте, если вы не снимите выделения с кривой как я только что написал, корел будет думать что вы еще продолжаете рисовать кривую, и поставив следующую точку, вы увидите что дуга начнет выгибаться не совсем адекватно).

Рис. 13

И еще один момент, который я немного пропустил. Когда рисуем вторую, третью и т.д. точки и вытягиваем направляющие, получаемая дуга не совсем точно воспроизводит оригинальную линию. Поясняю на 2-й точке (рис. 14). Когда мы вытягиваем направляющую мы параллельно глазами следим как «ложится» наша линия ВБЛИЗИ нашей точки и двигая кончик направляющий, поворачивая его мы должны добиться такого момента, когда ПРИЛЕГАЮЩАЯ кривая относительно точно будет воспроизводить ПРИЛЕГАЮЩИЕ ОБЛАСТИ, а то что у нас кривая не воспроизводит области лежащие немного дальше нас не должно волновать на этом этапе. Когда мы поставим третью (последнюю точку) тогда мы вернемся к нашей кривой и закончим с ней, окончательно подредактировав ее с максимальной точностью (рис. 14). Повторюсь, не стоит расстраиваться если кривая линия сразу не ложится как нам хотелось бы. «Окончательная ТОЧНАЯ подгонка» всегда делается в конце.

Рис. 14

Итак, на данном этапе мы имеем следующую ситуацию – рис. 15.

Рис. 15

Теперь, мы окончательно подгоним нашу кривую. Для этого, переходим в режим редактирования кривой. Два способа: выделяем стрелкой нашу кривую и выбираем инструмент редактирования Shape Tool на панели инструментов (рис. 16), либо же, более быстрый способ, быстро два раза щелкаем мышкой по нашей линии. Эффект один и тот же. В режиме редактирования, наша кривая принимает пунктирный вид (что собственно и говорит нам о том, что мы находимся в режиме редактирования). Подводим курсор мышки к нашей первой точке и когда точка визуально «увеличится» в размерах (это говорит нам о том, что мы можем ее «захватить») нажимаем мышкой на ней. Она станет черной и увеличенной – это говорит нам о том, что мы сейчас работаем именно с этой точкой рис. 16. Помимо этого у нашей точки и у соседней появятся их направляющие. Эти направляющие как раз и влияют на кривизну нашего участка кривой, лежащего между ними.

Рис. 16

Хватаемся за кончик направляющей и тянем ее немного вправо, ну и по ходу можем немного ее поворачивать вниз-вверх, параллельно смотрим чтобы наша дуга легла точно вдоль верхней дуги нашего оригинального логотипа. Если верхняя часть дуги немного сместилась, ничего страшного, сейчас главное максимально точно подогнать участок кривой, прилегающей к нашей первой точке. Если верхняя часть дуги, повторяюсь, сместилась, то после того как подогнали участок у первой точки, в этом же режиме редактирования, выделяем вторую точку и с помощью ее направляющих добиваемся точности уже участка, прилегающего к этой второй точке. Можно также ухватится за саму точку и немного ее пододвинуть вдоль кривой, ближе или дальше относительно пика нашего «горба». Здесь смотрите сами, как у вас получается (рис. 16). Единственное что хотелось бы отметить, поскольку во второй точке у нас угол тупой, когда мы двигаем одну направляющую, вторая тоже реагирует на это. Поэтому, возле второй точки (на пике) мы сразу следим за обеими частями по обе стороны от нашей точки, чтобы наша кривая ложилась точно. Дальше, если произошел снова сдвиг, допустим вначале, ничего страшного, выделяем снова первую точку и с помощью ее направляющей (либо же немного подвигав саму точку) добиваемся точности наложения нашей кривой поверх верхней дуги логотипа.

Все, левая часть дуги у меня практически совпала, теперь добиваю правую часть. Для этого работаю со второй точкой и третьей: с помощью направляющих делаю так, чтобы кривая ложилась точно, плюс, еще могу немного подвигать сами точки, если кривая никак не хочет ложится рис. 17. Также, ничего страшного если участок дуги между точками 1 и 2 тоже немного «поплыл». Что мешает возвратиться к точке 1 и немного ее подправить?

Рис. 17

Все, верхняя дуга точно совпала. Теперь, обрисовываем два нижних участка кривых. Если вы забыли почему именно так, повторяю. Мы обрисовываем наш логотип по частям – каждая часть кривой между острыми углами. Это нам облегчит работу в будущем, потому что если мы будем непрерывно вести кривую, то по умолчанию, корел будет думать что мы рисуем тупой угол, и если после того как поставим третью точку сразу продолжим рисовать и поставим следующую точку (на рис.18 это точка 5) у нас правый кончик будет «тупым» и форма нашей кривой будет не совсем адекватной. Поэтому нам легче сначала обрисовать кривую «участками» заканчивая в острых углах, а потом мы их просто соединим вместе. Приведу лишь картинки как это сделал я. Не забываем про принцип:

1. Рисуем по направлению движения – т.е. если начали рисовать справа налево, то направляющие тянем именно в «левом» направлении.

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

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

Рис. 18. Как видно из рис. чтобы обрисовать нижнюю дугу мне хватило всего 3-х точек. Точку 5 я поставил в самом пике выгнутого участка. Первая «прикидка» кривой у меня естественно не совпала (синяя дуга на рис.), поэтому я вошел в режим редактирования и окончательно подогнал линию.

Рис. 18

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

Общее направление все равно было справа-налево. Поэтому и направляющие вытягивал по касательной примерно в таком же направлении.

Рис. 19

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

Рис. 20

Теперь, я имею готовые части моего обрисованного логотипа (рис. 21).

Рис. 21

Все эти линии мне надо соединить друг с другом, чтобы они были частью одной фигуры (пока они существуют как отдельные объекты – обычные кривые линии). Для этого, инструментом стрелка я выделяю их все: либо захватывая полностью большой областью (как выделяю файлы например на рабочем столе. При таком выделении не стоит боятся, что мы «захватим» нашу оригинальную картинку с логотипом, потому что мы ее закрепили, и она в наших манипуляциях не участвует), либо же выделяя их по очереди – выделяю первую кривую, зажимаю Shift и добавляю в группу следующие две кривые по очереди. После того как выделил, я их объединяю в одну фигуру командой Combine: Arrange – Combine (Ctrl+L). Теперь, мои 3 линии являются частью одной фигуры. Я выделяю ее и закрашиваю любым цветом, например желтым. Но! Фигура осталась на месте, точнее ее цвет не поменялся. Правильно. Это потому, что хотя это у нас уже и готовая фигура, но у нас остались «точки разрыва» в острых углах, потому что мы рисовали по частям, и в этих точках линии не соединены, поэтому корел «не понимает» какую замкнутую область надо закрашивать. И сейчас мы это исправим. А закрасили мы фигуру для того, чтобы когда мы соединим последнюю точку – фигура закрасится полностью, это нам даст знак, что у нас нет больше точек разрыва и работу можно считать законченной, фигура получилась замкнутой (рис. 22).

Рис. 22

Как мы помним у нас всего 3 точки разрыва – в местах где у нас кончики наших кривых. Поэтому, приближаем максимально близко первый кончик, входим в режим редактирования (два раза быстро щелкаем на любой нашей линии, поскольку это уже одна фигура), хватаемся за один кончик и тащим его к другому. Когда они совпадут у курсора мышки рядом должна появится «согнутая стрелка», указывающая на то, что можно отпускать мышку, мы «попали в точку» — концы соединятся рис. 23. Данную операцию делаем со всеми точками разрыва. После того, как замкнули последнюю точку разрыва, фигура окрашивается в желтый цвет, говоря о том, что все, разрывов больше нет, и «выискивать» другие точки-разрыва нам не надо, фигура стала «замкнутой» (поэтому она и залилась желтым цветом).

Рис. 23

Ну и напоследок, джентльменский минимум который полезно будет знать при работе с кривыми в режиме редактирования (рис. 24). В принципе это можно попробовать методом научного тыка.

Рис. 24

Небольшое пояснение:

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

Сделать участок кривой прямым – необходимо выделить точку и нажать на кнопку. Здесь учитывается «направление рисования». Т.е. если мы рисовали скажем слева-направо, и выделили в режиме редактирования точку, то прямым будет делаться участок между нашей точкой и точкой ДО нее, т.е. предыдущей.

Сделать точку разрыва – выделяем точку и нажимаем на клавишу. Визуально как бы ничего не изменилось. Но, на самом деле в данной точке «точек» стало две. Поэтому, чтобы увидеть что у нас действительно есть разрыв ухватитесь за точку в этом месте (за какую ухватитесь) и просто отведите ее немного в сторону. Бывает, что надо сделать точку разрыва, но чтобы кривая оставалась на своем месте, т.е. никуда не отводя ее в сторону. В этом случае можно сделать так. Создаем рядом с точкой, где будем делать разрыв, еще две дополнительные точки – одну ДО, вторую ПОСЛЕ. Т.е. наша точка будет лежать между ними. Делаем нашу точку – точкой разрыва и после этого удаляем ее двойным нажатием по обеим кончикам (рис. 25).

Рис. 25

Еще, с помощью инструмента Безье можно рисовать прямые ломаные линии. Просто выбираете инструмент и нажимаете в нужных точках по очереди, единственное — без вытягивания направляющих, и получаете нужную фигуру. Если в процессе рисования зажать Ctrl, то линия будет проводится строго либо вертикально, либо горизонтально, либо под углами 30, 45, 60 градусов (рис. ниже, ситуация 1).

Также, возможна ситуация, когда в обрисовываемом логотипе (или просто картинке) прямые линии переходят в кривые, и наоборот. Например, посмотрите на рис. ниже (ситуация 2). Я начал обрисовывать сверху вниз, сначала просто потыкав инструментом Безье, тем самым сделав на участках 1 и 2 прямые линии, а затем, чтобы на участке 3 получить кривую, в четвертой точке начал вытягивать направляющие. Если наоборот, сначала идет кривая линия, а потом прямая, то сначала рисуем как получится (ситуация 3 на рис., серая линия — как получилось сначала), потом входим в режим редактирования кривой, выделяем точку 3, жмем кнопку «спрямить кривую», выделяем точку 2, делаем эту вершину ОСТРЫМ УГЛОМ и с помощью его направляющих, подправляем кривую между точками 1 и 2.

Комбинирование при рисовании прямых и кривых линий.

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

Сложение и пересечение проблем не должно вызывать. Во всех случаях фигуры должны быть выделены. Сложение — делает одну фигуру из двух, оригинальные фигуры сливаются друг с другом. Пересечение — создает объект на пересечении двух фигур. Оригинальные фигуры остаются без изменения. Немного по вычитанию. Посмотрим на рис. 26. Если нам нужно отрезать кругом от квадрата, то квадрат должен быть выделен В ПОСЛЕДНЮЮ ОЧЕРЕДЬ – выделяем сначала круг, затем удерживая Shift выделяем ПОСЛЕДНИМ квадрат и дальше жмем «вычитание». Если же наоборот, надо обрезать КРУГ, СНАЧАЛА выделяем квадрат, удерживаем Shift, выделяем круг В ПОСЛЕДНЮЮ ОЧЕРЕДЬ и жмем «вычитание».

Рис. 26

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

Домашнее задание (zip, 600 Kb)

видео-иллюстрация первой части урока (zip, 3.5 Mb)

п.с. 1 Еще одна операция которую необходимо знать — операция обратная Комбинированию — Разбить объект на части. Например, в домашнем задании надо будет обвести логотип Инкомбанка (см. рис.). Мы обводим по частям: сначала обведем и получим левый замкнутый элемент, а затем правый. Т.е. они у нас существуют как два отдельных объекта. Но, поскольку в логотипе это все-таки считается как один элемент, нам эти две части нужно скомбинировать, чтобы получилась одна фигура. Выделяем обе части и Arrange — Combine (Ctrl+L). Главное в таких случаях следить за тем, чтобы эти две части НЕ ПЕРЕСЕКАЛИСЬ друг с другом, иначе результат комбинирования будет непредсказуем.

Но, если вдруг нам понадобится снова разделить наш значок на две части, в этом случае надо выполнить обратную операцию — Разбить кривую на части: выделяем значок и Arrange — Break Curve Apart (Ctrl+K).

Операции комбинирования и разбивки на части.

Часть вторая. Скоростное такси.

А теперь, после всего того, что вы узнали, можно обрисовать все что захотите. Напоминаю общую схему:

1. Импортируем картинку.
2. Добавляем ей прозрачность.
3. Закрепляем.
4. Обрисовываем с помощью кривых Безье. Стараемся обрисовывать частями — рисуем кривые линии между острыми углами на кривой.
5. Соединяем кривые в один объект (Комбинируем: Arrange – Combine или Ctrl+L) и закрашиваем объект в какой-нибудь цвет (закрашиваем чисто условно для себя, в качестве подсказки, чтобы когда соединим последние точки разрыва, фигура подкрасилась, говоря нам о том, что все, она замкнулась, и больше искать точек разрыва не надо. Если фигура еще не закрасилась, значит вы соединили не все точки разрыва. Надо искать и соединять).
6. Соединяем «точки разрыва» чтобы получить замкнутую фигуру.

Вот что у меня получилось. Я сделал скриншот из игры Need For Speed: Most Wanted и обрисовал автомобиль.

Скриншот из игры Need For Speed: Most Wanted

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

Рис. 27. Обрисовываю по контуру все объекты имеющие четко-выраженную границу. Рисую частями — если есть острый угол, дугу рисую между ними, а потом комбинирую в одну фигуру все линии и соединяю «точки разрыва». Рисуйте за один раз один отдельный объект и СРАЗУ соединяйте точки разрыва для получения замкнутой фигуры, чтобы в будущем не запутаться. Например, в самом начале я обрисовал общий контур автомобиля, скомбинировал все кривые в одну фигуру, залил цветом, соединил точки разрыва и когда убедился что контур замкнулся (подкрасился цветом, потом я заливку убрал чтобы видеть остальные части машины) только после этого приступил к рисованию следующего элемента: стекла, зеркала, фары и т.д.

Рис. 27

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

Рис. 28

Для придания «объема» я использовал обычный инструмент линейного градиента (для фар — круговой градиент). Заднее колесо я получил из переднего, сдублировав его и просто немного уменьшив и сжав по горизонтали (рис. 29).

Рис. 29

Дальше я немного пофантазировал, и решил что тупо обведенная картинка меня не очень прикалывает, поэтому я сделал полоску из чередующихся черных квадратиков, и с помощью операции «перспектива» подогнал эту полоску на капот и боковушку машины (рис. 30)…..

Рис. 30

….и перекрасил ее в желтый цвет. «Если вы не успеваете в аэропорт, на вокзал или на свидание — суперскоростное такси к вашим услугам!»:

Рис. 31

Поколдовав немного с полученной картинкой с помощью фотошопа я сделал презентационное изображение к этому уроку для Render.ru:

Рис. 32

п.с. 2. Если вы заметили по картинкам автомобиля, для придания объема я использовал градиент, например от желтого цвета к темно-желтому. В этом случае, если нужно получить оттенок какого-либо цвета быстро (см. рис. 33), например есть стандартный красный, а нам нужен цвет потемней, но этого цвета нет в цветовой палитре, в этом случае, мы выделяем объект, который хотим закрасить, жмем мышкой на красный квадратик цвета и удерживаем мышку нажатой в течение 1-2 секунд. Появляется окош

Кривые Безье — это… Что такое Кривые Безье?

Кривы́е Безье́ были разработаны в 60-х годах XX века независимо друг от друга Пьером Безье (Bézier) из автомобилестроительной компании «Рено» и Полем де Кастелье (de Casteljau) из компании «Ситроен», где применялись для проектирования кузовов автомобилей.

Несмотря на то, что открытие де Кастелье было сделано несколько ранее Безье (1959), его исследования не публиковались и скрывались компанией как производственная тайна до конца 1960-х.

Впервые кривые были представлены широкой публике в 1962 году французским инженером Пьером Безье, который, разработав их независимо от де Кастелье, использовал их для компьютерного проектирования автомобильных кузовов. Кривые были названы именем Безье, а именем де Кастелье назван разработанный им рекурсивный способ определения кривых (алгоритм де Кастелье).

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

Определение

Кривая Безье — параметрическая кривая, задаваемая выражением

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

, где n — степень полинома, i — порядковый номер опорной вершины

Виды кривых Безье

Линейные кривые

При n = 1 кривая представляет собой отрезок прямой линии, опорные точки P0 и P1 определяют его начало и конец. Кривая задаётся уравнением:

.

Квадратичные кривые

Квадратичная кривая Безье (n = 2) задаётся 3-мя опорными точками: P0, P1 и P2.

.

Квадратичные кривые Безье в составе сплайнов используются для описания формы символов в шрифтах SWF файлах.

Кубические кривые

В параметрической форме кубическая кривая Безье (n = 3) описывается следующим уравнением:

.

Кубическая кривая Безье

Четыре опорные точки P0, P1, P2 и P3, заданные в 2-х или 3-мерном пространстве определяют форму кривой.

Линия берёт начало из точки P0 направляясь к P1 и заканчивается в точке P3 подходя к ней со стороны P2. То есть кривая не проходит через точки P1 и P2, они используются для указания её направления. Длина отрезка между P0 и P1 определяет, как скоро кривая повернёт к P3.

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

,

где называется базисной матрицей Безье:

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

Построение кривых Безье

Линейные кривые

Параметр t в функции, описывающей линейный случай кривой Безье, определяет где именно на расстоянии от P0 до P1 находится B(t). Например, при t = 0,25 значение функции B(t) соответствует четверти расстояния между точками P0 и P1. Параметр t изменяется от 0 до 1, а B(t) описывает отрезок прямой между точками P0 и P1.

Квадратичные кривые

Для построения квадратичных кривых Безье требуется выделение двух промежуточных точек Q0 и Q1 из условия чтобы параметр t изменялся от 0 до 1:

  • Точка Q0 изменяется от P0 до P1 и описывает линейную кривую Безье.
  • Точка Q1 изменяется от P1 до P2 и также описывает линейную кривую Безье.
  • Точка B изменяется от Q0 до Q1 и описывает квадратичную кривую Безье.

Построение квадратичной кривой Безье

Анимация t: [0; 1]

Кривые высших степеней

Для построения кривых высших порядков соответственно требуется и больше промежуточных точек. Для кубической кривой это промежуточные точки Q0, Q1 и Q2, описывающие линейные кривые, а также точки R0 и R1, которые описывают квадратичные кривые: более простое уравнение p0q0/p0q1=q1p1/p1p2=bq0/q1q0

Построение кубической кривой Безье

Анимация t: [0; 1]

Для кривых четвёртой степени это будут точки Q0, Q1, Q2 и Q3, описывающие линейные кривые, R0, R1 и R2, которые описывают квадратичные кривые, а также точки S0 и S1, описывающие кубические кривые Безье:

Построение кривой Безье 4-й степени

Анимация t: [0; 1]

Применение в компьютерной графике

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

Наибольшее значение имеют кривые Безье второй и третьей степеней (квадратичные и кубические). Кривые высших степеней при обработке требуют большего объёма вычислений и для практических целей используются реже. Для построения сложных по форме линий отдельные кривые Безье могут быть последовательно соединены друг с другом в сплайн Безье. Для того, чтобы обеспечить гладкость линии в месте соединения двух кривых, смежные опорные точки обеих кривых должны лежать на одной линии. В программах векторной графики наподобие Adobe Illustrator или path).

Преобразование квадратичных кривых Безье в кубические

Квадратичная кривая Безье с координатами преобразовывается в кубическую кривую Безье с координатами .

Литература

  • Роджерс Д., Адамс Дж. Математические основы машинной графики. — М.: Мир, 2001.

См. также

Wikimedia Foundation. 2010.

Сплайн в Автокад (кривая Безье), как преобразовать полилинию в сплайн AutoCAD

[Рисование в Автокад] Построение сплайна AutoCAD


Команда рисования в AutoCAD
Сплайн
Определение
Сплайн в Автокад — гладкая кривая Безье, которая по умолчанию проходит через заданные точки или отклоняется от них в рамках допуска.
Сплайн AutoCAD (сложное) — это кусочно-гладкая полиномиальная кривая НУРБС (NURBS — Non-Uniform Rational Bezier Spline) — неоднородный рациональный сплайн Безьекривая Безье (Bezier curve), как частный случай В-сплайна (B-spline), проходящая вблизи набора управляющих точек.
Инструмент
Инструмент Автокад Сплайн — команда, позволяющая строить гладкие кривые, проходящие через указанные точки или вблизи набора определяющих точек, а также определяемых вершинами в допуске формы и расположения.
Команда
Сплайн
Объект
Сплайн

Свойства сплайна AutoCAD

Существует несколько типов сплайнов, но все они обладают аналогичными свойствами.

  1. Сплайн в AutoCAD разделен на сегменты (подобно полилинии), которые называются «узлами». Если узлы (сегменты) неравномерно распределены вдоль сплайна, то сплайн в Автокад называется неоднородным B-сплайном.
  2. Для придания формы сплайну AutoCAD используются «определяющие точки» и «управляющие вершины». Определяющие точки по умолчанию лежат на линии сплайна, а управляющие вершины — вне ее.
  3. Порядок сплайна Автокад определяет, сколько раз его кривизна может меняться в пределах одного сегмента. Кривая первого порядка — прямая линия. Кривая второго порядка имеет постоянную кривизну (дуга). По умолчанию сплайн в Автокад представляет собой сочетание сегментов кривых полиномов 3-степени (также называемых «кубическими кривыми» — могут иметь одно изменение кривизны на сегмент. Кривые четвертого порядка — два изменения и т.д, вы можете довести его значение до 10.

Команда Сплайн

Отвечает за построение сплайна в AutoCAD команда Сплайн. Вызвать которую можно (начать построение сплайна):

  1. Создать сплайн в Автокад можно из строки меню пункт Рисование — строка Сплайн в раскрывающемся списке две строки с возможностью выбора способов построения: «сплайн Автокад по определяющим точкам» и «сплайн по управляющим вершинам».
  2. Построить сплайн Автокад вы можете из вкладки «Главная» ленты инструментов — в группе инструментов «Рисование» — две кнопки с возможностью выбора способов построения: «сплайн по определяющим точкам» и «сплайн Автокад по управляющим вершинам»;
  3. Нарисовать сплайн также можно из классической панели инструментов «Рисование» — кнопка Автокад Сплайн;
  4. Начертить его вы можете, прописав наименование команды в командной строке «Сплайн».

Построение сплайна AutoCAD по определяющим точкам

Вызываем в Автокад команду Сплайн из командной строки. В командной строке появится запрос:

Первая точка или [Способ/Узлы/Объект]:

В командной строке также отображаются текущие настройки сплайна Автокад: «Способ=Определяющие», «Узлы=Хорда». Укажем первую его определяющую точку. По умолчанию отобразится штриховая линия желтого цвета, которая будет следовать от первой определяющей точки до курсора-перекрестия. Программа выдаст запрос:

Следующая точка или [Касание в начале/Допуск]:

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

Следующая точка или [Касание в конце/Допуск/Отменить]:

Зададим следующую определяющую точку сплайна. Программа отобразит запрос:

Следующая точка или [Касание в конце/Допуск/Отменить/Замкнуть]:

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

Можете выбрать опцию Допуск, которая позволяет изменить точность обводки определяющих точек сплайном (не распространяется на крайние точки). Значение допуска 0 строит в Автокад сплайновую кривую, которая проходит точно через все опорные точки. Значение допуска больше 0, строит сплайновую кривую, которая проходит поблизости от опорных точек в пределах допуска.

Опция Касание в конце позволяет задать условие касания в конечной точке сплайна.

Для завершения построения сплайна в Автокад нажмите «Enter».

Как построить (сделать) сплайн в Автокад различными математическими способами

Сплайны в AutoCAD строятся математически точно. Построение сплайна по определяющим точкам содержит опцию «Узлы», которая позволяет выбирать математические способы построения сплайна.

Математические способы построения сплайна AutoCAD определяют, как объединяются кривые компонентов между соседними определяющими точками на сплайне.

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

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

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

Построение сплайна AutoCAD по управляющим вершинам

Вызываем команду Сплайн в Автокад, затем выбираем опцию «Способ — УВ/CV». В командной строке отобразится запрос:

Задайте первую точку или [Способ/Порядок/Объект]:

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

Следующая точка:

То есть нам необходимо указать координаты первой управляющей вершины сплайна Автокад, т.к. первая указанная точка таковой не является. При использовании метода построения сплайна по управляющим вершинам первая и конечная точки сплайна задаются определяющими точками. Зададим управляющую вершину сплайна в Автокад щелчком мыши на чертеже. Как только мы укажем управляющую вершину, отобразится эскиз сплайна, который будет тянуться от первой определяющей точки до курсора-перекрестия. Штриховая линия желтого цвета будет тянуться от управляющей вершины до курсора-перекрестия. Отобразится штриховая линия белого цвета, которая начинается в первой определяющей точке сплайна и проходит через указанную управляющую вершину сплайна до курсора перекрестия. Программа выдаст следующий запрос:

Следующая точка или [Отменить]:

Укажем следующую управляющую вершину сплайна Автокад щелчком мыши на чертеже. Штриховая линия желтого цвета будет тянуться от последней заданной управляющей вершины сплайна до курсора-перекрестия. Штриховая линия белого цвета будет начинаться в первой определяющей точке сплайна и проходить через указанные управляющие вершины до курсора перекрестия. Эскиз сплайна в Автокад также будет тянуться от первой определяющей точки до курсора перекрестия.

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

В командной строке появится запрос:

Следующая точка или [Замкнуть/Отменить]:

Укажем конечную определяющую точку сплайна щелчком мыши на чертеже. Для завершения команды Автокад Сплайн нажмите «Enter».

Как преобразовать полилинию в сплайн в Автокад

Команда Сплайн в AutoCAD при помощи опции «Объект» позволит преобразовать двухмерную или трехмерную полилинию в сплайн.

Если вы хотите преобразовать полилинию в сплайн AutoCAD без предварительного сглаживания, то выберите опцию «Способ — УВ» (построение сплайна по управляющим вершинам).

Преобразование полилинии в сплайн Автокад по определяющим точкам без предварительного сглаживания невозможно.

Внимание

При преобразовании аппроксимированной полилинии (сглаженная полилиния) в сплайн информация о ширине теряется.

Полезные уроки схожих тематик и рекомендации

Рекомендую ознакомиться с подобными уроками по Автокад:

Читайте и смотрите также:

Курсы, самоучители Автокад:

  1. 2D проектирование.
  2. 3D моделирование.
  3. Начертательная геометрия.
  4. Инженерная графика.
  5. План дома.
  6. Сборочный чертеж цилиндрической зубчатой передачи.
  7. Модель кухни 3D.

Видео «Построение в Автокад сплайнов (Кривых Безье)»

Бесплатные уроки, входящие в полный профессиональный видеокурс по Автокад тут.

Кривая Безье — это… Что такое Кривая Безье?

Кривы́е Безье́ или Кривы́е Бернште́йна-Безье́ были разработаны в 60-х годах XX века независимо друг от друга Пьером Безье (Pierre Bézier) из автомобилестроительной компании «Рено» и Полем де Кастельжо (Paul de Faget de Casteljau) из компании «Ситроен», где применялись для проектирования кузовов автомобилей.

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

Кривая Безье является частным случаем многочленов Бернштейна, описанных Сергеем Натановичем Бернштейном в 1912 году.

Впервые кривые были представлены широкой публике в 1962 году французским инженером Пьером Безье, который, разработав их независимо от де Кастельжо, использовал их для компьютерного проектирования автомобильных кузовов. Кривые были названы именем Безье, а именем де Кастельжо назван разработанный им рекурсивный способ определения кривых (алгоритм де Кастельжо).

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

Определение

Кривая Безье — параметрическая кривая, задаваемая выражением

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

,

где — число сочетаний из по , где  — степень полинома,  — порядковый номер опорной вершины.

Виды кривых Безье

Линейные кривые

При n = 1 кривая представляет собой отрезок прямой линии, опорные точки P0 и P1 определяют его начало и конец. Кривая задаётся уравнением:

.

Квадратичные кривые

Квадратичная кривая Безье (n = 2) задаётся 3-мя опорными точками: P0, P1 и P2.

.

Квадратичные кривые Безье в составе сплайнов используются для описания формы символов в шрифтах TrueType и в SWF файлах (в SWF также могут использоваться кубические кривые Безье).

Кубические кривые

В параметрической форме кубическая кривая Безье (n = 3) описывается следующим уравнением:

.
Кубическая кривая Безье

Четыре опорные точки P0, P1, P2 и P3, заданные в 2-х или 3-мерном пространстве определяют форму кривой.

Линия берёт начало из точки P0 направляясь к P1 и заканчивается в точке P3 подходя к ней со стороны P2. То есть кривая не проходит через точки P1 и P2, они используются для указания её направления. Длина отрезка между P0 и P1 определяет, как скоро кривая повернёт к P3.

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

,

где называется базисной матрицей Безье:

В современных графических системах и форматах, таких как PostScript (а также основанные на нём форматы Adobe Illustrator и Portable Document Format (PDF)), Scalable Vector Graphics (SVG), Metafont, CorelDraw и GIMP для представления криволинейных форм используются сплайны Безье, составленные из кубических кривых. SVG также позволяет работать со сплайнами Безье 4-й степени[1].

Построение кривых Безье

Линейные кривые

Параметр t в функции, описывающей линейный случай кривой Безье, определяет где именно на расстоянии от P0 до P1 находится B(t). Например, при t = 0,25 значение функции B(t) соответствует четверти расстояния между точками P0 и P1. Параметр t изменяется от 0 до 1, а B(t) описывает отрезок прямой между точками P0 и P1.

Квадратичные кривые

Для построения квадратичных кривых Безье требуется выделение двух промежуточных точек Q0 и Q1 из условия чтобы параметр t изменялся от 0 до 1:

  • Точка Q0 изменяется от P0 до P1 и описывает линейную кривую Безье.
  • Точка Q1 изменяется от P1 до P2 и также описывает линейную кривую Безье.
  • Точка B изменяется от Q0 до Q1 и описывает квадратичную кривую Безье.

Построение квадратичной кривой Безье

Анимация t: [0; 1]

Кривые высших степеней

Для построения кривых высших порядков соответственно требуется и больше промежуточных точек. Для кубической кривой это промежуточные точки Q0, Q1 и Q2, описывающие линейные кривые, а также точки R0 и R1, которые описывают квадратичные кривые: более простое уравнение p0q0/p0q1=q1p1/p1p2=bq0/q1q0

Построение кубической кривой Безье

Анимация t: [0; 1]

Для кривых четвёртой степени это будут точки Q0, Q1, Q2 и Q3, описывающие линейные кривые, R0, R1 и R2, которые описывают квадратичные кривые, а также точки S0 и S1, описывающие кубические кривые Безье:

Построение кривой Безье 4-й степени

Анимация t: [0; 1]

Свойства кривой Безье

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

Применение в компьютерной графике

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

Наибольшее значение имеют кривые Безье второй и третьей степеней (квадратичные и кубические). Кривые высших степеней при обработке требуют большего объёма вычислений и для практических целей используются реже. Для построения сложных по форме линий отдельные кривые Безье могут быть последовательно соединены друг с другом в сплайн Безье. Для того, чтобы обеспечить гладкость линии в месте соединения двух кривых, три смежные опорные точки обеих кривых должны лежать на одной прямой. В программах векторной графики наподобие Adobe Illustrator или Inkscape подобные фрагменты известны под названием «путей» (path).

Преобразование квадратичных кривых Безье в кубические

Квадратичная кривая Безье с координатами преобразовывается в кубическую кривую Безье с координатами .

Ссылки

Литература

  • Роджерс Д., Адамс Дж. Математические основы машинной графики. — М.: Мир, 2001.

См. также

Примечания

Аппроксимация функции с помощью сплайна Безье

Представьте себе такую задачу. Есть N точек на плоскости. Требуется провести в непосредственной близости от них гладкую кривую. Точки эти могут представлять собой экспериментальные данные на графике или координаты, по которым пользователь кликнул мышкой в графическом редакторе. Так вот, одно из решений этой задачи заключается в использовании кривых Безье.

Кривая Безье для N точек задается полином степени (N-1). Вот как выглядит этот полином для для N = 4:

B(t) = (1 — t)3P0 + 3 t (1 — t)2P1 + 3 t2(1 — t) P2 + t3P3, t ∈ [0;1]

Здесь Pi — это наши точки, t — параметр функции, меняя значение которого в диапазоне от 0 до 1, можно получить координаты всех точек кривой Безье. Общий вид функции для произвольного числа точек и очень красивую иллюстрацию к ней можно посмотреть в Википедии.

Приведенную формулу несложно проверить в Excel или OpenOffice:

Хорошо, с четырьмя точками понятно. А что делать, если точек 10 или 10 000? Кривую Безье можно построить для любого числа точек, но вычислять полиномы десятитысячной степени — это мягко говоря грустно. Делают очень просто — разбивают точки на группы по 4 штуки, строят для каждой из них кривую Безье и соединяют полученные сегменты в одну кривую.

Единственная проблема — полученная кривая будет «не очень гладкой» на границах сегментов. Спрашивается — что делать? И снова все оказывается очень просто (хотя ответ в сети хрен найдешь). Допустим, у нас есть шесть точек. Пусть (x3; y3) и (x4; y4) — координаты третьей и четвертой точки соответственно. Вставляем между ними дополнительную точку с координатами x’ = (x3 + x4)/2 и y’ = (y3 + y4)/2, после чего проводим одну кривую через точки 1-4, а вторую — через точки 4-7.

В результате получим одну гладкую кривую для шести точек. Если учесть поведение кривой Безье и то, что точки (x3; y3), (x’; y’) и (x4; y4) лежат на одной прямой, это становится вполне очевидно. Собственно полученная кривая и есть сплайн. Если точек больше шести, их нужно разбить по схеме 3-2-2…2-2-3 и связать полученные группы с помощью дополнительных точек, как описано выше. Последнюю точку можно повторить несколько раз, если множество точек не делится на целое число групп.

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

Кубический сплайн полностью разжеван в Википедии. В отличие от сплайна Безье он интерполирует функцию по нескольким известным точкам, то есть точно проходит через каждую из них. B-сплайн — это более общий случай сплайна Безье.

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

Дополнение: В продолжение темы — Генетические алгоритмы на практике.

Метки: Алгоритмы.

Плагин Кривые Безье -обзор плагина для SketchUp | Бесплатные программы

Плагин Bezier Spline (Кривые Безье), разработан Fredo6 для SketchUcation.com — полезный набор инструментов для создания кривых безье. Программа SketchUp в штатном варианте не имеет такой возможности создать кривые безье, так что этот представленный плагин облегчает работу, предоставляя пользователю палитру из 3 инструментов.

Самый часто используемый востребованный инструмент это «Классическая кривая Безье».Она позволяет устанавливать контрольные точки и таким образом управлять кривой. Таких точек вы можете установить множество раз.
Другой очень полезный инструмент из набора это «Ломаная кривая со скругленными углами». Она позволяет создавать кривые из сегментов в будущем пользователь может скруглять эти узлы
углы между которыми будут закруглены на вами радиус. Большинство представленных инструментов из палитры работают по аналогичному принципу.Отличительные особенности инструментов «Ломаная кривая с круглыми выступами на углах» и «Ломаная кривая с полукруглыми выступами на углах». Эти инструменты позволяют пользователю помещать окружность / полуокружность в углах между сегментами кривой . Добавлена ​​возможность редактирования одной приятной функции.

Для этого предусмотрен специальный инструмент «Редактирование» .Так же радуют инструменты автоматического замыкания кривых: «Замкнуть петлю плавно» (замкнуть петлю плавно) и «Замкнуть петлю с линией» (замкнуть петлю прямой линией).

Два набора только в режиме редактирования кривых. Вообще у плагина много разных возможностей и чтобы все их понять лучше всего самостоятельно поэкспериментировать с ним. Единственный недостаток у этого плагина-создает кривые только в одной плоскости. На момент написания этого обзора плагин Кривые Безье для SketchUp от Fredo6 был бесплатным.

похожих бесплатные программы

Опубликовано: 15.04.2015

Популярные стили мебели Читать далее →

Опубликовано: 04.04.2015

Методы работы в PRO100 Читать далее →

Опубликовано: 04.04.2015

База-мебельщик Читать далее →

Опубликовано: 28.03.2015

Раскладчик лекал для мягкой мебели Читать далее →

Опубликовано: 27.03.2015

Изделие мебельного дизайна Читать далее →

Запись опубликована автором Verba в рубрике Статьи. Добавьте в закладки постоянную ссылку. .

Основные понятия + Видео и Фото

Возможно проектировать в скетчап SketchUp — это бесплатное приложение для 3D моделирования при проектировании домов. Это приложение принадлежит компании Google. Имеет большое количество плагинов и расширений.

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

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

Виды плагинов

  • Как проектировать в скетчап Плагин Bezier Spline — это набор инструментов по созданию кривых Безье. Он облегчает работу, представляя палитру из 13 инструментов.
  • Самым распространенным плагином этого ряда «Классическая кривая Безье». Он дает возможность установить контрольные точки и управлять кривой.
  • «Углы дуги ломаной» это инструмент, позволяющий создавать кривую из прямых сегментов. При этом углы будут закруглены на заданный радиус.
  • Инструмент «Polyline T-Bone Corners» — при проектировании позволяет помещать окружность в углах между сегментами кривой.
  • У плагина Bezier Spline есть очень интересная функция, дающая возможность видоизменять созданные кривые.Для этой возможности в меню есть инструмент «Редактирование».

Помимо всех вышеупомянутых инструментов, установка данного ряда имеет инструменты автоматического замыкания. Это плагин Close Loop Nicely и Close Loop With Line. Последний дает возможность замкнуть петлю прямой линией. Инструменты по замыканию работают только в режиме редактирования.

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

Плагин Weld — это простой и эффективный инструмент для соединения отдельных сегментов в одну общую сложную линию (кривую). Данный процесс очень важен при импортировании чертежей или объектов из других программ (AutoCAD).

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

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

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

Плагин DXF Export применяется для экспорта готовых 3D моделей в формате файлов DXF. Он в основном работает со SketchUp 8 и с AutoCAD 2010. За счет разгруппировки и перегруппировки упрощает модель при проектировании. Среди недостатков данного плагина можно выделить то, что при переносе модели он экспортирует только грани и сегменты. А иногда случается, что еще и меняется ориентация элементов.

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

Плагин «Make Faces » это достойный инструмент для упрощения работы с чертежами и схемами, импортированными из AutoCAD.

Данный плагин при проектировании для придания объёма обводит контуры поверхностей, образуя тем самой плоскости и поверхности. Он самостоятельно создает поверхность из импортированной схемы. Что дает возможность сразу работать с ними.

Из недостатков данного плагина можно добавить то, что он не чётко замыкает грани и формирует поверхность в сложных чертежах.А при формировании поверхностей оставляет не нужные грани, которые усложняют будущую 3D-модель.

Внимание! Для работы с плагином «Make Faces» необходимо сначала установить плагин «Progress Bar».

Плагин «Round Corner» 2.3а это инструмент по скруглению углов в готовых моделях в SketchUp.

По своей работе плагин содержит три возможности:

  • «Круглые углы»;
  • «Острые углы» — скругляет углы, находящиеся в разных плоскостях;
  • «Скошенные грани и углы».

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

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

Плагин Joint Push Pull применяется для вдавливания или выдавливания элементов на сложных или неровных поверхностях, окружностях.

Плагин содержит в себе:

  • — Joint Push Pull — он позволяет вытягивать или вдавливать, соблюдая геометрические пропорции исходной поверхности. В итоге работы внешнего элемента созданного элемента будет повторять геометрические параметры;
  • — Vector Push Pull — вытягивает выбранный элемент по заданным исходным параметрам, сохраняя при этом исходную геометрию поверхности;
  • — Normal Push Pull — вытягивает сложную поверхность и вычисляет все ее сегменты.

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

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

Плагин «Pen Tool +» идет как функциональное приложение к инструменту Перо (Pen Tool) и содержит ряд дополнительных инструментов.

Версия 1.4 плагина «Pen Tool +» содержит такие функции как:

  • Soft Draw — дает возможность создавать мягкие, сглаженные линии. Функционирует по принципу Ластик (с клавишей Ctrl) для сглаживания поверхностей. Для этого достаточно обвести уже исходные линии;
  • Hide Draw — инструмент позволяет создать скрытые линии, которые не видны при выключенной функции отображения скрытой геометрии;
  • Guide Draw — проектирование направляющих линий;
  • Weld Draw — помогает планировать связанные линии;
  • Edge Draw — позволяет набросать объект схематично, без поверхностей.Создаёт грани модели без образования поверхностей;
  • Point Draw — проектирует опорные точки.

Плагин «Pen Tool +» это отличный инструмент для знающих пользователей SketchUp, позволяющий ускорить процесс проектирования.

.
Автор записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *