Skip to content

A repository for the final project of the Computer Aided Geometric Design Course 2023-2024 at FMI

Notifications You must be signed in to change notification settings

Victor-Uzunov/CAGD-CourseProject-FMI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

CAGD-CourseProject-FMI

Subdivision for Bezier Curve

Описание

Проектът Subdivision for Bezier Curve е интерактивен уеб базиран инструмент за визуализация и манипулация на кривите на Безие. Използва се за създаване на гладки криви, базирани на контролни точки, които са от съществено значение в компютърната графика и дизайна.

Функционалности

  1. Добавяне на контролни точки: Потребителите могат да добавят контролни точки към платното, като кликнат с левия бутон на мишката. Всеки контролен точка се визуализира като зелен кръг.
  2. Плъзгач: Динамично регулира подразбиването на кривата на Безие, позволявайки на потребителите да наблюдават ефектите от регулирането му.
  3. Влачене на контролни точки: Потребителите могат да влачат последно добавената контролна точка, като задържат левия бутон на мишката върху нея.
  4. Премахване на контролни точки: Изтриване на последно добавената точка с десен бутон на мишката или премахване на всички точки с бутона "Remove All".
  5. Визуализация на кривата на Безие: Включва отметка за превключване на видимостта на кривата на Безие, която се рисува в черно.
  6. Потребителско ръководство: Включено потребителско ръководство, предоставящо инструкции за използване на инструмента.

Технически Детайли

  • HTML Структура: Използва HTML5 с елемент canvas за рисуване на кривата на Безие.
  • CSS Стилизация: Използва CSS за стилизация на интерфейсните елементи, като се възползва от flexbox за подреждане и подбор на цветове за подобряване на естетиката.
  • JavaScript Имплементация: Функционалността е реализирана с JavaScript, като се използва алгоритъмът на Де Кастелжо за подразбиване на кривата на Безие и събитийни слушатели за мишкови взаимодействия.

Инструкции за Използване

  1. Добавяне на контролни точки: Кликнете с левия бутон на мишката върху платното.
  2. Плъзгач: Преместете плъзгача наляво и надясно, за да регулирате подразбиването на кривата.
  3. Влачене на контролни точки: Задръжте левия бутон на мишката върху точката и я влачете за да промените позицията й.
  4. Премахване на контролни точки: Изтрийте последно добавената точка с десен бутон на мишката или премахнете всички точки с бутона "Remove All".
  5. Визуализация на Безиеровата крива: Отметнете отметката "Visualize Bezier Curve", за да превключите видимостта на кривата на Безие.
  6. Нулиране на Платното: Кликнете бутона "Remove All", за да изтриете всички контролни точки.

Съвместимост

Проектът е създаден да работи на модерни уеб браузъри, поддържащи HTML5, CSS3 и JavaScript. Уверете се, че вашият браузър е актуализиран.

About

A repository for the final project of the Computer Aided Geometric Design Course 2023-2024 at FMI

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published