/** * @param semiMajorAxis * @param eccentricity * @param units * @param id * containing all id relevant data. */ public Ellipsoid( double semiMajorAxis, double eccentricity, IUnit units, CRSResource id ) { super( id ); this.units = units; this.semiMajorAxis = semiMajorAxis; this.eccentricity = eccentricity; this.squaredEccentricity = this.eccentricity * this.eccentricity; this.flattening = calcFlattening( eccentricity ); if ( Math.abs( flattening ) > 0.00001 ) { this.inverseFlattening = 1d / flattening; } else { this.inverseFlattening = 0; } this.semiMinorAxis = this.semiMajorAxis - ( flattening * this.semiMajorAxis ); }