имя = число, вектор Например (рис. 2.49):
ВЕКТ7 = 3, ВЕ2 Вектор, равный произведению двух векторов:
имя = вектор1, УМНОЖ, вектор2
Например:
ВЕКТОР В6 = ВЕКТ, М2
Вектор, являющийся радиус-вектором заданной точки:
имя = точка
Например (рис. 2.50):
ВЕКТ8 = ТЧ1 Вектор, заданный координатами своих начальной и конечной точек: имя = координата х1, координата у1, координата х2, координата у2
Например (рис. 2.51):
ВЕКТ В1 = -13, 4, 26, 28
Вектор, параллельный заданной прямой:
имя = прямая, {ХБ|УБ|ХМ|УМ}
П р и м е ч а н и е . Длина вектора равна единице, начало его находится в начале координат, например (рис. 2.52): ВЕКТ7 = ПРА, ХМ
Матрица определяет способ преобразования координат. Это преобразование может быть параллельным переносом исходной системы координат, ее поворотом, симметрией или комбинацией этих преобразований. Любое преобразование координатной системы может быть описано с помощью системы трех уравнений: a11x1+a12y1+a13z1+a14=x2 a21x1+a22y1+a23z1+a24=y2 a31x1+a32y1+a33z1+a34=z2
Всегда можно определить значения таких коэффициентов a11, a12, . . . , a34, что при подстановке в систему уравнений значений координат произвольной точки x1, y1, z1 в локальной системе координат будут получены координаты этой точки x2, у2, z2 в абсолютной (исходной) системе координат.
Коэффициенты данной системы уравнений используются для представления матрицы преобразования в канонической форме и выводятся на печать в следующей последовательности:
a11a12a13 a21a22a23 a31a32a33 a14a24a34
Первые три элемента каждого столбца определяют направление осей локальной системы координат по отношению к исходной (абсолютной) системе координат: a11, a21, a31 − единичный вектор оси х1; а12, а22, а32− единичный вектор оси у1;а13, а23, а33 − единичный вектор оси z1.
Четвертая строка определяет положение начала координат локальной системы: Ом, «24, O34 − координаты х, у, z начала локальной системы координат в исходной (абсолютной) системе.
Результатом матричного преобразования является геометрический объект, который имеет в локальной системе координат, полученной преобразованием исходной системы, параметры исходного геометрического объекта.
При использовании комбинированных матричных преобразований, задаваемых произведением матриц, следует помнить, что матричное умножение не коммутативно, т. е. конечный результат зависит от последовательности элементарных преобразований.
На рис. 2.53, а−в представлено последовательное преобразование исходной системы координат (о) матрицами поворота (б) и переноса (в), а на рис. 2.53, г−е дано преобразование системы матрицами переноса (д) и поворота (е). В геометрических определениях матрицы используются следующие модификаторы: ПОВХУ − определяет поворот осей х н у вокруг оси г; ПОВУЗ − поворот осей у к г вокруг оси * и ПОВЗХ − поворот осей z a x вокруг оси у (направление отсчета углов поворота − в соответствии с рисунком).
Матрица, определяющая координатную систему, полученную поворотом на заданный угол исходной системы координат вокруг одной из ее осей:
имя ={ПОВХУ|ПОВУЗ|ПОВЗХ}, угол Например (рис. 2.54):
МАТР МТ2 = ПОВЗХ, 30.5
Матрица, определяющая координатную систему, полученную параллельным переносом исходной системы координат:
имя = ПЕРЕНОС, координата х, координата у, [координата z] Например (рис. 2.55):
МАТРЗ = ПЕРЕНОС, 10, 15, 20
Матрица, определяющая координатную систему, полученную параллельным переносом исходной системы координат и последующим поворотом на заданный угол вокруг одной из координатных осей:
Например (рис. 2.56):
МАТР = ПОВЗХ, 30.5, ПЕРЕНОС, 10, 15, 20 Матрица, являющаяся произведением двух других матриц: имя = матрица х1, матрица2 Например (рис. 2.56):
МАТР=МАТР3, МТ2
П р и м е ч а н и я : 1. Произведение матриц эквивалентно применению сначала матрицы2, а затем преобразованию полученного результата в соответствии с матрицей1. 2. Матрица, заданная в примере (см. рис. 2.56), является произведением матриц, определенных в первых двух примерах (см. рис. 2.54 и 2.55).
Матрица, равная ранее определенной матрице:
имя = матрица
Например: МАТР4 = МТ6
Матрица, определяющая перенос начала координат в точку, заданную явно или вектором:
имя = ПЕРЕНОС, {точка
вектор} Например (рис. 2.57):МКТ = ПЕРЕНОС, ТЧА
МКТ = ПЕРЕНОС, ВКР4
Матрица, определяющая поворот исходной системы координат вокруг одной из осей и последующий перенос начала координат в точку, заданную явно или вектором:
имя = {точка | вектор}, { ПОВХУ|ПОВУЗ|ПОВЗХ }, угол
Матрица, определяющая симметрию относительно заданной прямой: имя = прямая Например (рис. 2.58):
МАТР8 = ПР1
Матрица, определяющая координатную систему, начало которой совпадает с началом координат исходной системы, а направления осей заданы векторами:
имя = вектор1, вектор2, вектор3
Например (рис. 2.59):
MATP9 = BKl, BEKT6, ВЕКР
Матрица, определяющая координатную систему, начало которой находится в точке, заданной явно или вектором, а направление осей заданы соответствующими векторами:
имя = вектор1, вектор2, вектор3, ПЕРЕНОС, {точка
вектор4}Например (рис. 2.60):
М2 = ВК4, ВКТ, В16, ПЕРЕНОС, ТЧА
Матрица, определяющая координатную систему, являющуюся зеркальным отображением исходной относительно заданной плоскости:
имя = плоскость Например (рис. 2.61):
МАТР2 = ПЛОСК4
Матрица, определяющая преобразование координат, обратное преобразованию, определенному заданной матрицей:
имя = ОБРАТИ, матрица
Например; если ТЧ2 = МАТР2, ТЧ1 и М12 = ОБРАТН, МАТР2, то справедливо геометрическое определение: ТЧ1=ТЧ2, М12
В геометрических определениях плоскости используются следующие модификаторы: ХУПАР − определяемая плоскость параллельна плоскости ху, УЗПАР − параллельна плоскости уz и ЗХПАР − плоскости zх. Отсутствие модификатора эквивалентно использованию модификатора ХУПАР.
Плоскость, параллельная одной из координатных плоскостей и проходящая через заданную точку:
имя = {ХУПАР|УЗПАР|ЗХПАР}, точка Например:
ПЛОСК П1= УЗПАР, ТЧЗ
Плоскость, параллельная одной из координатных плоскостей и находящаяся на заданном расстоянии от нее:
имя = |ХУПАР |УЗПАР |ХЗПАР}, число Например:
ПЛОСК8 = ЗХПАР, -29.6
Плоскость, совпадающая с плоскостью, определенной ранее: имя = плоскость Например:
ПЛОСК ПЛТ = ПЛОСК8 Плоскость, определенная коэффициентами ее нормального уравнения: имя = число1, число2, число3, число4
Плоскость, проходящая через три точки, не лежащие на одной прямой: имя = точка1, точка2, точка3 Например:
ПЛ54 = ТЧ1, ТЧ18, ТЧ46
Плоскость, проходящая через заданную точку перпендикулярно вектору: имя = вектор, точка Например (рис. 2.62):
ПЛОСК8 = ВЕКР, ТЧ2
Плоскость, параллельная двум векторам и проходящая через заданную точку:
имя = вектор1, вектор2, точка Например (рис. 2.63):
ПЛ6 = ВЕКТ1, ВЕКИ2, ТЧ1
Плоскость, параллельная другой плоскости и проходящая через заданную точку:
имя = точка, ПАРЛЕЛ, плоскость
Плоскость, полученная преобразованием заданной плоскости в соответствии с указанной матрицей: имя = плоскость, матрица
Если у такого геометрического объекта отсутствует имя, то значения его геометрических параметров сохраняются временно и используются процессором только для промежуточных вычислений.
На рис. 2.64 изображена окружность К.Р2, которая описана с использованием вложенных определений:
КР2 = ТОЧКА (ПРЯМАЯ ПР2 (ТЧ1, ТЧ2), ПР1), РАДИУС, 2.5
Данное геометрическое определение равноценно трем другим определениям: ПР2 = ТЧ1, ТЧ2
ТЧА = ПР2, ПР1
КР2 = ЦЕНТР, ТЧА, РАДИУС, 2.5
Различие состоит лишь в том, что значение точки ТЧА во втором варианте записи сохранится, а при использовании вложенного определения точка пересечения прямых ПР1 и ПР2 не может быть использована в программе повторно. Глубину вложения можно увеличивать. В каждом из геометрических определений она может достигнуть двадцати.