public SphericalPoint(LinearUnit radius, AngularUnit HorizontalAngle, AngularUnit verticalAngle) { this.m_Radius = radius.ChangeTo <TLinear>(); this.m_HorizontalAngle = HorizontalAngle.ChangeTo <TAngular>(); this.m_VerticalAngle = verticalAngle.ChangeTo <TAngular>(); }
public Cartesian3DPoint(LinearUnit x, LinearUnit y, LinearUnit z) { this.m_X = x.ChangeTo <T>(); this.m_Y = y.ChangeTo <T>(); this.m_Z = z.ChangeTo <T>(); }
public GeodeticPoint(IEllipsoid ellipsoid, LinearUnit height, AngularUnit longitude, AngularUnit latitude) { if (latitude.Range != AngleRange.MinusPiTOPi) { latitude.Range = AngleRange.MinusPiTOPi; } this.m_Datum = ellipsoid.ChangeTo <TLinear, TAngular>(); this.m_Height = height.ChangeTo <TLinear>(); this.m_Latitude = latitude.ChangeTo <TAngular>(); this.m_Longitude = longitude.ChangeTo <TAngular>(); }
public Ellipsoid(string name, LinearUnit semiMajorAxis, double inverseFlattening, ICartesian3DPoint datumTranslation, OrientationParameter datumMisalignment, int srid) { this._datumTranslation = new Cartesian3DPoint <TLinear>(datumTranslation.X, datumTranslation.Y, datumTranslation.Z); this._datumMisalignment = new OrientationParameter(datumMisalignment.Omega.ChangeTo <TAngular>(), datumMisalignment.Phi.ChangeTo <TAngular>(), datumMisalignment.Kappa.ChangeTo <TAngular>()); this._name = name; this._srid = srid; this._semiMajorAxis = semiMajorAxis.ChangeTo <TLinear>(); double tempSemiMajor = this._semiMajorAxis.Value; if (inverseFlattening == 0) { this._semiMinorAxis = new TLinear() { Value = tempSemiMajor }; } else { this._semiMinorAxis = new TLinear() { Value = tempSemiMajor - tempSemiMajor / inverseFlattening }; } double tempSemiMinor = this._semiMinorAxis.Value; this._firstEccentricity = Math.Sqrt((tempSemiMajor * tempSemiMajor - tempSemiMinor * tempSemiMinor) / (tempSemiMajor * tempSemiMajor)); this._secondEccentricity = Math.Sqrt((tempSemiMajor * tempSemiMajor - tempSemiMinor * tempSemiMinor) / (tempSemiMinor * tempSemiMinor)); this.EsriName = string.Empty; }
public Cartesian2DPoint(LinearUnit x, LinearUnit y) { this.m_X = x.ChangeTo <T>(); this.m_Y = y.ChangeTo <T>(); }
public PolarPoint(LinearUnit radius, AngularUnit angle) { this.m_Radius = (TLinear)radius.ChangeTo <TLinear>(); this.m_Angle = (TAngular)angle.ChangeTo <TAngular>(); }