/// <summary> /// Überprüft ob sich das Umgebungsvolumen mit einem anderen überschneidet. /// </summary> /// <param name="other">Das andere Umgebungsvolumen</param> /// <returns>Gibt an ob Überschneidung erfolgt</returns> public bool Intersects(ModelSection.IBoundingVolume other) { ModelHitsphere otherSphere = (ModelHitsphere)other; if (OuterSphere.Transform(World).Intersects(otherSphere.OuterSphere.Transform(otherSphere.World))) { return(true); } else { return(false); } }
/// <summary> /// Kopierkonstruktor, erstellt eine seichte Kopie der BoundingSpheres erstellt aber eine neue World-Matrix /// </summary> /// <param name="modelHitsphere">Die originale ModelHitsphere</param> public ModelHitsphere(ModelHitsphere modelHitsphere) { this.OuterSphere = modelHitsphere.OuterSphere; this.InnerSpheres = modelHitsphere.InnerSpheres; this.World = Matrix.Identity; }