/// <summary> /// Erstellt eine neue Fläche. /// </summary> /// <param name="position">Die Position auf dem Spielfeld.</param> /// <param name="ausdehnung">Die relative Größe.</param> protected Fläche( Position position, Ausdehnung ausdehnung ) { // Merken Ausdehnung = ausdehnung; m_position = position; // Bereich festlegen Bereich = Bereich.Erzeugen( m_position, Ausdehnung ); }
/// <summary> /// Verschiebt dieses Element nach einem Analyseschritt. /// </summary> /// <param name="schritt">Die Schrittweite.</param> public void BereichGemäßSchrittweiteVerschieben( Ausdehnung schritt ) { // Bereich neu berechnen - der Ursprung verschiebt sich nach rechts oben, i.e. unsere relativen Koordinaten nach links unten Bereich = Bereich.Erzeugen ( Bereich.KleinsteHorizontalePosition - schritt.Breite, Bereich.KleinsteVertikalePosition - schritt.Höhe, Bereich.Breite, Bereich.Höhe ); }
/// <summary> /// Erstellt ein neues Element. /// </summary> /// <param name="position">Die Position des Elementes auf dem Spielfeld.</param> /// <param name="ausdehnung">Die relative Größe des Elementes.</param> /// <param name="initialDeaktiviert">Gesetzt, wenn das Element bei Beginn nicht berücksichtigt wird.</param> /// <param name="name">Der optionale Name dieses Elementes.</param> public Element( Position position, Ausdehnung ausdehnung, bool initialDeaktiviert, string name ) : base(position, ausdehnung, initialDeaktiviert, name) { }
/// <summary> /// Erstellt ein neues Element. /// </summary> /// <param name="position">Die Position auf dem Spielfeld.</param> /// <param name="ausdehnung">Die relative Größe.</param> /// <returns>Die neue Fläche.</returns> public static Fläche Erzeugen( Position position, Ausdehnung ausdehnung ) { // Durchreichen return new Fläche( position, ausdehnung ); }