Given a triangle mesh $\mathcal{T}$ with vertices $V=\{\mathbf{v}_i\}_{i=1}^n$ in $\mathbb{R}^3$ and triangles $T_{ijk}=[\mathbf{v}_i, \mathbf{v}_j, \mathbf{v}_k]$.
For each vertex $\mathbf{v}_i$, I have a scalar value $f_v(\mathbf{v}_i)=U_i$.
For each edge $\mathbf{e}_j$, connecting vertices $\mathbf{v}_a$ and $\mathbf{v}_b$, I have a scalar function $f_e(\mathbf{e}_j, t) = At^2+Bt+C$. The scalars $A$, $B$ and $C$ are chosen such that for $t\in[0,1]$ the edge function $f_e$ interpolates $f_v$ in its vertices, i.e. $f_e(\mathbf{e}_j,0)=U_a$ and $f_e(\mathbf{e}_j, 1)=U_b$.
I wish to find a function $f(\mathbf{p}), \mathbf{p}\in\mathcal{T}$ which interpolates all the edge functions.
I suppose the simplest solution is to seek an interpolating surface locally on each triangle. The surfaces over each triangle would then join with $\mathcal{C}^0$ continuity across edges in $\mathcal{T}$.
What is the best way to find a surface on $T_{ijk}$ which interpolates the functions on all three edges?
Bonus question: Is it possible to get $\mathcal{C}^1$ continuity between patches across each edge?
I first asked this question at Mathematics SE, but got a tip to ask here instead.