Научная статья на тему 'Общие системы координат в курсе компьютерной геометрии'

Общие системы координат в курсе компьютерной геометрии Текст научной статьи по специальности «Математика»

CC BY
591
36
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
CИСТЕМА КООРДИНАТ / КОММУТАТИВНАЯ ДИАГРАММА / АФФИННОЕ ОТОБРАЖЕНИЕ / КОМПЬЮТЕРНАЯ ГРАФИКА / СOORDINATE SYSTEM / COMMUTATIVE DIAGRAM / AFFINE TRANSFORM / COMPUTER GRAPHICS

Аннотация научной статьи по математике, автор научной работы — Макаров Евгений Маратович

В статье предлагается общий подход к описанию произвольных систем координат в дисциплине «Компьютерная геометрия и геометрическое моделирование», преподаваемой в Нижегородском государственном университете им. Н.И. Лобачевского на третьем курсе по направлению «Математика». Описание отображений в координатах и переход к другим системам координат являются основными инструментами при построении изображений на экране компьютера. Математическим обоснованием этих операций служит материал из курсов линейной алгебры и аналитической геометрии, которые студенты-математики проходят на первом году обучения. Однако многие учебники компьютерной графики не используют в полной мере теоретические понятия из этих курсов и не содержат доказательств правильности преобразований координат. Если эти доказательства и присутствуют, они используют методы линейной алгебры, которые часто сводятся к манипулированию вложенными суммами и многочисленными индексами. В данной статье показано, что основные факты, изучаемые на первом курсе и используемые при построении изображений, допускают обобщение для произвольных систем координат. Описывается способ доказательства этих фактов, использующий коммутативные диаграммы. Достоинством такого способа является абстрагирование от ненужных деталей и прояснение основной идеи доказательств. Также предлагается подход, использующий изученный ранее в математических курсах материал и выступающий за строгое обоснование правильности операций над координатам в процессе построения изображений.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

GENERIC COORDINATE SYSTEMS IN THE COMPUTER GEOMETRY COURSE

The article presents an approach to describe generic coordinate systems as a part of the course “Computer Geometry and Geometric Modeling”, which is taught to third-year students majoring in mathematics at the Lobachevsky State University of Nizhni Novgorod. Describing geometric mappings using coordinates and using transitions to other coordinate systems are the main tools in drawing images on the computer screen. The mathematical foundation of these operations come from analytic geometry and linear algebra courses, which mathematics majors take during their first year. However, many computer graphics textbooks do not make full use of theoretical concepts from these courses and do not provide proofs of correctness of coordinate transformations. Even when these proofs are present, they use linear algebra methods, which often consist of manipulating nested sums and numerous indices. This article demonstrates that the mains facts studied in linear algebra and used in constructing computer images can be generalized to arbitrary coordinate systems. The proofs of these facts use commutative diagrams. The helps abstract away from unnecessary details and clarify the main idea of the proof. We also advocate an approach that actively uses material covered by earlier mathematical courses and provides proofs that coordinate transformations used in drawing computer images are correct.

Текст научной работы на тему «Общие системы координат в курсе компьютерной геометрии»

.. .. , IT education: methodology,

Evgeny M. Makarov

methodological support

УДК 004.922

DOI: 10.25559/SITITO.14.201804.833-841

ОБЩИЕ СИСТЕМЫ КООРДИНАТ В КУРСЕ КОМПЬЮТЕРНОЙ ГЕОМЕТРИИ

Е.М. Макаров

Национальный исследовательский Нижегородский государственный университет им. Н.И. Лобачевского, г. Нижний Новгород, Россия

GENERIC COORDINATE SYSTEMS IN THE COMPUTER GEOMETRY COURSE

Evgeny M. Makarov

Lobachevsky State University of Nizhni Novgorod, Nizhny Novgorod, Russia

© Макаров Е.М., 2018

Ключевые слова Аннотация

Система координат; В статье предлагается общий подход к описанию произвольных систем координат в дисциплине «Ком-

коммутативная диаграмма; пьютерная геометрия и геометрическое моделирование», преподаваемой в Нижегородском государ-аффинное отображение; ственном университете им. Н.И. Лобачевского на третьем курсе по направлению «Математика». Описа-

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

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

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

Keywords Abstract

Coordinate system; commutative The article presents an approach to describe generic coordinate systems as a part of the course "Comput-diagram; affine transform; er Geom-etry and Geometric Modeling", which is taught to third-year students majoring in mathematics at

computer graphics. the Lobachev-sky State University of Nizhni Novgorod. Describing geometric mappings using coordinates

and using transi-tions to other coordinate systems are the main tools in drawing images on the computer screen. The mathematical foundation of these operations come from analytic geometry and linear algebra courses, which mathematics ma-jors take during their first year. However, many computer graphics textbooks do not make full use of theoretical concepts from these courses and do not provide proofs of correctness of coordinate transformations. Even when these proofs are present, they use linear algebra methods, which often consist of manipulating nested sums and numerous indices.

This article demonstrates that the mains facts studied in linear algebra and used in constructing computer images can be generalized to arbitrary coordinate systems. The proofs of these facts use commutative diagrams. The helps abstract away from unnecessary details and clarify the main idea of the proof. We also advocate an ap-proach that actively uses material covered by earlier mathematical courses and provides proofs that coordinate transformations used in drawing computer images are correct.

|об авторе:|

Макаров Евгений Маратович, Ph.D. по компьютерным наукам от Индианского университета, старший преподаватель, кафедра алгебры, геометрии и дискретной математики, Институт информационных технологий, математики и механики, Национальный исследовательский Нижегородский государственный университет им. Н.И. Лобачевского (603950, Россия, г. Нижний Новгород, пр. Гагарина, д. 23), ORCID: http:// orcid.org/0000-0003-0399-0946, evgeny.makarov@itmm.unn.ru

Vol. 14, no 4. 2018 ISSN 2411-1473 sitito.cs.msu.ru

Modern Information Technologies and IT-Education

Введение

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

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

Данная статья описывает опыт преподавания курса «Компьютерная геометрия и геометрическое моделирование» в Нижегородском государственном университете им. Н.И.Лобачевского на третьем курсе по направлениям «Математика» и «Математика и компьютерные науки». Студентам этих направлений может быть полезно при изучении компьютерной графики кратко повторить материал ранее пройденных предметов и увидеть его практическое применение. В качестве основного метода доказательства утверждений о произвольных системах координат выступают коммутативные диаграммы, широко используемые в теории категорий, хотя сами понятия теории категорий не используются. Этот подход может быть сложен для изучения аналитической геометрии на первого курсе, но он вполне подходит студентам третьего курса и может подготовить их к изучению более продвинутых предметов.

В 2011 году в рамках реализации Болонского процесса в России были введены новые федеральные государственные стандарты (ФГОС), важнейшей частью которых является ком-петентностный подход. Он предусматривает перенос фокуса образования с преподавания и проверки знаний на выработку взаимосвязанных характеристик: знаний, умений, навыков, способностей и личностных качеств [1-4]. Таким образом, результатом обучения должна явиться способность свободно ориентироваться в предметной области, решать профессиональные

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

Компетентностный подход ставит задачу убедиться, что студент не просто знает, как решить задачу, но и обладает навыком поиска решения и обоснования его правильности. Развитие компетенций требует переработки рабочих программ дисциплин. Методологические основания для этого были разработаны в ряде отечественных и международных проектов, в частности, проектов TUNING RUSSIA и META-MATH [5-7]. Аппарат для работы с координатами, описываемый в данной статье, хорошо вписывается в процесс развития компетенций, поскольку содержит утверждения, помогающие убедиться в правильности полученного решения.

Выработке навыков по работе с координатами способствует системы электронного обучения. Примеры их использования описаны в [8-11].

Таким образом, вклад статьи состоит в следующем:

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

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

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

Структура остальной части статьи следующая. Раздел 2 описывает использование коммутативных диаграмм для описания произвольных систем координат. Раздел 3 посвящен обоснованию правильности преобразования мировых координат в экранные. Раздел 4 содержит заключение.

Произвольные системы координат Основные факты

Определение 1. Пусть U — произвольное непустое множество, называемое в дальнейшем пространством. Элементы U будем называть точками. (В большинстве приложений U будет линейным векторным, аффинным точечным или проективным пространством.) Пусть D будет непустым множеством (обычно подмножеством Е" для некоторого n). Биекция S:U—D называется системой координат на U. Если PEU, то координатами P будем называть S(P) и обозначать их через P(S).

Разумеется, система координат в этом смысле похожа на частный случай многообразия с атласом, состоящим из одной карты. Однако в отличие от многообразия мы не требуем, чтобы U было метрическим пространством, а S— гомеоморфизмом. Более того, нам безразлична даже природа множества D. Так, вместо рассмотрения проективной плоскости как многообразия с двумя картами удобнее положить D равным множеству ненулевых пар действительных чисел, определенных с точностью до умножения на ненулевой множитель.

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

Современные информационные технологии и ИТ-образование

Том 14 № 4 (2018) ISSN 2411-1473 sitito.cs.msu.ru

IT education: methodology, methodological support

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

Несмотря на то, что система координат похожа на многообразие, утверждения, описанные ниже и используемые в компьютерной графике, затруднительно найти в стандартных учебниках по дифференциальной геометрии [12, 13]. Подробным изложением теории общих систем координат содержится в книге [14], но оно не нацелено на использования в компьютерной графике.

Определение 2. Пусть f— отображение из и в и', а S:U—>D и S':U'—>D — две системы координат. Будем говорить, что f сохраняет координаты по отношению к S и S', если

[ р ] s = и ( р )] S' (1)

для каждой точки . Р £ и

Функции и, S и S', удовлетворяющие (1), удобно изобразить

в виде следующей коммутативной диаграммы.

/

и->и'

Заметим, что (1) влечет / биекцией.

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

Определение 5 можно записать в следующем виде.

[Р]5 = С1,[Р]5' (3)

В обозначении [Р]5 система координат S играет роль, аналогичную роли единиц измерения в физике. Тогда (3) можно рассматривать, как переход от одних единиц к другим, где С^ выступает в роли коэффициента пропорциональности.

Утверждение 6. Если S, S' и S" — системы координат на и,

то С|, о Сд/г = Сдн..

Доказательство. Коммутативность внешнего треугольника следует из коммутативности составляющих его треугольников.

(S") о S, то есть /является

Определение 3. В случае, если и сохраняет координаты по отношению к S и S' и , будем обозначать S' черези5), а S — через

Важно отметить, чтои(5) есть лишь обозначение, и оно не имеет смысл и°(5). Действительно, такая композиция не имеет смысла, так как область значений S не совпадает с областью определения / Однако, например, в линейных векторных пространствах, базис, задающий f(S), действительно состоит из образом векторов базиса, задающего 5.

Утрверждение 4. Для любой точки Р £ и имеет место равенство = (2)

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

Определение 5. Пусть 5, 5' : и—>D — две системы координат. Функцией перехода от 5 к 5' называется отображение СЦ,, если следующая диаграмма коммутативна.

и

Определение 7. Пусть и— отображение из и в и', а 5: и—>D и 5':и'—>D' — системы координат. Координатной функцией по отношению к и называется функция , которая делает следующую диаграмму коммутативной.

/

и

и'

s

S'

D

D'

да

Если D = D', то и [ 5, 5' ] обозначается через [и] 5.

В силу биективности систем координат и и [и] 5 единственным образом восстанавливаются друг по другу.

Говоря неформально, [/] 5 осуществляет на уровне координат то же отображение, что и делает на уровне точек пространства. В векторных пространствах координатная функция отображения задается матрицей этого отображения.

Утверждение 8. Пусть и: и —> и' сохраняет координаты относительно 5 : и —> D и 5" : и' —> D и пусть 5' : и' —> D есть еще одна система координат. Тогда [и] (5,5') = С;!,', .

Доказательство. Рассмотрим следующую диаграмму. /

и--и1

Vol. 14, no 4. 2018 ISSN 2411-1473 sitito.cs.msu.ru

Modern Information Technologies and IT-Education

По условию треугольники являются коммутативными, поэтому квадрат также коммутативен. Следовательно, С;!,', удовлетворяет определению функции [/] (5, Б') и совпадает с ней в силу ее единственности.

Смысл данного рассуждения прост: /переводит точку Р с некоторыми координатами в 5 в точку/(Р) с теми же координатами, но в Б". Далее функция перехода СБ переводит эти координаты в координаты той же точки/ (Р) в Б'. То есть С5,делает работу координатной функции [ / ] (5, Б').

Утверждение 9.

Доказательство. Рассмотрим следующую диаграмму.

D

D

D

[/]5=[Л]5'

На диаграмме треугольники коммутативны в силу определения д, а трапеция — по определению И. Отсюда следует ком-

мутативность прямоугольника. Значит, д~1 oho ^имеет координатную функцию [ f]S и в силу единственности совпадает с f

Теорему 10 можно сформулировать и доказать на уровне координатных функций. Похожее доказательство с диаграммой есть в [23 : 143].

Теорема 11. В условиях теоремы 10 обозначим A = [ f ]S и A' = [f]S'. Тогда A' = C-1 ° A» C.

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

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

/

До',з")

Коммутативность большого прямоугольника следует из

коммутативности малых.

Следующий факт очень важен для построения матрицы отображения в другом репере, однако он часто приводится без обоснования в учебниках компьютерной графики. Обычно говорится следующее: для нахождения матрицы отображения в нестандартном репере Б' можно временно перевести его в стандартный Б, выполнить в нем то же отображение, и затем перевести репер обратно [15 : 85], [16 : 238], [17 : 75], [18 : 155]. Однако правильность этого алгоритма может быть не очевидна студентам. Какая именно связь между исходным отображением в Б' и промежуточным отображением в Б? В каком репере рассматривается матрица составного отображения, и нужно ли использовать тот факт, что [д]Б = [д] Б', если д(Б) = Б?

Разумеется, в учебниках линейной алгебры приводится доказательство этого факта. Некоторые из них манипулируют суммами и индексами [19 : 115], [20 : 147], другие непосредственно обобщаются на произвольные системы [21 : 69], [22 : 72]. Мы приводим такое обобщение.

Теорема 10. Рассмотрим отображение / : и—>и и системы координат Б, Б' : и—>D с функцией перехода С = С^, . Пусть д : и—>и будет преобразованием, сохраняющим координаты по отношению к Б и Б', а h : и—>и будет таким отображением, что [И] Б' = [/]Б. Тогда / = д~1 о Но д.

Доказательство.

С А с-1

Это доказательство подчеркивает основную идею формулы А = С-1 ° А° С: для вычисления координат образа точки в Б' мы временно переходим в систему координат Б.

В англоязычной литературе ([24 : 327], [25 : 298]) теорему 11 часто доказывают, рассматривая С*, как матрицу тождественного отображения id по отношению к Б' и Б, то есть

[/]5' = ([1(1](5'15))-1о[/]5о[1с1](5',5)

по утверждению 9. Такое доказательство также непосредственно обобщается на произвольные системы координат.

Обобщение на произвольные отображения

Определение 2 подразумевает, что функция между пространствами является биекцией. Чтобы обобщить вышесказанное на произвольные отображения, вместо системы координат имеет смысл рассматривать функцию в обратном направлении: из D £ Е" в и. Это обобщает понятие линейной комбинации в векторном пространстве в том случае, когда набор векторов не являются базисом.

Определение 12. Псевдосистемой координат на пространстве называется произвольное отображение Т : D—>и, где D £ Е".

Определение 13. Пусть Б : и—>D — система координат, а Т : D—>и— псевдосистема координат. Функцией перехода от Б к Т называется отображение С^, такое что следующая диаграмма коммутативна.

и

В случае векторных пространств функция перехода от системы координат, задаваемой базисом Е = (е1 ,... ,еп), к псевдосистеме, задаваемой произвольным набором Е = (е'1,... ,е'т), задается привычной матрицей из столбцов ([е'1 ] Е, ... ,[е'т] Е ).

Определение14. Пусть /— отображение из и в и', Б : и —>D

Современные информационные технологии и ИТ-образование

Том 14 № 4 (2018) ISSN 2411-1473 sitito.cs.msu.ru

IT education: methodology, methodological support

— система координат, а Т : D—>и' — псевдосистема координат. Будем говорить, что и сохраняет координаты по отношению к 5 и Т, если следующая диаграмма коммутативна.

Тогда утверждение 8 обобщается следующим образом.

Утверждение 15. Если и: и—>и' сохраняет координаты по отношению к 5 : и—>D и Т : D—>и', а 5' : и'—>Dесть система координат, то [/](£, 5') = С|'..

Доказательство содержится в следующей диаграмме. /

и—-—>и'

Утверждение 17. Пусть f зования пространства U, а S, S., S2

мы координат на U, причем С\ = C§i и С2 = Cf2

/№) = S2, ю ms = С2 о СГ1, а \f\Si = [/№ = СГ1 о с2.

Доказательство.

f

С-2 С\

Утверждение 18. Пусть : и—>и— отображения,

51,52 : и—Ф — системы координат и и (51) = 52. Тогда [Д о Д]^ = [Д о /2]52. Доказательство.

Дополнительные факты

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

Утверждение 16. Если и: и—и и и (5) = 5', то [ и ]5 = [ и 5

Доказательство. Это следует из следующей диаграммы и утверждения 8.

U—>U — преобра-U—D — систе-

Если

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

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

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

1. Если f сохраняет координаты по отношению к S и T, то

[/](S,S') = Cf.

2. Cj/ О Cgtt =

3. [fog](S,S") = ([f](S', S")) о ([g](S, S')\ в частности, [fog]S=([f}S)o([g}S).

4. [/^([Л^-М/^о!/]^

Обоснование корректности операций над координатами

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

Vol. 14, no 4. 2018 ISSN 2411-1473 sitito.cs.msu.ru

Modern Information Technologies and IT-Education

viewport transformation) [16, 18, 26]. Разумеется, эту задачу может решить даже школьник, потому что искомые преобразования координат используют только основные арифметические действия. Однако без достаточной практики легко совершить ошибку, например, в порядке аффинных отображений. Многие студенты при написании программы, решающей подобные задачи, с первой попытки получают изображение неправильной формы, размера или не в том положении на экране. В худшем случае исправление ошибки может производиться методом подбора.

10 12 14 16 18 20

Рис. 1. Фигура в мировых координатах Fig. 1. Figure in world coordinates

Рассмотрим следующую ситуацию. В мировой системе координат, где единицами измерения служат метры, задана фигура, показанная на рис. 1. Требуется изобразить ее в окне, имеющем высоту пикселей, границу шириной пикселей и разрешение пикселей на сантиметр. Изображение должно быть выполнено в масштабе метров в одном сантиметре и располагаться в левом нижнем углу окна, то есть левый нижний угол фигуры с мировыми координатами должен иметь экранные координаты . Описанное расположение изображено на рис. 2.

re i

О

re 2

/ /\ \ / \

/

/ / \ \ I

V /

р Чч

' е1

ге\ pÍ

S=(0,e1,e2) W'= (0',eí,e'2) fi = (P,ei,e2) F2 = (P,e[,e '2)

№=(:r„V.)

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

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

Рассмотрим аффинное пространство, в котором задано исходное изображение и аффинное пространство экрана. Пусть W и Б = ( О, е1, е2 ) — реперы, задающие мировую и экранную системы координат, соответственно. Как обычно, будем считать, что начало экранной системы координат расположено в левом верхнем углу экрана или окна, ось х направлена вправо, а ось у — вниз. Тогда длины векторов ге1 и ге2 равны 1 см. Далее, пусть Р — точка с экранными координатами (ха , уз ). Рассмотрим репер ^ = 5е1!ег), где \ег \ = 1ег1 = см и

= (Жц,,^). Тогда аффинное отображение / сохраняющее координаты по отношению к W в W', переводит исходную фигуру в требуемое изображение в окне, поэтому согласно

утверждению 8 задача сводится к отысканию [/кад

Рассмотрим два дополнительных репера

= (Р, е!,е2)

r<S _ r<s nF-ínFi

- °FiuFauW согласно

и — {Р, бц е2) ; тогда утверждению 6. Эти матрицы переходов удобно рассматривать как матрицы преобразований: и ^ТУ есть матрицы

(•^sj Us) и ("

-Vw)

параллельных переносов на векторы , соответственно, поскольку координаты векторов переноса определяются в реперах S и F2. Преобразование, переводящее F1 в F2, есть масштабирование с центром в точке P и коэффициентами r/m и -r/m. Общая матрица перехода есть

CW>

T(xs,ys)S{r/m, —r/m)T(—xw, -yw)

'2 1 О''

Рис. 2. Преобразование координат из мировых в экранные Fig. 2. Converting coordinates from world to screen

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

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

2. Сделаем требуемое масштабирование и симметрию;

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

Что означают числа, полученные из координат какой-либо точ-

Альтернативно можно представить отображение f в виде композиции / = 9 0 h. Здесь h сохраняет координаты по отношению к W и S, а 9 = 93 ° 92 ° <71, где д1 делает параллельный перенос на (—Xw, —yw\, g2 осуществляет масштабирование с коэффициентами r/m и -r/m, а g3 делает перенос на (xs,yA все в координатах репера S. Тогда [f](W,S) = Отображение h

переводит исходное изображение в крошечное и перевернутое изображение на экране, и [h](W, S) является единичной матрицей. Далее отображения д. придают изображению нужный размер и положение.

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

Современные информационные технологии и ИТ-образование

Том 14 № 4 (2018) ISSN 2411-1473 sitito.cs.msu.ru

IT education: methodology, methodological support

Заключение

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

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

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

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

Список использованных источников

[1] Гергель В.П., Гугина Е.В., Кузенков О.А. Разработка образовательного стандарта Нижегородского госуниверситета по направлению «Фундаментальная информатика и информационные технологии» // Современные информационные технологии и ИТ-образование. 2010. Т. 6, № 1. С. 51-60. URL: https://elibrary.ru/item.asp?id=24172758 (дата обращения: 12.08.2018).

[2] Ключевые ориентиры для разработки и реализации образовательных программ в предметной области «Информационно-коммуникационные технологии» / Под ред. И.Ю. Петровой и др. Бильбао: Университет Деусто, 2013. 87 с. URL: https://elibrary.ru/item.asp?id=29378723 (дата обращения: 12.08.2018).

[3] Захарова И.В., Кузенков О.А. Опыт реализаций требований образовательных и профессиональных стандартов в области ИКТ в российском образовании // Современные информационные технологии и ИТ-образование. 2016. Т. 12, № 3-1. С. 17-31. URL: https://elibrary.ru/item. asp?id=27411971 (дата обращения: 12.08.2018).

[4] Кузенков О.А. и др. Модернизация программ математических дисциплин ННГУ им. Н.И. Лобачевского в рамках проекта МЕТАМАТН // Нижегородское образование. 2016. № 1. С. 4-10. URL: https://elibrary.ru/item.as-

p?id=25945395 (дата обращения 12.08.2018).

[5] Zakharova I.V. et al. Using SEFI Framework for Modernization of Requirements System for Mathematical Education in Russia // Engineering Education on Top of the World: Industry-University Cooperation, SEFI 2016. Proceedings of the 44th Annual Conference of the European Society for Engineering Education. 2016. 15 p. URL: https://elibrary.ru/item. asp?id=29262540 (дата обращения: 12.08.2018).

[6] Soldatenko I. et al. Modernization of Math-Related Courses in Engineering Education in Russia Based on Best Practices in European and Russian Universities // Engineering Education on Top of the World: Industry-University Cooperation, SEFI 2016. Proceedings of the 44th Annual Conference of the European Society for Engineering Education. 2016. Pp. 131. URL: https://elibrary.ru/item.asp?id=29262526 (дата обращения: 12.08.2018).

[7] Bedny A., Erushkina L., Kuzenkov O. Modernising Educational Programmes in ICT Based on the Tuning Methodology // Tuning Journal for Higher Education. 2014. Vol. 1, no. 2. Pp. 387. URL: http://www.tuningjournal.org/article/view/32/161 (дата обращения: 12.08.2018).

[8] Макаров Е.М. Использования Java для проверки компетенций по геометрическому моделированию // Образовательные технологии и общество. 2018. Т. 21, № 1. С. 494-505. URL: https://elibrary.ru/item.asp?id=32253190 (дата обращения: 12.08.2018).

[9] Басалин П.Д. и др. ИТ-образование с применением интеллектуальной обучающей среды // Современные информационные технологии и ИТ-образование. 2017. Т. 13, № 4. С. 105-111. DOI: 10.25559/SITIT0.2017.4.384

[10] Грезина А., Панасенко А. Изучение курса физики в Институте информационных технологий, математики и механики ННГУ на базе системы электронного обучения // Образовательные технологии и общество. 2018. Т. 21, № 1. С. 487-493. URL: https://elibrary.ru/item.asp?id=32253189 (дата обращения: 12.08.2018).

[11] Грезина А., Панасенко А. Использование современных технологий в преподавании физики при подготовке бакалавров // Современные информационные технологии и ИТ-образование. 2018. Т. 4, № 1. С. 293-303. DOI: 10.25559/ SITITO.14.201801.293-303

[12] Мищенко А.С., Фоменко А.Т. Курс дифференциальной геометрии и топологии. М: Факториал Пресс, 2000. 448 c.

[13] Дубровин Б.А., Новиков С.П., Фоменко А.Т. Современная геометрия: методы и приложения. Т. 1. 4-е изд. М.: Эдитори-ал УРСС, 1998. 333 с.

[14] Amidror I. The Theory of the Moir' e Phenomenon. Vol. II: Aperiodic Layers. Springer, 2007. 493 p. DOI: 10.1007/1-40205458-0

[15] Theoharis T. et al. Graphics & Visualization: Principles & Algorithms. Wellesley, Massachusetts: A K Peters, Ltd., 2008. 752 p.

[16] Hughes J.F. et al. Computer Graphics: Principles and Practice. 3rd ed. Addison-Wesley Professional, 2013. 1264 p.

[17] Agoston M.K. Computer Graphics and Geometric Modeling. Springer-Verlag London, 2005. 959 p. DOI: 10.1007/b138899

[18] Никулин Е.А. Компьютерная геометрия и алгоритмы машинной графики. СПб.: БХВ-Петербург, 2003. 554 c.

[19] Кадомцев С.Б. Аналитическая геометрия и линейная алгебра. М.: Физматлит, 2003. 160 c.

Vol. 14, no 4. 2018 ISSN 2411-1473 sitito.cs.msu.ru

Modern Information Technologies and IT-Education

[20] Шилов Г.Е. Математический анализ: конечномерные линейные пространства. М.: Наука, 1969. 432 с.

[21] Кострикин А.И. Введение в алгебру. Ч. II. Линейная алгебра. М.: Физматлит, 2000. 368 с.

[22] Гантмахер Ф.Р. Теория матриц. М.: Физматлит, 2010. 560 с.

[23] Канатников А.Н., Крищенко А.П. Линейная алгебра. М.: МГТУ им. Н.Э. Баумана, 2002. 336 с.

[24] Strang G. Linear Algebra and Its Applications. 4th ed. Cengage Learning, 2006. 487 р.

[25] Axler S. Linear Algebra Done Right. 3rd ed. Springer-Verlag London, 2015. 340 р. DOI: 10.1007/978-3-319-11080-6

[26] Klawonn F. Introduction to Computer Graphics. Using Java 2D and 3D. 2nd ed. Springer-Verlag London, 2012. 253 p. DOI: 10.1007/978-1-4471-2733-8

Поступила 12.08.2018; принята в печать 10.10.2018; опубликована онлайн 10.12.2018.

References

[1] Gergel V.P., Gugina E.V., Kuzenkov O.A. Development of the educational standard of the Nizhni Novgorod State University in the direction of "Fundamental informatics and information technology". Modern Information Technologies and IT-Education. 2010; 6(1):51-60. Available at: https://elibrary.ru/item. asp?id=24172758 (accessed 12.08.2018). (In Russian)

[2] Petrova I.Yu. et al. Klyuchevye orientiry dlya razrabotki i real-izacii obrazovatel'nyh programm v predmetnoj oblasti «Infor-macionno-kommunikacionnye tekhnologii». Bilbao: University of Deusto, 2013. 87 p. Available at: https://elibrary.ru/ item.asp?id=29378723 (accessed 12.08.2018). (In Russian)

[3] Zakharova I.V., Kuzenkov O.A. Experience in implementing the requirements of the educational and professional standards in the field of ICT in Russian education. Modern Information Technologies and IT-Education. 2016; 12(3-1):17-31. Available at: https://elibrary.ru/item.asp?id=27411971 (accessed 12.08.2018). (In Russian)

[4] Kuzenkov O.A. et al. Modernization of programs of mathematical disciplines of NNGU within the MetaMath project. Nizhe-gorodskoe obrazovanie. 2016; 1:4-10. Available at: https:// elibrary.ru/item.asp?id=25945395 (accessed 12.08.2018). (In Russian)

[5] Zakharova I.V. et al. Using SEFI Framework for Modernization of Requirements System for Mathematical Education in Russia. Engineering Education on Top of the World: Industry-University Cooperation, SEFI 2016. Proceedings of the 44th Annual Conference of the European Society for Engineering Education. 2016. 15 p. Available at: https://elibrary.ru/item. asp?id=29262540 (accessed 12.08.2018).

[6] Soldatenko I. et al. Modernization of Math-Related Courses in Engineering Education in Russia Based on Best Practices in European and Russian Universities. Engineering Education on Top of the World: Industry-University Cooperation, SEFI 2016. Proceedings of the 44th Annual Conference of the European Society for Engineering Education. 2016, pp. 131. Available at: https://elibrary.ru/item.asp?id=29262526 (accessed 12.08.2018).

[7] Bedny A., Erushkina L., Kuzenkov O. Modernising Educational Programmes in ICT Based on the Tuning Methodology. Tuning Journal for Higher Education. 2014; 1(2):387. Available

at: http://www.tuningjournal.org/artide/view/32/161 (accessed 12.08.2018).

[8] Makarov E.M. Using Java to test geometric modeling competencies. Obrazovatel'nye tekhnologii i obshchestvo. 2018; 21(1):494-505. Available at: https://elibrary.ru/item.as-p?id=32253190 (accessed 12.08.2018). (In Russian)

[9] Basalin P.D. et al. It-education using intelligent learning environments. Modern Information Technologies and IT-Education. 2017; 13(4):105-111. (In Russian) DOI: 10.25559/SITI-T0.2017.4.384

[10] Grezina A., Panasenko A. Izuchenie kursa fiziki v Institute informacionnyh tekhnologij, matematiki i mekhaniki NNGU na baze sistemy ehlektronnogo obucheniya. Obrazovatel'nye tekhnologii i obshchestvo. 2018; 21(1):487-493. Available at: https://elibrary.ru/item.asp?id=32253189 (accessed 12.08.2018). (In Russian)

[11] Grezina A., Panasenko A. Use of modern technologies in teaching physics during education of bachelors. Modern Information Technologies and IT-Education. 2018; 4(1):293-303. (In Russian) DOI: 10.25559/SITITO.14.201801.293-303

[12] Mishchenko A.S., Fomenko A.T. Kurs differencial'noj geometrii i topologii. M: Faktorial Press, 2000. 448 p. (In Russian)

[13] Dubrovin B.A., Novikov S.P., Fomenko A.T. Sovremennaya geo-metriya: metody i prilozheniya. T. 1. 4-e izd. M.: EHditorial URSS, 1998. 333 p. (In Russian)

[14] Amidror I. The Theory of the Moir' e Phenomenon. Vol. II: Aperiodic Layers. Springer, 2007. 493 p. DOI: 10.1007/1-40205458-0

[15] Theoharis T. et al. Graphics & Visualization: Principles & Algorithms. Wellesley, Massachusetts: A K Peters, Ltd., 2008. 752 p.

[16] Hughes J.F. et al. Computer Graphics: Principles and Practice. 3rd ed. Addison-Wesley Professional, 2013. 1264 p.

[17] Agoston M.K. Computer Graphics and Geometric Modeling. Springer-Verlag London, 2005. 959 p. DOI: 10.1007/b138899

[18] Nikulin E.A. Komp'yuternaya geometriya i algoritmy mashin-noj grafiki. SPb.: BHV-Peterburg, 2003. 554 p. (In Russian)

[19] Kadomcev S.B. Analiticheskaya geometriya i linejnaya algebra. M.: Fizmatlit, 2003. 160 p. (In Russian)

[20] Shilov G.E. Matematicheskij analiz: konechnomernye linejnye prostranstva. M.: Nauka, 1969. 432 p. (In Russian)

[21] Kostrikin A.I. Vvedenie v algebru. CH. II. Linejnaya algebra. M.: Fizmatlit, 2000. 368 p. (In Russian)

[22] Gantmaher F.R. Teoriya matric. M.: Fizmatlit, 2010. 560 p. (In Russian)

[23] Kanatnikov A.N., Krishchenko A.P. Linejnaya algebra. M.: MGTU im. N.EH. Baumana, 2002. 336 p. (In Russian)

[24] Strang G. Linear Algebra and Its Applications. 4th ed. Cengage Learning, 2006. 487 p.

[25] Axler S. Linear Algebra Done Right. 3rd ed. Springer-Verlag London, 2015. 340 p. DOI: 10.1007/978-3-319-11080-6

[26] Klawonn F. Introduction to Computer Graphics. Using Java 2D and 3D. 2nd ed. Springer-Verlag London, 2012. 253 p. DOI: 10.1007/978-1-4471-2733-8

Submitted 12.08.2018; revised 10.10.2018; published online 10.12.2018.

Современные информационные технологии и ИТ-образование

Том 14 № 4 (2018) ISSN 2411-1473 sitito.cs.msu.ru

IT education: methodology, methodological support

About the author:

Evgeny M. Makarov, Ph.D., Senior instructor, Department of algebra, geometry and discrete mathematics, Institute of information technologies, mathematics and mechanics, Lobachevsky State University of Nizhni Novgorod (23 Gagarina Av., Nizhny Novgorod 603950, Russia), ORCID: http://orcid. org/0000-0003-0399-0946, evgeny.makarov@itmm.unn.ru

This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0), which permits unrestricted reuse, distribution, and reproduction in any medium provided the original work is properly cited.

Vol. 14, no 4. 2018 ISSN 2411-1473 sitito.cs.msu.ru

Modern Information Technologies and IT-Education

i Надоели баннеры? Вы всегда можете отключить рекламу.