This is an old revision of the document!


Laboratorul 09

Reamintire!!! Puteți prezenta rezolvările cerințelor de până la 2 laboratoare, în fiecare săptămână. De exemplu, puteți prezenta laboratorul curent și pe cel din săptămâna anterioară, în totalitate sau parțial, inclusiv punctajul pentru cerința bonus :) .

Pentru rezolvarea cerințelor din cadrul acestui labroator:

  1. Descărcați framwork-ul de laborator și copiați, din arhiva descărcată, directorul Lab9, în interiorul directorului gfx-framework-ppbg\src\lab din versiunea voastră de proiect.
  2. Adăugați în fișierul lab_list.h, linia #include “lab/lab9/lab9.h”.
  3. Folosiți din nou utilitarul CMake pentru a regenera proiectul. Pentru a vă reaminti procesul de realizare a setup-ului, puteți să reconsultați pagina dedicată acestui lucru.

Curbe de forma libera

Introducem conceptul de curba de forma libera pentru acele curbe ce nu pot fi definite analitic, printr-o formula inchisa. Exemple de curbe analitice sunt:

  • Cercul - (x-a)^2 + (y-a)^2 = r
  • Elipsa -

Curbe Bézier

Prima curba de forma libera ce a fost definita, cronologic, este curba de baza descrisa mai jos ce a fost popularizata de catre Pierre Bézier in anii 60'. Aceasta este descrisa initial de catre Paul de Casteljau in obtinerea unui patent in 1959, dar este publicata abia in anii 80'. Cei doi autori au dezvoltat parametrizarea acestei forme independent.

Curba Bézier este o curba de aproximare ce contine un set de puncte ce controleaza forma curbei. Acest set poate contine orice numar de puncte. Formula pentru 2, 3 si 4 puncte de control arata in felul urmator:

Nr.
puncte
control
Formula Reprezentare vizuala
2 $ B_2(P_0, P_1, t) = (1-t) \cdot P_0 + t \cdot P_1 $
3 $ B_3(P_0, P_1, P_2, t) = (1-t) \cdot B_2(P_0, P_1, t) + t \cdot B_2(P_1, P_2, t) $
4 $ B_4(P_0, P_1, P_2, P_3, t) = (1-t) \cdot B_3(P_0, P_1, P_2, t) + t \cdot B_3(P_1, P_2, P_3, t) $
ppbg/laboratoare/09.1702484476.txt.gz · Last modified: 2023/12/13 18:21 by andrei.lambru
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0