Point-normal triangle
{{Orphan|date=January 2024}}
The curved point-normal triangle, in short PN triangle, is an interpolation algorithm to retrieve a cubic Bézier triangle from the vertex coordinates of a regular flat triangle and normal vectors. The PN triangle retains the vertices of the flat triangle as well as the corresponding normals. For computer graphics applications, additionally a linear or quadratic interpolant of the normals is created to represent an incorrect but plausible normal when rendering and so giving the impression of smooth transitions between adjacent PN triangles.{{Cite book|last1=Vlachos|first1=Alex|last2=Peters|first2=Jörg|last3=Boyd|first3=Chas|last4=Mitchell|first4=Jason L.|date=2001-03-01|title=Curved PN triangles|url=https://archive.org/details/siggraph2001conf00fium/page/159|publisher=ACM|pages=[https://archive.org/details/siggraph2001conf00fium/page/159 159–166]|doi=10.1145/364338.364387|isbn=978-1581132922|s2cid=5227025|url-access=registration}} The usage of the PN triangle enables the visualization of triangle based surfaces in a smoother shape at low cost in terms of rendering complexity and time.
Mathematical formulation
With information of the given vertex positions
of a flat triangle and the according normal vectors
\mathbf{N}_{2},
\mathbf{N}_{3}
at the vertices a cubic Bézier triangle is constructed. In contrast to the notation of the Bézier triangle page the nomenclature follows G. Farin (2002),{{Cite book |title=Curves and surfaces for CAGD : a practical guide |last=Farin |first=Gerald E. |date=2002 |publisher=Morgan Kaufmann |isbn=9780080503547 |edition=5th |location=San Francisco, CA |oclc=181100270}} therefore we denote the 10 control points as
with the positive indices holding the condition
.
The first three control points are equal to the given vertices. Six control points related to the triangle edges, i.e.
are computed as
\mathbf{b}_{012} &= \frac{1}{3} \left( 2 \mathbf{P}_{3} + \mathbf{P}_{2} - \omega_{32}\mathbf{N}_{3}\right), &
\mathbf{b}_{021} &= \frac{1}{3} \left( 2 \mathbf{P}_{2} + \mathbf{P}_{3} - \omega_{23}\mathbf{N}_{2}\right), &&\\
\mathbf{b}_{102} &= \frac{1}{3} \left( 2 \mathbf{P}_{3} + \mathbf{P}_{1} - \omega_{31}\mathbf{N}_{3}\right), &
\mathbf{b}_{201} &= \frac{1}{3} \left( 2 \mathbf{P}_{1} + \mathbf{P}_{3} - \omega_{13}\mathbf{N}_{1}\right), &&\\
\mathbf{b}_{120} &= \frac{1}{3} \left( 2 \mathbf{P}_{2} + \mathbf{P}_{1} - \omega_{21}\mathbf{N}_{2}\right), &
\mathbf{b}_{210} &= \frac{1}{3} \left( 2 \mathbf{P}_{1} + \mathbf{P}_{2} - \omega_{12}\mathbf{N}_{1}\right) &
\qquad \text{with} \quad \omega_{ij} &= \left( \mathbf{P}_{j} - \mathbf{P}_{i} \right) \cdot \mathbf{N}_{i}.\\
\end{align}
This definition ensures that the original vertex normals are reproduced in the interpolated triangle.
Finally the internal control point
is derived from the previously calculated control points as
\mathbf{b}_{111} &= \mathbf{E} + \frac{1}{2} \left(\mathbf{E} - \mathbf{V}\right)\\
\text{with}&\quad \mathbf{E} = \frac{1}{6} \left(\mathbf{b}_{012} + \mathbf{b}_{021} + \mathbf{b}_{102} + \mathbf{b}_{201} + \mathbf{b}_{120} + \mathbf{b}_{210}\right)\\
\text{and}&\quad \mathbf{V} = \frac{1}{3} \left(\mathbf{P}_{1} + \mathbf{P}_{2}+ \mathbf{P}_{3}\right).
\end{align}
An alternative interior control point
\mathbf{b}_{111} &= \mathbf{E} + 5 \left(\mathbf{E} - \mathbf{V}\right)
\end{align}
was suggested in.{{cite patent
| country = USA
| number = 6,462,738
| status =
| title = Curved Surface Reconstruction
| pubdate = oct. 08, 2002
| gdate =
| fdate = Dec. 17, 1999
| pridate =
| inventor = Kato, Saul S.
| invent1 =
| invent2 =
| assign1 =
| assign2 =
| class =
| url = https://patentimages.storage.googleapis.com/79/a1/22/171ff5c130c38a/US6462738.pdf
}}