コード例 #1
0
ファイル: Kran.cs プロジェクト: MarvinKock/D47_WPF_KRAN
        public Kran(KranDarstellung drauf, Seitenansicht seit, double x, double y, double z, Laufband band)
        {
            this.draufsicht = drauf;
            this.seitsicht = seit;
            this.xKoordinate = x;
            this.yKoordinate = y;
            this.zKoordinate = z;

            this.band = band;

            this.kranDrauf = new kranDraufsicht(this.draufsicht, x, y);
            this.kranSeite = new kranSeitsicht(this.seitsicht, x, z, this);
            this.kisteKran = null;
        }
コード例 #2
0
ファイル: Laufband.cs プロジェクト: MarvinKock/D47_WPF_KRAN
 public Laufband()
 {
     this.turmBelegt = false;
     this.bandBelegt = false;
     this.bandAn = false;
     for (int i = 0; i < 3; i++)
         this.beroPuscher[i] = false;
     for (int i = 0; i < 4; i++)
     {
         this.lagerBelegt[i] = false;
         this.kistenAblageplatz[i] = null;
     }
     for (int i = 0; i < 2; i++)
     {
         this.zwischenlagerBelegt[i] = false;
         this.kistenLager[i] = null;
     }
     this.active = null;
     this.kisteTurm = null;
 }
コード例 #3
0
        async Task GetCraneStatus()
        {
            client.DefaultRequestHeaders.Accept.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

	
            // HTTP GET
            try
            {
                HttpResponseMessage response = await client.GetAsync("api/Crane/Status");
                if (response.IsSuccessStatusCode)
                {
                    JsonObjectKranStatus KranStatus = await response.Content.ReadAsAsync<JsonObjectKranStatus>();


                    double[] coords = new double[2];
                    coords = getCanvasCoord(KranStatus.X_Pos, KranStatus.Y_Pos);
                    kranarm.setKranPosition(coords[0], coords[1]);

                    if (KranStatus.Oben && !this.kranarm.armMoving())
                    {
                        this.kranarm.setKranarmOben();
                        vorherBeladen = false;
                    }

                    int KranUeberLager = kranarm.isUeberLager();

                    if (KranStatus.Beladen == true && kranarm.KisteKran == null)
                    {
                        //removeKisteInSeitAnsicht(KranUeberLager);
                        //removeKisteInDraufsicht(KranUeberLager);                  
                        //this.band.LagerBelegt[KranUeberLager - 2] = false ;
                        //this.kranarm.KisteKran = new Kisten(this.Kran, this.AnsichtSeite, 50.0,50.0,50.0,2);
                        //this.band.KistenAblageplatz[KranUeberLager - 2] = null;
                        //this.AnsichtSeite,

                    }
                    else
                    {
                        //kranarm.KisteKran 
                    }

                    if (!this.kranarm.armMoving())
                    {
                        if (!KranStatus.Oben)
                        {
                            kranarm.movekranarmUnten();
                        }
                        else
                        {
                            kranarm.setKranarmOben();
                        }
                    }

                    if (modeControlFlag == false)
                    {
                        if (KranStatus.Beladen == true && kranarm.KisteKran == null)
                        {
                            Kisten kiste = new Kisten(this.Kran, this.AnsichtSeite, kranarm.XKoordinate, kranarm.YKoordinate, kranarm.ZKoordinate + 150.0, 0, this.band);
                        }
                    }

                    /*if(kranarm.KisteKran != null)
                    {
                        kranarm.KisteKran.setKistenPosition(kranarm.XKoordinate - 10.0, kranarm.YKoordinate - 10.0);
                        kranarm.KisteKran.setKisteHoehe(kranarm.ZKoordinate);
                    }*/


                    /* if(KranStatus.Beladen && !KranStatus.Oben && !vorherBeladen)
                     {
                         this.kranarm.movekranarmOben();
                         vorherBeladen = true;
                     }
                     if(KranStatus.Oben && !this.kranarm.armMoving())
                     {
                         this.kranarm.setKranarmOben();
                         vorherBeladen = false;
                     }*/
                }
                else
                {
                    Console.WriteLine("PostAsJsonAsync Error: {0} [{1}]",
                         response.StatusCode.ToString(), (int)response.StatusCode);

                }
            }
            catch(HttpRequestException)
            {               
                Console.WriteLine("Server nicht verfügbar. Bitte Starten sie die Anwendung neu und ihren Server neu");
                connection = false;
            }

        }
コード例 #4
0
        private Kisten erstelleKisteVorPuscher(int puscher)
        {
            Kisten kisten;

            if (puscher == 1)
            {
                kisten = new Kisten(this.Kran, this.AnsichtSeite, 0, 0, 0, 0, this.band);
                kisten.setKisteToPusher(puscher);
                return kisten;
            }
            if (puscher == 2)
            {
                kisten = new Kisten(this.Kran, this.AnsichtSeite, 0, 0, 0, 0, this.band);
                kisten.setKisteToPusher(puscher);
                return kisten;
            }
            if (puscher == 3)
            {
                kisten = new Kisten(this.Kran, this.AnsichtSeite, 0, 0, 0, 0, this.band);
                kisten.setKisteToPusher(puscher);
                return kisten;
            }
            return null;
        }
コード例 #5
0
 private Kisten erstelleKisteInRegiter(int id)
 {
     Kisten kisten = new Kisten(this.Kran, this.AnsichtSeite, this.kisteStartX, this.kisteStartY, this.kisteStartZ, 0, this.band);
     return kisten;
 }
コード例 #6
0
 private Kisten erstelleKisteInLager(int Lager, int id)
 {
     Kisten kisten;
     if (Lager == 1)
     {
         kisten = new Kisten(this.Kran, this.AnsichtSeite, 0, 0, 0, id, this.band);
         kisten.moveKistetoLager(Lager);
         return kisten;
     }
     if (Lager == 2)
     {
         kisten = new Kisten(this.Kran, this.AnsichtSeite, 0, 0, 0, id, this.band);
         kisten.moveKistetoLager(Lager);
         return kisten;
     }
     if (Lager == 3)
     {
         kisten = new Kisten(this.Kran, this.AnsichtSeite, 0, 0, 0, id, this.band);
         kisten.moveKistetoLager(Lager);
         return kisten;
     }
     if (Lager == 4)
     {
         kisten = new Kisten(this.Kran, this.AnsichtSeite, 0, 0, 0, id, this.band);
         kisten.moveKistetoLager(Lager);
         return kisten;
     }
     if (Lager == 5)
     {
         kisten = new Kisten(this.Kran, this.AnsichtSeite, 0, 0, 0, id, this.band);
         kisten.moveKistetoLager(Lager);
         return kisten;
     }
     if (Lager == 6)
     {
         kisten = new Kisten(this.Kran, this.AnsichtSeite, 0, 0, 0, id, this.band);
         kisten.moveKistetoLager(Lager);
         return kisten;
     }
     return null;
 }
コード例 #7
0
 private void erstelleKiste()
 {
     Kisten kisten = new Kisten(this.Kran, this.AnsichtSeite, this.kisteStartX, this.kisteStartY, this.kisteStartZ,0, this.band);
     this.ListKisten.Add(kisten);
 }
コード例 #8
0
        // --------------- Logik

        public void ArrivedAtBottom()
        {
            if (kranarm.KisteKran == null)
            {
                if (kranarm.UeberLager == 0)
                {
                    Kisten kiste = new Kisten(this.Kran, this.AnsichtSeite, this.kranarm.XKoordinate, this.kranarm.YKoordinate, this.kranarm.ZKoordinate, 0,this.band);
                    this.kranarm.KisteKran = kiste;
                }
                else if (kranarm.UeberLager >= 1 && kranarm.UeberLager <= 4)
                {
                    kranarm.KisteKran = band.KistenAblageplatz[kranarm.UeberLager - 1];
                    band.LagerBelegt[kranarm.UeberLager - 1] = false; ;
                    band.KistenAblageplatz[kranarm.UeberLager - 1] = null;
                }
                else if (kranarm.UeberLager == 5 || kranarm.UeberLager == 6)
                {
                    kranarm.KisteKran = band.KistenLager[kranarm.UeberLager - 5];
                    band.ZwischenlagerBelegt[kranarm.UeberLager - 5] = false;
                    band.KistenLager[kranarm.UeberLager - 5] = null;
                }
            }
            else
            {
                if (kranarm.UeberLager == 0)
                {
                    removeKisteInDraufsicht(7);
                }
                else if (kranarm.UeberLager >= 1 && kranarm.UeberLager <= 4)
                {
                    band.KistenAblageplatz[kranarm.UeberLager - 1] = kranarm.KisteKran;
                    band.LagerBelegt[kranarm.UeberLager - 1] = true;
                    band.KistenAblageplatz[kranarm.UeberLager - 1].setKisteHoehe(this.kisteStartZ);
                    kranarm.KisteKran = null;
                }
                else if (kranarm.UeberLager == 5 || kranarm.UeberLager == 6)
                {
                    band.KistenLager[kranarm.UeberLager - 5] = kranarm.KisteKran;
                    band.ZwischenlagerBelegt[kranarm.UeberLager - 5] = true;
                    band.KistenLager[kranarm.UeberLager - 5].setKisteHoehe(this.kisteStartZ);
                    kranarm.KisteKran = null;
                }
            }

        }