public override AxisAlignedBoundingBox GetAxisAlignedBoundingBox(Matrix4X4 matrix) { if (Children.Count == 2) { AxisAlignedBoundingBox bounds; using (FitBounds.RebuildLock()) { FitBounds.Visible = true; bounds = base.GetAxisAlignedBoundingBox(matrix); FitBounds.Visible = false; } return(bounds); } return(base.GetAxisAlignedBoundingBox(matrix)); }
private void UpdateBoundsItem() { if (Children.Count == 2) { var transformAabb = ItemWithTransform.GetAxisAlignedBoundingBox(); var fitAabb = FitBounds.GetAxisAlignedBoundingBox(); var fitSize = fitAabb.Size; var width = Width.Value(this); var depth = Depth.Value(this); var height = Height.Value(this); var boundsSize = new Vector3(width, depth, height); if (boundsSize.X != 0 && boundsSize.Y != 0 && boundsSize.Z != 0 && (fitSize != boundsSize || fitAabb.Center != transformAabb.Center)) { FitBounds.Matrix *= Matrix4X4.CreateScale( boundsSize.X / fitSize.X, boundsSize.Y / fitSize.Y, boundsSize.Z / fitSize.Z); FitBounds.Matrix *= Matrix4X4.CreateTranslation( transformAabb.Center - FitBounds.GetAxisAlignedBoundingBox().Center); } } }
public override int GetHashCode() { unchecked // Overflow is fine, just wrap { int hashCode = 41; if (Domain != null) { hashCode = hashCode * 59 + Domain.GetHashCode(); } if (FitBounds != null) { hashCode = hashCode * 59 + FitBounds.GetHashCode(); } if (Resolution != null) { hashCode = hashCode * 59 + Resolution.GetHashCode(); } if (Scope != null) { hashCode = hashCode * 59 + Scope.GetHashCode(); } if (Projection != null) { hashCode = hashCode * 59 + Projection.GetHashCode(); } if (Center != null) { hashCode = hashCode * 59 + Center.GetHashCode(); } if (Visible != null) { hashCode = hashCode * 59 + Visible.GetHashCode(); } if (ShowCoastlines != null) { hashCode = hashCode * 59 + ShowCoastlines.GetHashCode(); } if (CoastlineColor != null) { hashCode = hashCode * 59 + CoastlineColor.GetHashCode(); } if (CoastlineWidth != null) { hashCode = hashCode * 59 + CoastlineWidth.GetHashCode(); } if (ShowLand != null) { hashCode = hashCode * 59 + ShowLand.GetHashCode(); } if (LandColor != null) { hashCode = hashCode * 59 + LandColor.GetHashCode(); } if (ShowOcean != null) { hashCode = hashCode * 59 + ShowOcean.GetHashCode(); } if (OceanColor != null) { hashCode = hashCode * 59 + OceanColor.GetHashCode(); } if (ShowLakes != null) { hashCode = hashCode * 59 + ShowLakes.GetHashCode(); } if (LakeColor != null) { hashCode = hashCode * 59 + LakeColor.GetHashCode(); } if (ShowRivers != null) { hashCode = hashCode * 59 + ShowRivers.GetHashCode(); } if (RiverColor != null) { hashCode = hashCode * 59 + RiverColor.GetHashCode(); } if (RiverWidth != null) { hashCode = hashCode * 59 + RiverWidth.GetHashCode(); } if (ShowCountries != null) { hashCode = hashCode * 59 + ShowCountries.GetHashCode(); } if (CountryColor != null) { hashCode = hashCode * 59 + CountryColor.GetHashCode(); } if (CountryWidth != null) { hashCode = hashCode * 59 + CountryWidth.GetHashCode(); } if (ShowSubUnits != null) { hashCode = hashCode * 59 + ShowSubUnits.GetHashCode(); } if (SubUnitColor != null) { hashCode = hashCode * 59 + SubUnitColor.GetHashCode(); } if (SubUnitWidth != null) { hashCode = hashCode * 59 + SubUnitWidth.GetHashCode(); } if (ShowFrame != null) { hashCode = hashCode * 59 + ShowFrame.GetHashCode(); } if (FrameColor != null) { hashCode = hashCode * 59 + FrameColor.GetHashCode(); } if (FrameWidth != null) { hashCode = hashCode * 59 + FrameWidth.GetHashCode(); } if (BgColor != null) { hashCode = hashCode * 59 + BgColor.GetHashCode(); } if (LonAxis != null) { hashCode = hashCode * 59 + LonAxis.GetHashCode(); } if (LaTaxis != null) { hashCode = hashCode * 59 + LaTaxis.GetHashCode(); } if (UiRevision != null) { hashCode = hashCode * 59 + UiRevision.GetHashCode(); } return(hashCode); } }
public bool Equals([AllowNull] Geo other) { if (other == null) { return(false); } if (ReferenceEquals(this, other)) { return(true); } return((Domain == other.Domain && Domain != null && other.Domain != null && Domain.Equals(other.Domain)) && (FitBounds == other.FitBounds && FitBounds != null && other.FitBounds != null && FitBounds.Equals(other.FitBounds)) && (Resolution == other.Resolution && Resolution != null && other.Resolution != null && Resolution.Equals(other.Resolution)) && (Scope == other.Scope && Scope != null && other.Scope != null && Scope.Equals(other.Scope)) && (Projection == other.Projection && Projection != null && other.Projection != null && Projection.Equals(other.Projection)) && (Center == other.Center && Center != null && other.Center != null && Center.Equals(other.Center)) && (Visible == other.Visible && Visible != null && other.Visible != null && Visible.Equals(other.Visible)) && (ShowCoastlines == other.ShowCoastlines && ShowCoastlines != null && other.ShowCoastlines != null && ShowCoastlines.Equals(other.ShowCoastlines)) && (CoastlineColor == other.CoastlineColor && CoastlineColor != null && other.CoastlineColor != null && CoastlineColor.Equals(other.CoastlineColor)) && (CoastlineWidth == other.CoastlineWidth && CoastlineWidth != null && other.CoastlineWidth != null && CoastlineWidth.Equals(other.CoastlineWidth)) && (ShowLand == other.ShowLand && ShowLand != null && other.ShowLand != null && ShowLand.Equals(other.ShowLand)) && (LandColor == other.LandColor && LandColor != null && other.LandColor != null && LandColor.Equals(other.LandColor)) && (ShowOcean == other.ShowOcean && ShowOcean != null && other.ShowOcean != null && ShowOcean.Equals(other.ShowOcean)) && (OceanColor == other.OceanColor && OceanColor != null && other.OceanColor != null && OceanColor.Equals(other.OceanColor)) && (ShowLakes == other.ShowLakes && ShowLakes != null && other.ShowLakes != null && ShowLakes.Equals(other.ShowLakes)) && (LakeColor == other.LakeColor && LakeColor != null && other.LakeColor != null && LakeColor.Equals(other.LakeColor)) && (ShowRivers == other.ShowRivers && ShowRivers != null && other.ShowRivers != null && ShowRivers.Equals(other.ShowRivers)) && (RiverColor == other.RiverColor && RiverColor != null && other.RiverColor != null && RiverColor.Equals(other.RiverColor)) && (RiverWidth == other.RiverWidth && RiverWidth != null && other.RiverWidth != null && RiverWidth.Equals(other.RiverWidth)) && (ShowCountries == other.ShowCountries && ShowCountries != null && other.ShowCountries != null && ShowCountries.Equals(other.ShowCountries)) && (CountryColor == other.CountryColor && CountryColor != null && other.CountryColor != null && CountryColor.Equals(other.CountryColor)) && (CountryWidth == other.CountryWidth && CountryWidth != null && other.CountryWidth != null && CountryWidth.Equals(other.CountryWidth)) && (ShowSubUnits == other.ShowSubUnits && ShowSubUnits != null && other.ShowSubUnits != null && ShowSubUnits.Equals(other.ShowSubUnits)) && (SubUnitColor == other.SubUnitColor && SubUnitColor != null && other.SubUnitColor != null && SubUnitColor.Equals(other.SubUnitColor)) && (SubUnitWidth == other.SubUnitWidth && SubUnitWidth != null && other.SubUnitWidth != null && SubUnitWidth.Equals(other.SubUnitWidth)) && (ShowFrame == other.ShowFrame && ShowFrame != null && other.ShowFrame != null && ShowFrame.Equals(other.ShowFrame)) && (FrameColor == other.FrameColor && FrameColor != null && other.FrameColor != null && FrameColor.Equals(other.FrameColor)) && (FrameWidth == other.FrameWidth && FrameWidth != null && other.FrameWidth != null && FrameWidth.Equals(other.FrameWidth)) && (BgColor == other.BgColor && BgColor != null && other.BgColor != null && BgColor.Equals(other.BgColor)) && (LonAxis == other.LonAxis && LonAxis != null && other.LonAxis != null && LonAxis.Equals(other.LonAxis)) && (LaTaxis == other.LaTaxis && LaTaxis != null && other.LaTaxis != null && LaTaxis.Equals(other.LaTaxis)) && (UiRevision == other.UiRevision && UiRevision != null && other.UiRevision != null && UiRevision.Equals(other.UiRevision))); }