⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 node.cs

📁 This is a document about routing [a spatial analysis - network]
💻 CS
字号:
using System;
using System.Collections;

namespace MapService
{
	public class Node
	{
		#region Private Member Variables
		// private member variables
		private string key;
		private object data;
        private double lon;

        public double Lon
        {
            get { return lon; }
            set { lon = value; }
        }
        private double lat;

        public double Lat
        {
            get { return lat; }
            set { lat = value; }
        }

		private AdjacencyList neighbors;
		#endregion

		#region Constructors
		private Node() {}		// remove default constructor

        public Node(string key, double lon, double lat):this(key,null)
        {
            this.lon = lon;
            this.lat = lat;
        }

        public Node(string key, object data) : this(key, data, null) {}

		public Node(string key, object data, AdjacencyList neighbors)
		{
			this.key = key;
			this.data = data;
			if (neighbors == null)
				this.neighbors = new AdjacencyList();
			else
				this.neighbors = neighbors;
		}
		#endregion


		protected internal virtual void AddEdge(Node n, bool twoway)
		{
            neighbors.Add(new EdgeToNeighbor(this, n, twoway));
		}

		#region Public Properties
		/// <summary>
		/// Returns the Node's Key.
		/// </summary>
		public virtual string Key
		{
			get
			{
				return key;
			}
		}

		/// <summary>
		/// Returns the Node's Data.
		/// </summary>
		public virtual object Data
		{
			get
			{
				return data;
			}
			set
			{
				data = value;
			}
		}

		/// <summary>
		/// Returns an AdjacencyList of the Node's neighbors.
		/// </summary>
		public virtual AdjacencyList Neighbors
		{
			get
			{
				return neighbors;
			}
		}
		#endregion
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -