Ejemplo n.º 1
0
 /// <summary>
 /// Normalize a vector.
 /// </summary>
 public static tv3 Norm3(ev3 v3) => EEx.ResolveV3(v3, xyz => {
     var mag = VFloat();
     return(Ex.Block(new[] { mag },
                     mag.Is(v3Mag(xyz)),
                     Ex.Condition(mag.GT(ExC(M.MAG_ERR)),
                                  xyz.Mul(E1.Div(mag)),
                                  xyz
                                  )
                     ));
 });
Ejemplo n.º 2
0
 /// <summary>
 /// Normalize a vector.
 /// </summary>
 public static tv2 Norm(ev2 v2) => EEx.ResolveV2(v2, xy => {
     var mag = VFloat();
     return(Ex.Block(new[] { mag },
                     mag.Is(Mag(xy)),
                     Ex.Condition(mag.GT(ExC(M.MAG_ERR)),
                                  xy.Mul(E1.Div(mag)),
                                  xy
                                  )
                     ));
 });