Počítačová grafika 2023/24

Plochy

Přímková přechodová plocha

interpolační plocha mezi dvěma zadanými okraji

Přímková přechodová plocha

Dáno: dva okraje plátu ve směru u (tj. $P_0(u), P_1(u)$)
vektorová rovnice: $P(u,v)=(1-v)P_0(u)+vP_1(u), (u,v)\in [0,1]^2$

Přímková přechodová plocha

Dáno: dva okraje ve směru v (tj. $P_0(v), P_1(v)$)
vektorová rovnice: $P(u,v)=(1-u)P_0(v)+uP_1(v), (u,v)\in [0,1]^2$

Přímková přechodová plocha - vlastnosti

  • interpoluje dané okraje
  • parametrické křivky druhého systému než dané okraje jsou úsečky

Příklad

Přímková přechodová plocha je dána okraji
\[P_0(v)=(0,v,1-v^2), P_1(v)=(3,2v,0), v\in[0,1].\]
Určete:
  • vektorovou rovnici plátu
  • vektorové rovnice zbývajících okrajů
  • rohové body plátu
  • tečné vektory v rozích plátu
  • vektory zkrutu v rozích plátu

Plát načrtněte pomocí okrajových křivek.
okraje: $P_0(v)=(0,v,1-v^2), P_1(v)=(3,2v,0)$
vektorová rovnice - obecně: $P(u,v)= (1-u)P_0(v)+uP_1(v), (u,v)\in[0,1]^2$

vektorová rovnice - dosazení:

$P(u,v)=(3u,v(1+u),(1-v^2)(1-u)), (u,v)\in[0,1]^2$

rovnice zbývajích okrajů:

$P_0(u)=(3u,0,1-u),\ P_1(u)=(3u,1+u,0), u\in[0,1]$

rovnice tečných vektorů:

$P^u(u,v)=(3,v,v^2-1)$
$P^v(u,v)=(0,1+u,2v(u-1))$

rovnice vektorů zkrutu:

$P^{uv}(u,v)=(0,1,2v)$

rohové body plátu:

$P_{0,0}=(0,0,1),P_{0,1}=(0,1,0), P_{1,0}=(3,0,0), P_{1,1}=(3,2,0)$

tečné vektory v rozích:

$P^u(0,0)=(3,0,-1),\ P^v(0,0)=(0,1,0)$
$P^u(0,1)=(3,1,0), \ P^v(0,1)=(0,1,-2)$
$P^u(1,0)=(3,0,-1), \ P^v(1,0)=(0,2,0)$
$P^u(1,1)=(3,1,0), \ P^v(1,1)=(0,2,0)$

vektory zkrutu v rozích:

$P^{uv}(0,0)=(0,1,0)$
$P^{uv}(0,1)=(0,1,2)$
$P^{uv}(1,0)=(0,1,0)$
$P^{uv}(1,1)=(0,1,2)$

Přímková přechodová plocha

Plocha hyperbolického paraboloidu

interpolační plocha mezi 4 danými body

Plocha hyperbolického paraboloidu

Dáno: rohy plátu (tj. body $P_{0,0}, P_{0,1}, P_{1,0}, P_{1,1}$)

Vektorová rovnice

přímková přechodová plocha mezi dvěma okraji - úsečkami:

úsečka mezi $P_{0,0}$ a $P_{1,0}:$ $P_0(u)=(1-u)P_{0,0}+uP_{1,0}$
úsečka mezi $P_{0,1}$ a $P_{1,1}$: $P_1(u)=(1-u)P_{0,1}+uP_{1,1}$
rovnice přímkové přechodové plochy: $P(u,v)=(1-v)P_0(u)+vP_1(u)$


\[P(u,v)=(1-u)(1-v)P_{0,0}+v(1-u)P_{0,1}+u(1-v)P_{1,0}+uvP_{1,1},\]$(u,v)\in [0,1]^2$

Hyperbolický paraboloid - vlastnosti

  • interpoluje rohy plátu (i okrajové úsečky)
  • parametrické křivky obou soustav jsou úsečky
  • je speciálním případem přímkové přechodové plochy
  • vektor zkrutu je konstantní podél celého plátu

Coonsova bilineární plocha

souvislost s přímkovou přechodovou plochou a plochou hyperbolického paraboloidu:

Coonsova bilineární plocha

Vektorová rovnice:$$P(u,v)=(1-u,1,u)\cdot M\cdot\begin{pmatrix}1-v\\1\\v\end{pmatrix};\ (u,v)\in [0,1]^2$$

Mapa plátu:$$M=\begin{pmatrix}-P_{00}&P_0(v)&-P_{01}\\P_0(u)&\vec{o}&P_1(u)\\-P_{10}&P_1(v)&-P_{11}\end{pmatrix}$$

Coonsova bilineární plocha

$$P(u,v)=\color{blue}{(1-v)P_0(u)+vP_1(u)}+\color{green}{(1-u)P_0(v)+uP_1(v)}-\\-(\color{purple}{(1-u)(1-v)P_{00}+u(1-v)P_{10}+v(1-u)P_{01}+uvP_{11}})$$

$$P(u,v)=\color{blue}{R(u,v)}+\color{green}{S(u,v)}-\color{purple}{T(u,v)}$$

Coonsova bilineární plocha

Bézierova plocha

de Casteljau algoritmus konstrukce bodu
- plošný

Příklad

Bézierova plocha

de Casteljau algoritmus konstrukce bodu
- křivkový

Příklad