using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace skyscraper8.Skyscraper.Math
{
	public struct SpatialReferenceWithHeight
	{
		public SpatialReferenceWithHeight(double latitude, double longitude, double height)
		{
			Latitude = latitude;
			Longitude = longitude;
			Height = height;
		}

		public double Latitude { get; set; }
		public double Longitude { get; set; }
		public double Height { get; set; }

		public override bool Equals(object? obj)
		{
			return obj is SpatialReferenceWithHeight height &&
				   Latitude == height.Latitude &&
				   Longitude == height.Longitude &&
				   Height == height.Height;
		}

		public override int GetHashCode()
		{
			return HashCode.Combine(Latitude, Longitude, Height);
		}
	}
}
