Лекция 1. Метод изображений и введение в систему "Арт-Вектор"

С о д е р ж а н и е
Введение
1. Метод изображений.
1.1. Центральное и параллельное проецирование
1.2. Прямоугольное и косоугольное проецирование
1.3. Основные свойства проецирования
1.4. Декартовая система координат, как способ представления 3-мерного пространства
1.5. Комплексный чертеж
1.6. Система координат в системе "Арт-Вектор".
2. Элементарные понятия из векторной алгебры
        2.1. Вектор, длина вектора, длина отрезка.

3. Задание геометрических примитивов в диалоге и через методы
        3.1. Точка
        3.2. Отрезок
        3.3. Окружность
        3.4. Синусоида
        3.5. Полилиния
        3.6. Арт-полилиния

4. Макропрограммирование на языке VBS в системе "Арт-Вектор" с использованием методов
    Пример 4.1.  Вычислиние длины отрезка A(2,5,4) - B(7,4,1)
    Пример 4.2.  Построение отрезка прямой как геометрическое место точек
    Пример 4.3.  Построение окружности
    Пример 4.4.  Построение синусоиды
    Пример 4.5.  Импортирование линии (полилинии) и ее преобазование  в художественную
    Пример 4.6.  Построение окружности как художественной линии



5. Метрический повтор как идин из приемов построения композиции в художественном конструировании


ВВЕДЕНИЕ

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

Теорией и инструментом инженерно-художественного моделирования являются:

1. Начертательная геометрия, использующая графические методы отображения образов и решения задач с ними.
2. Аналитическая геометрия, использующая аналитическое (формульное) задание геометрических образов и их отображения.
3. Векторная алгебра, использующая векторное задание геометрических примитивов-образов и работы с ними.
4. Вычислительная геометрия основана на численных методах, которые в сочетании с графическими методами отображения являются наиболее сильным инструментом при решении таких традиционно сложных инженерных задач, как оптимизация, линейное и нелинейное программирование и т.п.

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

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

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


1. Метод изображений

1.1. Центральное и параллельное проецирование

В инженерно-художественной практике применяют:
- Центральное (перспективное) моделирование, когда проецирующие лучи исходят из центра (точки взгляда на объект).
- Параллельное проецирование - центр проецирования находится в бесконечности.
 
 
В инженерной практике (черчении) чаще используется параллельное проецирование, в художественной - центральное.

1.2. Прямоугольное и косоугольное проецирование

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

1.3. Основные свойства проецирования объектов на плоскость

- Проекция точки есть точка.
-  Проекция прямой на плоскость в общем случае есть прямая, а  в частном, когда прямая перпендикулярна плоскости, прямая вырождается  в точку.
-  Проекция плоскости в общем случае есть плоскость, а  в частном, когда плоскость перпендикулярна плоскости, плоскость вырождается  в прямую.
-  Проекции параллельных прямых, также параллельны, что нельзя сказать о сохранении перпендикулярности прямых.  Только в частном случае, когда одна их прямых прямого угла параллельно плоскости проекций, прямой угол проецируется в натуральную величину, т.е. в прямой угол.
Более подробно об ортогональном проецировании и о его свойствах смотрите курс по начертательной геометрии (лекция № 1).


1.4. Декартовая система координат, как способ представления трехмерного пространства

Две взаимно-перпендикулярные прямые определяют двумерную плоскость или декартовую систему координат двумерного пространства.
Три взаимно-перпендикулярные прямые или три взаимно-перпендикулярные плоскости - определяют уже 3-мерное пространство или говорят декартовую систему координат трехмерного пространства.
Обозначив оси через x,y,z , получим удобнейший инструмент связи графических изображений с аналитической геометрией и векторной алгеброй.

Три взаимно-перпендикулярные плоскости делят 3-мерное пространство на 8 октантов,  в которых значения координат точки (объекта) могут быть в различных сочетаниях или положительными, или отрицательными.
Точка в пространстве имеет три координаты - x, y, z.
Проекции же точки на координатных плоскостях двумя координатами:
- на горизонтальной плоскости H - x,y
- на фронтальной плоскости   V    - x, z
- на профильной плоскости  W -  y, z

Геометрические фигуры имеют также собственную систему координат (размеры формы) - ширину, толщину и высоту.
В компьютерной графике также различают: местную систему координат (в ней определяется форма объекта) и глобальную систему координат (в ней фиксируется положение объекта).


1.5. Комплексный чертеж

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

Проекции располагают обычно в проекционной связи. Так вид сверху (горизонтальнвая проекция) находится под главным видом (под фронтальной проекцией), а вид слева (профильная проекция) располагается справа от главного  вида.
 
Рис. 1.4, а                                                 Рис. 1.4, б
 


1.6. Система координат в системе "Арт-Вектор"

В системе "Арт-Вектор" принято ортогонально-параллельное (проецирование, перпендикулярное экранной плоскости проекций) и центральное (перспективное) проецирование. В первом случае - задается автоматически, во втором, пользователь ставит "флажок".


Рис. 1.5,а
Плоскость экрана (рис. 1.5, а) дисплея принята за координатную двумерную плоскость x'y'.


Рис. 1.5,б
Имеется возможность задания/отмены комплексного чертежа (Рис. 1.5,б)

С понятиями изображения на экране дисплея связаны масштаб изображения моделируемой сцены или объекта, автоматические изображения объекта в размерах экрана, задание начала координат той или иной проекции, цвета линий и т.п.

Рис. 1.5, с
В системах "Арт-Вектор" и "CG" проекции фигур обладают теми же свойствами параллельного проецирования:
- проекция прямой, неперпендикулярной к плоскости экрана, есть изображение прямой, в противном случае, прямая вырождается в точку;

- проекция плоской фигуры (плоскости), неперпендикулярной к плоскости экрана, есть плоская фигура, в противном случае, плоскость вырождается в прямую линию;

- проекция плоской фигуры (плоскости), параллельная плоскости экрана, проецируется на нее в натуральную величину (НВ).

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


2. Элементарные понятия из векторной алгебры

2.1. Вектор, длина вектора, отрезка

Вектор - это направленный отрезок, имеющий координаты и длину отрезка.
Длина вектора s=|P| (что значит вектор по модулю) вычиcляется по теореме Пифагора из прямоугольного треугольника,у которого катетами являются координаты точки конца отрезка:
s=Sqr(x*x+y*y+z*z)
Вектор р3 отрезка p1-p2 вычисляется как разность векторов конца p2 и начала p1:
p3=p2-p1    (1)
Формула (1) - это векторная запись.
Есть покомпонентная запись. Например, в трехмерном пространстве вектор между двумя точками будет записан в следующем виде:
x3=x2-x1
y3=y2-y1
z3=z2-z1
Длина s3 вектора p3
s3 = |p3| = |p2-p1|
также определяется по теореме Пифагора, где катетами являются разница конца и начала отрезка.
s3=Sqr((x2-x1)*(x2-x1) + (y2-y1)*(y2-y1) + (z2-z1)*(z2-z1))
Вектора можно: складывать, отнимать, умножать на вещественное число и т.д.
Единичный вектор - это вектор длина которого равна единице. Поэтому, чтобы получить единичный вектор - надо вектор разелить на его длину.
Точка на прямой на расстоянии s от p1 в направлении единичного вектора p99 будет вычисляться так:
p=p1+s*p99,
где р99 - единичный вектор.


3. Задание геометрических примитивов: точка, отрезок

3.1. Точка

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

Пример 2.1. На языке VBS в системе "АРТ-Вектор" написать  макропрограмму задание точки с именем А.

Решение.
Зададим точку А как переменную величину через специальную конструкцию-метод:
Set A = p(x,y,z),
где x,y,z - координаты точки.
Компоненты (координаты) точки будут соответственно: A.x, A.y, A.z
Точку изобразим с помощью метода: Ngpoint.ss <имя точки> ,
Изобразим также  ее имя с помощью другого метода: Text.ss A, "А"

В итоге МК будет иметь следующую конструкцию:
<Test21.vbs> - имя программы-макрокоманды
Set A= p(2,5,4)  ' точку А как переменная
Ngpoint.ss A1 ' метод отрисовки точки
Text.ss A, "А"  '  метод изображения текста на поле чертежа

Есть другие методы задания точки через ее компаненты:
Ngpoint.s 2,3,4
где:
2, 3, 3 - координаты точки

Третий метод, через компоненты координат точек, заданных в первом методе
Ngpoint.s A.x, A.y, A.z


3.2. Отрезок

Отрезок, определяемый начальной точкой p0 и конечной p1, с позиций его задания, будет определяться промежуточными точками, определяемые по линейному закону:  p= (1-t)*p1+ t*p2 , где: 0 < t < 1.
Прямую можно также рассматривать и как геометрическое место точек, равноудаленных от двух заданных точек:
|p1-p|=|p2-p|
Существует много различных аналитических уравнений прямой, однако в системах, как правило, есть готовый метод задания отрезка прямой, чем и надо пользоваться

Задание отрезка прямой в системе "Арт-Вектор"

В диалоге  в верхней строке: линия, отрезок и далее в окне задаются координаты начала отрезка и конца отрезка;

В макрокомандах (МК) отрезок прямой задается:

Сначала определяются переменные типа "точка":
Set A =p (2,3,4)   ' начальная точка отрезка
Set B =p (5,4,2)   ' конечная точка отрезка
otrezok.ss  A, B    ' сам метод

Второй метод через компоненты координат точек, заданных выше
otrezok.s  A.x, A.y, A.y, B.x, B.y, B.z

Третий метод просто ченрез переменные
otrezok.s x1, y1, z1, x2, y2, z2
где:
x1, y1, z1 - координаты начала отрезка
x2, y2, z2 - координаты конца отрезка


3.3. Окружность

Задание окружности в системе "Арт-вектор" - осуществляется:
В диалоге: линия - окружность - далее параметры центра (параметры положения) и радиус (параметр формы);
В МК через методы:
Метод: через координаты центра окружности О, радиус R и вектор N нормали плоскомти окружности
Set О =p (6,3,4)
Set N =p (0,0,1)
Krug.ss O, R, N

* Алгоритм построения окружности как ГМТ см. лекцию 2

Метод через компоненты координат центра, заданных выше и радиус
krug.s A.x, A.y, A.z, r

Метод через координаты центра окружности и радиус
krug.s x, y, z, r
где:
x, y, z - координаты центра окружности
r - радиус окружности


3.4. Синусоида

Sinus.ss O, R, s1, s2
где
Set O = p(-6,0,0)       ' центр (точка привязки)  синусоиды
R=2                           ' радиус (амплитуда) синусоиды
s1=0                           '  - начальный угол синусоиды
s2=360                       '  - конец синусоиды (в градусах)

3.5. Полилиния

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

Polyline.Reset ' Обнулить - ставится перед заданием новой полилинии
Polyline.Reset
Polyline.AddP A1
Polyline.AddP A2
......
 Polyline.AddP An
 Polyline.SaveInDoc ( ngroup )
 Polyline.Draw
гдн А1-Аn - вводимые точки полилинии
 

** Медоды задания других примитивов см. здесь


3.6. Арт-полилиния

Арт-полилиния - это полиния преобразованная в "художественную" на подобии тому,  как вперед/назад рисует художник.
В диалоге пользователь указывает через сколько точек в полилинии надо "уйти" вперед, и через сколько  - назад. При этом задний ход можно не отрисовывать (убирается галочка)
В МК задание художественной линиий осуществляется через метод (ставится после задания или импортирования полилинии):
ToPolylineArt n1, n2
где:
n1 - число щагов вперед
n2 - число шагов назад ( n2 < n1)
Арт-полилиния работает также при распозновании фотографий  как полилинии и для поверхностей переноса и вращения.

4. Макропрограммирование на языке VBS в системе "Арт-Вектор" с использованием методов

При макропрограммирование важно уметь:
- задавать (описывать) входные данные;
- применять методы;
- организовывать циклы,
- ставить условия на мах/min;
- находить мах/min
- параметризировать задаваемые формы ;


Пример 4.1. Вычисление длины отрезка A(2,5,4) - B(7,4,1)

Test.vbs - имя макрокоманды
Set A= p(2,5,4)
Set B= p(7,4,1)
S=Sqr((A.x-B.x)*(A.x-B.x) + (A.y-B.y)*(A.y-B.y) + (A.z-B.z)*(A.z-B.z))
VBSMsg "Длина отрезка = " &  S  '  вывод сообщения о длине отрезка на экран дисплея



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

Алгоритм вычисления: k =(1-t)*p1+t*p2
Mетод на основе заданного алгоритма: Set K = PointOtr(P1, P2, s)

<имя МК>
Set p1 =p(1,1,1)                                '  точки начала отрезка
Set p2 =p(6,6,4)                                '  точка конца отрезка

For  t = 0. To 1.01 Step 0.05             '  начало цикла с шагом 0.05
    Set K = PointOtr(P1, P2, t)            '  вычисление точки K на прямой в зависимости от t
    Ngpoint.ss K                                  '  построение точки
Next                                                   '  выход из цикла



Пример 4.3.  Построение  окружности

< имя  МК >
Set O = p(0,0,0)       ' центр окружности
R=3                           ' радиус
Set N = p(0,0,1)        ' вектор нормали плоскости окружности
Krug.ss O, R, N        ' обращение к методу



Пример 4.4.  Построение  синусоиды

< имя  МК >
Set O = p(0,0,0)       ' центр окружности
R=3                           ' радиус
s1=0                           '  - начальный угол синусоиды
s2=360                       '  - конец синусоиды (в градусах)
Sinus.ss O, R, s1, s2



Пример 4.5.  Построение  полилинии
< имя  МК >
Set p1 =p(0,0,0)
Set p2 =p(0,4,4)
Set p3 =p(4,4,4)
Set p4 =p(4,0,0)
Polyline.Reset
Polyline.AddP p1
Polyline.AddP p2
Polyline.AddP p3
Polyline.AddP p4
Polyline.AddP p1
Polyline.SaveInDoc ( ngroup )
Polyline.Draw


Пример 4.5.  Импортирование линии (полилинии) и ее преобазование  в художественную
< имя  МК >
Import "E:\Oxk\Makm\Urok1\Modc1.dxf", 0
ToPolylineArt 31, 30  ' 21- число шагов вперед, 20 число шагов назад
Polyline.FromCurrObj  n

Пример 4.6. Построить окружность, преобразовать ее в полилинии, а затем - в художественную
Krug.ss p(0,0,0), 3, p(0,0,1)
Polyline.FromCurrObj 77   '  77 -  число точек на линии
ToPolylineArt 31, 30  ' 21- число шагов вперед, 20 число шагов назад *

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



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

Метрический ряд должен иметь начало и конец – иначе он будет выглядеть случайным фрагментом чего-то незавершенного. Композиционно таким началом и концом , например, могут быть крайние поля, более широкие, чем ряд метрического шага.

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

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

Надо отличать понятия "ритм" и "метрический повтор". В отличие от метрического повтора закономерность, на которой основан ритм, выражается в постепенных количественных изменениях в ряду чередующихся элементов – в нарастании или убывании элементов, объема или площади, в сгущении или разряжении структуры, силы тона и т.п. 
Более подробно о метрическом повторе и ритме см. лекцию для факультатива  по уроку 2 "Композиция в технике и в искусстве (общие принципы)"



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


На рис.6.1 из синусоиды (ее вращением и худ. преобразованием) создана стереопара, рассматривая которую можно увидеть не две, а одну или три фигуры, из которых одна будет на переднем плане***. Попытайтесь это увидеть.


 Рис. 6.1 



При чем, если фиг. на рис 6.1, посмотреть в аксонометрии, то вид ее будет как на рис. 6.2. Кроме того, при стереопросмотре,  вместо трех фигур, можно увидеть  четыре фигуры.

 Рис. 6.2
Вопрос. Какая из фигур будет на переднем плане?


*** Рис. 6.1-6.2 -  опыты работы со знаковой медитацией и создания фонтанирующей живописи