Фигурата спирален квадрат представлява 4-ходова спирала от равнината. Радиусът на всеки от лъчите на спиралата се променя с еднаква стъпка в началото на всеки оборот.
Съществуват различни алгоритми за построяване на спирален квадрат, но всеки от тях изпълнява следните изисквания:
за всеки пълен оборот на спиралата се построяват 4 еднакви правоъгълни триъгълника;
началната избрана посока за развиване (по посока на часовниковата стрелка или обратно) не се променя;
начално избраната стъпка (дължина на по-малкия катет) за разширяване/свиване на спиралата не се променя - при разширяваща се спирала фигурата спирален квадрат съдържа централен квадратен светъл отвор;
гладкостта на спиралата се подобрява след всеки оборот - ъгълът на закривяване бързо и нелинейно намалява след всяка стъпка.
Използваният алгоритъм за построяване на спирален квадрат ползва следните стъпки:
посочват се координати на две точки и изчисляване разстоянието между тях;
в цикъл последователно се построяват страни на квадрат всяка с дължина изчисленото разстояние между точките;
по предварително избран подалгоритъм се изчислява дължина на по-късия катет спрямо страната на квадрата - дължина на хипотенуза в правоъгълен триъгълник, както и неговия прилежащ остър ъгъл;
съставя се вложен цикъл - определящ броя квадрати N във фигурата спирален квадрат;
на всеки ход от външния цикъл се изчертава един елемент от 4-те лъча на спиралата;
преди тялото на вложения цикъл се преизчислява дължината на втория катет (дължината нараства с дължината на по-късия катет) и става страна на новия квадрат във фигурата спирален квадрат;
на всеки ход (4 броя) от вътрешния цикъл се изчертава двойката катети за всеки от ротираните правоъгълни триъгълници с еднакви размери;
след тялото на вложения цикъл се преизчислява прилежащия остър ъгъл на катета с константна дължина;
След N-тата стъпка на външния цикъла са построени N броя квадрата от фигурата спирален квадрат. В приложения чертеж е акцентирано върху 4-те лъча на спиралата - в центъра с цвят лилав е построен началния квадрат, с непрекъсната (синя) линия е построен по-късия катет, с прекъсната катета с променящата се дължина.
Представеният алгоритъм (с известни ограничения за брой квадрати) може да бъде използван и за свиваща се спирала - променливият по дължина катет намалява с същата стъпка.
Разгледайте други примерни проекти реализиращи междупредметни връзки , за които е ползвана подобна логическа структура на графичните обекти и/или приложени сходни алгоритми. Прочетете допълнителен материал за: спирала на Питагор.