稜線の長さを求める 関数は以下のようになる。
/* 稜線の長さ */ void WH_Fem__Simplex2D__l (double whV_x0[2], double whV_x1[2], double whV_x2[2], int Iedge, double *OUT__l) /* 入力引数: whV_x0, whV_x1, whV_x2 はベクトルで、各頂点の位置 Iedge は0から2までの整数で、稜線ID 出力引数: OUT__l はスカラーで、稜線の長さ */ { double x0 = whV_x0[0]; double x1 = whV_x1[0]; double x2 = whV_x2[0]; double y0 = whV_x0[1]; double y1 = whV_x1[1]; double y2 = whV_x2[1]; switch (Iedge) { case 0: *OUT__l = sqrt ((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2)); break; case 1: *OUT__l = sqrt ((x2 - x0) * (x2 - x0) + (y2 - y0) * (y2 - y0)); break; case 2: *OUT__l = sqrt ((x0 - x1) * (x0 - x1) + (y0 - y1) * (y0 - y1)); break; default: assert(0); break; } }