PlaPointRational(BigInteger p_x,BigInteger p_y,BigInteger p_z){
  rp_x=p_x;
  rp_y=p_y;
  rp_z=p_z;
  is_nan=p_z.signum() <= 0;
}

PlaPointRational ( BigInteger p_x , BigInteger p_y , BigInteger p_z ) { rp_x = p_x ; rp_y = p_y ; rp_z = p_z ; is_nan = p_z . signum ( ) <= 0 ; }
creates a retionalpoint from 3 bigintegers p_x , p_y and p_z . they represent the 2 - dimensinal point with the rational number tuple ( p_x / p_z , p_y / p_z ) . throws illegalargumentexception if denominator p_z is < = 0
