예제 #1
0
        public override int GetHashCode()
        {
            int hash = 1;

            if (LaneId.Length != 0)
            {
                hash ^= LaneId.GetHashCode();
            }
            if (Length != 0D)
            {
                hash ^= Length.GetHashCode();
            }
            hash ^= leftOut_.GetHashCode();
            hash ^= rightOut_.GetHashCode();
            if (Cost != 0D)
            {
                hash ^= Cost.GetHashCode();
            }
            if (centralCurve_ != null)
            {
                hash ^= CentralCurve.GetHashCode();
            }
            if (IsVirtual != false)
            {
                hash ^= IsVirtual.GetHashCode();
            }
            if (RoadId.Length != 0)
            {
                hash ^= RoadId.GetHashCode();
            }
            return(hash);
        }
예제 #2
0
 public void MergeFrom(Node other)
 {
     if (other == null)
     {
         return;
     }
     if (other.LaneId.Length != 0)
     {
         LaneId = other.LaneId;
     }
     if (other.Length != 0D)
     {
         Length = other.Length;
     }
     leftOut_.Add(other.leftOut_);
     rightOut_.Add(other.rightOut_);
     if (other.Cost != 0D)
     {
         Cost = other.Cost;
     }
     if (other.centralCurve_ != null)
     {
         if (centralCurve_ == null)
         {
             centralCurve_ = new global::Apollo.Hdmap.Curve();
         }
         CentralCurve.MergeFrom(other.CentralCurve);
     }
     if (other.IsVirtual != false)
     {
         IsVirtual = other.IsVirtual;
     }
     if (other.RoadId.Length != 0)
     {
         RoadId = other.RoadId;
     }
 }