Моделирование циклоидальных кривых в среде FMSLogo
Автор: Баглаев И.И.
Журнал: Вестник Бурятского государственного университета. Философия @vestnik-bsu
Рубрика: Теория и методика обучения естественно-математическим дисциплинам
Статья в выпуске: 1, 2008 года.
Бесплатный доступ
Язык программирования Лого ориентирован на черепашью геометрию и облегчает обучение "Компьютерной геометрии". В частности, средствами черепашьей геометрии очень удобно и наглядно осуществлять моделирование циклоидальных кривых.
Короткий адрес: https://sciup.org/148178270
IDR: 148178270
Текст научной статьи Моделирование циклоидальных кривых в среде FMSLogo
Modelling cycloid curves in FMSLogo environment
The Logo programming language is oriented on turtle geometry and facilitates training of «Computer geometry». In particular, by means of turtle geometry it is very convenient and visual to execute modelling of cycloid curves.
Отличительная особенность Лого – акцент на графическом пакете черепашьей геометрии, подчеркивающей дискретные изменения локальных кривизн кривых. Несмотря на простоту, черепашья геометрия весьма мощна и обеспечивает альтернативную точку зрения на отдельные геометрические концепции, в частности кинематическое задание кривых. Проблема заключается в кинематическом задании известных кривых, заданных уравнениями. В данной статье представляется метод кинематического задания в черепашьей геометрии циклоидальных кривых. Этот материал предоставляет хорошие упражнения для интегративного курса информатики и математики [3].
Одним из кинематических способов образования циклоидальных кривых является их задание в виде траектории точки некоторого подвижного круга, который катится по неподвижной окружности (прямой) [2].
Рассматривают 2 случая:
-
A. Точка лежит на окружности производящего круга (эпициклоида, циклоида, гипоциклоида).
-
B. Точка не лежит на окружности производящего круга (эпитрохоида, гипотрохоида).
В данной статье рассматривается вопрос о другом способе кинематического задания первого класса циклоидальных кривых, а именно эпициклоид, циклоид, гипоциклоид.
-
1. Черепашья геометрия.
Среда программирования Лого характеризуется наличием графического курсора – черепашки, которая может перемещаться по прямой, поворачиваться вокруг основания и рисовать линии [1]. С применением динамической черепашьей геометрии, в которой используются только команды FORWARD (вперед) и RIGHT (направо по часовой стрелке), можно сформулировать кинематическое задание циклоидальных кривых.
Так как мы рассматриваем только первый случай, то будем говорить о катящейся окружности, а не круге. Эту окружность будем также называть производящей окружностью. Если производящая окружность касается неподвижной окружности внутренним образом, то получаемая кривая называется гипоциклоидой. Если вместо неподвижной окружности имеем прямую, то получаем циклоиду. И если производящая окружность касается неподвижной окружности внешним образом, то получаемая кривая называется эпициклоидой.
Пусть r и R – радиусы производящей и неподвижной окружностей соответственно. Обозна- r m = — чим через R параметр, называемый модулем, причем для гипоциклоиды считаем m < 0, для циклоиды m = 0, а для эпициклоиды m > 0. Тогда параметрические уравнения этих кривых можно записать в виде
<
x = ( R + m ■ r )cos m ■ t
y = ( R + m ■ r )sin m ■ t
- m ■ R ■ cos( t + m ■ t ), - m ■ R ■ sin( t + m ■ t ),
где t – угол радиусами производящей окружности, проведенными в вычерчивающую точку и точку касания производящей окружности с неподвижной окружностью (прямой) [2]. Дифференцируя уравнения (1) по t, получим x' = 2 ■ R ■ m ■ (1 + m) ■ sin 2 ■ cos(m ■ t + 2),У' = 2 ■ R ■ m ■ (1 + m) ■ sin^'sin(m ■ t + 2).
x' t1
tga = — = tg ( m ■ t + -) a = ( m + -) ■ t ,
Поэтому y 2 и, следовательно, где α – направление касательной к кривой (1) в текущей точке. Отсюда следует, что da1
to = — = m + —.
dt2
Из равенства (2 ) следует, что скорость ω угла поворота касательной к кривой постоянна.
dS = x '2 + У '2
Находя dt для кривой (1), получим v = SL = 2 ■ r ■ m ■ (1 + m) ■ sin —.
dt 2 (3)
Соотношения (2) и (3) задают альтернативный кинематический способ построения циклоидальных кривых с помощью перемещения черепашки вперед со скоростью v и поворота по часовой стрелке со скоростью ω. Отсюда легко написать процедуру рисования гипоциклоид (цик- p m = —, лоид, эпициклоид) для q где p – целое число, а q – целое положительное число.
to cicl :r :p :q make "m :p/:q make "phi 360 * :q for [t 1 :phi 1][fd :r * sin (:t/2) rt (:m +1/2)]
end
-
n 0 Особенности формы.
Для циклоиды p = 0, а q – целое число, т.е. производящая окружность делает q полных оборотов, и если исходная точка является точкой касания производящей окружности с неподвижной прямой, то в процессе движения производящая окружность будет q + 1 раз касаться неподвижной прямой в производящей точке. Соответственно этому циклоида будет иметь q арок и q – 1 точек возврата (см. строку №4 таблицы 1).
Для гипоциклоид и эпициклоид, после того как производящая окружность сделает q полных оборотов, вычерчивающая точка совпадет с исходной точкой и получится замкнутая кривая, имеющая q ветвей и q точек возврата. При |p| ≠ 1 перед началом и концом каждой ветви будет находиться |p| – 1 точек возврата, отдельные ветви при этом будут пересекаться в u узловых точках (см. строки №1-3, 5-10 табл. 1).
И . И . Баглаев . Моделирование циклоидальных кривых в среде FMSLogo
Таблица 1
№ |
R |
p |
q |
Изображение |
u |
1 |
0.5 |
-6; -1 |
7 |
0 |
|
2 |
1 |
-5; -2 |
7 |
7 |
|
3 |
1 |
-4; -3 |
7 |
14 |
|
4 |
0.25 |
0 |
7 |
< V V V^V^V^V" |
0 |
5 |
0.25 |
1 |
7 |
0 |
|
6 |
0.5 |
2 |
7 |
7 |
|
7 |
0.75 |
3 |
7 |
14 |
|
8 |
1 |
4 |
7 |
21 |
|
9 |
1 |
5 |
7 |
28 |
|
10 |
1.25 |
6 |
7 |
35 |
|
11 |
1.5 |
1 |
1 |
0 |
|
12 |
1 |
1 |
2 |
0 |
|
13 |
0.75 |
-1 |
3 |
0 |
|
14 |
0.5 |
-1 |
4 |
0 |
|
15 |
4 |
2 |
1 |
1 |
|
16 |
16 |
3 |
1 |
^^^у^ |
2 |
В строках №11-14 таблицы 1 приведены известные кривые – кардиоида, нефроида, кривая Штейнера, астроида соответственно. В строках №15-16 таблицы 1 приведены эпициклоиды, у которых радиус производящей окружности больше радиуса неподвижной окружности.