Неявная кривая - Implicit curve

Овалы кассини:
(1) a = 1.1, c = 1 (см. Выше),
(2) a = c = 1 (в центре),
(3) a = 1, c = 1,05 (ниже)
Неявная кривая:
Неявная кривая в качестве кривые уровня поверхности

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

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

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

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

Примеры неявных кривых включают:

  1. а линия:
  2. а круг:
  3. в полукубическая парабола:
  4. Кассини овалы (см. диаграмму),
  5. (см. диаграмму).

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

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

Неявная кривая с уравнением можно рассматривать как кривая уровня уровня 0 поверхности (см. третью схему).

Наклон и кривизна

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

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

Касательный и нормальный вектор

Точка кривой является обычный если первые частные производные и не оба равны 0.

Уравнение касательная линия в регулярной точке является

таким образом, наклон касательной и, следовательно, наклон кривой в этой точке, равен

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

Вектор нормали к кривой в точке задается формулой

(здесь записано как вектор-строка).

Кривизна

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

.[1]

Вывод формул

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

и

(где аргументы в правой части второй формулы опущены для удобства чтения).

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

(касательная)
(кривизна).

Преимущества и недостатки неявных кривых

Недостаток

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

Преимущества

  1. Неявные представления облегчают вычисление точек пересечения: если одна кривая представлена ​​неявно, а другая параметрически, для вычисления точек пересечения требуется только простая (1-мерная) итерация Ньютона, что противоречит случаям неявно-неявный и параметрическо-параметрический (видеть Пересечение ).
  2. Неявное представление дает возможность разделять точки не на кривой знаком . Это может быть полезно, например, при применении метод ложной позиции вместо итерации Ньютона.
  3. Легко создавать кривые, которые почти геометрически подобный к заданной неявной кривой просто добавив небольшое число: (см. раздел # Гладкие приближения ).

Приложения неявных кривых

Гладкая аппроксимация выпуклого многоугольника
Плавное приближение 1) одной половины круга, 2) пересечения двух окружностей

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

Гладкие приближения

Выпуклые многоугольники

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

с подходящим малым параметром является гладкой (дифференцируемой) аппроксимацией многоугольника, например кривые

за

содержат гладкие аппроксимации многоугольника с 5 ребрами (см. диаграмму).

Пары линий

В случае двух строк

один получает

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

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

Другие

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

(произведение круга и оси x) дает гладкие аппроксимации одной половины круга (см. рисунок), и

(произведение двух окружностей) дает гладкую аппроксимацию пересечения двух окружностей (см. диаграмму).

Кривые наложения

Кривая смешения (красная) двух кругов

В CAD один использует неявные кривые для генерации кривые смешения,[2][3] которые представляют собой специальные кривые, устанавливающие плавный переход между двумя заданными кривыми. Например,

генерирует кривые наложения между двумя кругами

Метод гарантирует непрерывность касательных и кривизны в точках контакта (см. Диаграмму). Две линии

определить точки соприкосновения в кругах. Параметр является расчетным параметром. На диаграмме .

Эквипотенциальные кривые двух точечных зарядов

Эквипотенциальные кривые двух точечных зарядов в синих точках

Эквипотенциальные кривые двух равных точечные сборы в точках можно представить уравнением

Кривые похожи на Кассини овалы, но они не такие кривые.

Визуализация неявной кривой

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

  1. определение первой точки кривой до заданной начальной точки в окрестности кривой,
  2. определение точки кривой, начиная с известной точки кривой.

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

Точечный алгоритм

Для решения обеих задач, упомянутых выше, необходимо наличие компьютерной программы (которую мы будем называть ), который при задании точки возле неявной кривой находит точку это точно на кривой:

(P1) для начальной точки
(P2) повторение
( Шаг Ньютона для функции )
(P3) до того как расстояние между точками достаточно мала.
(P4) точка кривой рядом с начальной точкой .

Алгоритм отслеживания

к алгоритму трассировки: начальные точки зеленые

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

(Т1) выбирает подходящую начальную точку в непосредственной близости от кривой
(Т2) определяет первую точку кривой используя программу
(Т3) определяет касательную (см. выше), выбирает начальную точку на касательной, используя длину шага (см. диаграмму) и определяет вторую точку кривой используя программу .

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

Пример: Иллюстрация растрового алгоритма, примененного к неявной кривой . Кривая (красная) - это то, что пытается нарисовать алгоритм. Точки растра (черные) используются в качестве отправных точек для поиска ближайших точек на кривой (красные кружки). Расстояние между каждой точкой растра увеличено, чтобы показать отдельные точки кривой; для более точной трассировки кривой будет использоваться больше точек растра.[4]

Растровый алгоритм

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

(R1) Создайте сеть точек (растр) в интересующей области плоскости x-y.
(R2) За каждую точку в растре запустите точечный алгоритм начиная с P, затем отметьте его выход.

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

Неявные пространственные кривые

Любой пространственная кривая который определяется двумя уравнениями

называется неявная пространственная кривая.

Точка кривой называется обычный если перекрестное произведение градиентов и не является на этой точке:

иначе это называется единственное число. Вектор это касательный вектор кривой в точке

Кривая пересечения сферы и цилиндра

Примеры:

это линия.

- плоское сечение сферы, следовательно, окружность.

представляет собой эллипс (плоское сечение цилиндра).

кривая пересечения сферы и цилиндра.

Для вычисления точек кривой и визуализации неявной пространственной кривой см. Пересечение.

Смотрите также

Рекомендации

  1. ^ Гольдман, Р. (2005). «Формулы кривизны неявных кривых и поверхностей». Компьютерный геометрический дизайн. 22 (7): 632. CiteSeerX  10.1.1.413.3008. Дои:10.1016 / j.cagd.2005.06.005.
  2. ^ К. Хоффманн и Дж. Хопкрофт: Возможный метод смешивания поверхностей и углов в Г. Фарине (ред.) Геометрическое моделирование, SIAM, Philadelphia, стр. 347-365.
  3. ^ Э. Хартманн: Смешивание неявных поверхностей с функциональными шлицами, CAD, Баттерворт-Хайнеманн, Том 22 (8), 1990, стр. 500-507
  4. ^ Г. Таубин: Аппроксимация расстояний для растрирования неявных кривых. Транзакции ACM по графике, Vol. 13, № 1, 1994.
  • Гомес, А., Войкулеску, И., Хорхе, Дж., Вивилл, Б., Гэлбрейт, К.: Неявные кривые и поверхности: математика, структуры данных и алгоритмы, 2009, Springer-Verlag London, ISBN  978-1-84882-405-8
  • C: L: Баджадж, К.М. Hoffmann, R.E. Линч: Трассировка пересечений поверхностей, Комп. С помощью Geom. Дизайн 5 (1988), 285-307.
  • Геометрия и алгоритмы автоматизированного проектирования

внешняя ссылка