Bézier triangel
En Bézier-triangel är en speciell typ av Bézier-yta som skapas av ( linjär , kvadratisk , kubisk eller högre grad) interpolation av kontrollpunkter.
n: e ordningens Bézier-triangel
En allmän n :te ordningens Bézier-triangel har ( n +1 )( n + 2)/2 kontrollpunkter α i β j γ k där i , j , k är icke-negativa heltal så att i + j + k = n . Ytan definieras då som
för alla icke-negativa reella tal s + t + u = 1.
Med linjär ordning ( ), är den resulterande Bézier-triangeln faktiskt en vanlig platt triangel , där triangelns hörn är lika med de tre kontrollpunkterna. En kvadratisk ( ) Bézier-triangel har 6 kontrollpunkter som alla är placerade på kanterna. Den kubiska ( ) Bézier-triangeln definieras av 10 kontrollpunkter och är den lägsta ordningens Bézier-triangel som har en intern kontrollpunkt, inte placerad på kanterna. I alla fall kommer kanterna på triangeln att vara Bézier-kurvor av samma grad.
Kubisk Bézier-triangel
En kubisk Bézier-triangel är en yta med ekvationen
där α 3 , β 3 , γ 3 , α 2 β, αβ 2 , β 2 γ, βγ 2 , αγ 2 , α 2 γ och αβγ är kontrollpunkterna för triangeln och s , t , u (med s , t , u ( , t , u ≤ 1 och s + t + u = 1) är de barycentriska koordinaterna inuti triangeln.
Alternativt kan en kubisk Bézier-triangel uttryckas som en mer generaliserad formulering som
i enlighet med formuleringen av § n th-ordningens Bézier-triangel .
Triangelns hörn är punkterna α 3 , β 3 och γ 3 . Kanterna på triangeln är själva Bézier-kurvor , med samma kontrollpunkter som Bézier-triangeln.
Genom att ta bort termen γ u uppstår en vanlig Bézier-kurva. Även om det inte är särskilt användbart för visning på en fysisk datorskärm, genom att lägga till extra termer, resulterar en Bézier- tetraeder eller Bézier- polytop .
På grund av ekvationens natur kommer hela triangeln att finnas inom volymen som omges av kontrollpunkterna, och affina transformationer av kontrollpunkterna kommer att transformera hela triangeln korrekt på samma sätt.
Halvera en kubisk Bézier-triangel
En fördel med Bézier-trianglar i datorgrafik är att dela Bézier-triangeln i två separata Bézier-trianglar endast kräver addition och division med två, snarare än aritmetik med flyttal . Detta betyder att medan Bézier-trianglar är jämna, kan de lätt approximeras med vanliga trianglar genom att rekursivt dela triangeln i två tills de resulterande trianglarna anses vara tillräckligt små.
Följande beräknar de nya kontrollpunkterna för halvan av hela Bézier-triangeln med hörnet α 3 , ett hörn halvvägs längs Bézier-kurvan mellan α 3 och β 3 , och det tredje hörnet γ 3 .
- på motsvarande sätt, endast med addition och division med två,
- där := betyder att ersätta vektorn till vänster med vektorn till höger.
- Observera att halvering av en Bézier-triangel liknar att halvera Bézier-kurvor av alla ordningsföljder upp till ordningen för Bézier-triangeln.
Se även
- Bézier-kurva
- Bézier-yta (biquadratic patches är Bézier-rektanglar)
- Yta
externa länkar
- Kvadratiska Bézier-trianglar som ritningsprimitiver Innehåller mer information om plana och kvadratiska Bézier-trianglar.
- Uppsats om användningen av kubiska Bézier-lappar i raytracing (tyska)
-
"Ray Tracing Triangular Bézier Patches". CiteSeerX 10.1.1.18.5646 .
{{ citera webben }}
: Saknas eller är tom|url=
( hjälp ) -
"Triangulär Bézier-klippning". CiteSeerX 10.1.1.62.8062 .
{{ citera webben }}
: Saknas eller är tom|url=
( hjälp ) - Böjda PN-trianglar (en speciell sorts kubiska Bézier-trianglar)
- Formmedveten normal interpolation för krökt ytskuggning från polyedrisk approximation
- Pixel-Shader-baserade böjda trianglar
-
"Ytkonstruktion med nästan minst kvadratisk acceleration baserad på vertexnormaler på triangulära maskor". CiteSeerX 10.1.1.6.2521 .
{{ citera webben }}
: Saknas eller är tom|url=
( hjälp )