load (draw); load(vector_rebuild); listarith : true; domxmxops: true; P : [0,0,0]; u : [1,0,0]; v : [0,1,0]; B : [2, 2, 3]; /* Hier multiplizieren wir mit 5, damit das Bild schoener wird*/ n : 5*(u~v); L : P + n * (B . n) / (n . n); offset : [-0.4,0,0]; alabeltmp : ["p"]; alabel : append (alabeltmp, P + offset); plabeltmp : ["B"]; plabel : append (plabeltmp, B - 2*offset); Llabeltmp : ["L"]; Llabel : append (Llabeltmp, L + 2*offset); P00 : P + 0*u + 0*v; P01 : P + 0*u + 1*v; P02 : P + 0*u + 2*v; P03 : P + 0*u + 3*v; P10 : P + 1*u + 0*v; P11 : P + 1*u + 1*v; P12 : P + 1*u + 2*v; P13 : P + 1*u + 3*v; P20 : P + 2*u + 0*v; P21 : P + 2*u + 1*v; P22 : P + 2*u + 2*v; P23 : P + 2*u + 3*v; P30 : P + 3*u + 0*v; P31 : P + 3*u + 1*v; P32 : P + 3*u + 2*v; P33 : P + 3*u + 3*v; draw3d ( head_length = 0.3, xrange = [-0,4], yrange = [-0,4], zrange = [-0,4], axis_3d = false, xtics = 'none, ytics = 'none, ztics = 'none, points_joined = true, point_size = 0, color = black, /* Netz */ points ([P00, P01, P02, P03]), points ([P10, P11, P12, P13]), points ([P20, P21, P22, P23]), points ([P30, P31, P32, P33]), points ([P00, P10, P20, P30]), points ([P01, P11, P21, P31]), points ([P02, P12, P22, P32]), points ([P03, P13, P23, P33]), line_type = dots, points ([B,L]), line_type = solid, color = red, vector (P, n), color = black, vector (P, B-P), font_size = 25, label (alabel), label (plabel), label (Llabel), dimensions = [300,300], file_name = "hnf", terminal = png );