Иллюстрированный самоучитель по Mathematica 5

Аналитическая геометрия на плоскости, или 2D-графика. Графические примитивы.

Эллипс и его дуга – примитив Circle

Дугу эллипса с полуосями r х и r у создает графический примитив circle [ {х, у], (r х, r у}] – Здесь {х, у] – координаты центра эллипса. Графический примитив Circle[{х, у], { r х, r у}, {th1, th2}] рисует дугу эллипса, которая получается из соответствующей дуги окружности. Центр эллипса находится в точке с координатами [х, у], r х и r у – полуоси, a (th1, th2] – граничные значения полярного угла для дуги окружности. Чтобы нарисовать эллипс, достаточно вызвать примитив circle ({x, у], (r х, r у}].

Ниже нарисован эллипс, окружность, диаметр которой совпадает с меньшей осью эллипса, и дуга окружности.

Иллюстрированный самоучитель по Mathematica 5 › Мультимедиа: геометрия, графика, кино, звук › Аналитическая геометрия на плоскости, или 2D-графика. Графические примитивы.

Пример 9.2. Окружность, вписанная в треугольник.

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

Иллюстрированный самоучитель по Mathematica 5 › Мультимедиа: геометрия, графика, кино, звук › Аналитическая геометрия на плоскости, или 2D-графика. Графические примитивы.

Теперь можем написать функцию, отображающую стороны треугольника и вписанную в него окружность.

Иллюстрированный самоучитель по Mathematica 5 › Мультимедиа: геометрия, графика, кино, звук › Аналитическая геометрия на плоскости, или 2D-графика. Графические примитивы.

(Здесь Sequence превращает Sequence@@InscribedCircleData[pA,pB,pC] в Sequence [рА,рВ,рС].)

Теперь можем приступить к рисованию.

Иллюстрированный самоучитель по Mathematica 5 › Мультимедиа: геометрия, графика, кино, звук › Аналитическая геометрия на плоскости, или 2D-графика. Графические примитивы.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.