Package aufnahme.fmg.edu.kit.aifb.AufnahmeTyp

Examples of aufnahme.fmg.edu.kit.aifb.AufnahmeTyp.Population


            this.xmlAufn.getAufnahme().addNewAusgaben();
        }
        Kommandozeilenausgaben ausg
            = this.xmlAufn.getAufnahme().getAusgaben();
        byte[] xmlFeld;
        Population aktPop;
        Calendar zeit;
        String sens;
       
        // Parameterliste:
        this.xmlAufn.getAufnahme().setParameterliste(
                this.pars.parStrPlain());

        // Zeitstempel:
        zeit = Calendar.getInstance();
        zeit.setTime(this.datum);
        this.xmlAufn.getAufnahme().setTimestamp(zeit);
       
        // Kommandozeilenausgaben (danach flushen):
        for (AbstractMsg m : this.pars.getMsgs(
                null,
                Long.MIN_VALUE,
                Long.MAX_VALUE)) {
            ausg.addNewEinzelzeile();
            ausg.getEinzelzeileArray(ausg.getEinzelzeileArray().length - 1)
                .setLogStufe(m.getType());
            ausg.getEinzelzeileArray(ausg.getEinzelzeileArray().length - 1)
                .setText(m.getMessage());
            ausg.getEinzelzeileArray(ausg.getEinzelzeileArray().length - 1)
                .setWeiteres("" + m.getZusatz());
           
            zeit = Calendar.getInstance();
            zeit.setTimeInMillis(m.getDatum());
           
            ausg.getEinzelzeileArray(ausg.getEinzelzeileArray().length - 1)
                .setZeitstempel(zeit);
        }
        this.pars.flushMsgs();

        // Feld:
        if (this.xmlAufn.getAufnahme().getUmgebung() == null) {
            this.xmlAufn.getAufnahme().addNewUmgebung();
            int x = this.umgebung.getFeld().length;
            int y = this.umgebung.getFeld()[0].length;
            this.xmlAufn.getAufnahme().getUmgebung().addNewGroesse();
            this.xmlAufn.getAufnahme().getUmgebung().getGroesse().setX(x);
            this.xmlAufn.getAufnahme().getUmgebung().getGroesse().setY(y);
            byte[][] inpFeld = this.umgebung.getInputFeld();
           
            xmlFeld = new byte[x * y];
            for (int i = 0; i < x; i++) {
                for (int j = 0; j < y; j++) {
                    xmlFeld[i * y + j] = inpFeld[i][j];
                }
            }
           
            try {
                this.xmlAufn.getAufnahme().getUmgebung().setFeld(
                        StaticMethods.compressByteStream(xmlFeld, this.pars));
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
       
        // Populationen (danach flushen):
        for (PopSnapshot p : this.populationen) {
            int popID;
            this.xmlAufn.getAufnahme().addNewPopulation();
            aktPop = this.xmlAufn.getAufnahme().getPopulationArray(
                    this.xmlAufn.getAufnahme().getPopulationArray().length - 1);
            aktPop.setCycle(p.getId());
            popID = this.xmlAufn.getAufnahme().getPopulationArray().length - 1;
            aktPop.setID(popID);
           
            // Verschiebung der Gegenst�nde:
            if (aktPop.getGegVersch() == null) {
                aktPop.addNewGegVersch();
            }
            for (int i = 0; i < p.getVerschiebungen().length; i++) {
                Vector2D aktVersch = p.getVerschiebungen()[i];
                aktPop.getGegVersch().addNewVerschiebung();
                aktPop.getGegVersch().getVerschiebungArray()[i]
                     .setX(aktVersch.x);
                aktPop.getGegVersch().getVerschiebungArray()[i]
                     .setY(aktVersch.y);
                aktPop.getGegVersch().getVerschiebungArray()[i].setID(i);
            }
           
            // Dynamische Wände:
            if (aktPop.getDynWaende() == null) {
                DynWaendeTyp waende;
                DynWandTyp wand;
                waende = aktPop.addNewDynWaende();
                for (int i = 0; i < p.getTatdynDrehMittPkt().length; i++) {
                    if (p.getTatdynDrehMittPkt()[i] != null) {
                        wand = waende.addNewWand();
                        wand.setID(i);
                        wand.addNewDynDrehMittelpunkt();
                        wand.getDynDrehMittelpunkt().setX(
                                p.getTatdynDrehMittPkt()[i].x);
                        wand.getDynDrehMittelpunkt().setY(
                                p.getTatdynDrehMittPkt()[i].y);
                        wand.addNewDynSkalierung();
                        wand.getDynSkalierung().setX(
                                p.getTatdynSkalFaktor()[i].x);
                        wand.getDynSkalierung().setY(
                                p.getTatdynSkalFaktor()[i].y);
                        wand.addNewDynVersch();
                        wand.getDynVersch().setX(p.getTatdynVersch()[i].x);
                        wand.getDynVersch().setY(p.getTatdynVersch()[i].y);
                        wand.setDynDrehWinkel(p.getTatdynDrehWinkel()[i]);
                    }
                }
            }
           
            // Roboter:
            for (RobSnapshot r : p.getRobSchnapp()) {
                Roboter neuRob;
                aktPop.addNewRoboter();
                neuRob = aktPop
                        .getRoboterArray(aktPop.getRoboterArray().length - 1);
                // ID:
                neuRob.setID(r.getId());
                neuRob = aktPop
                        .getRoboterArray(aktPop.getRoboterArray().length - 1);
                // Position:
                neuRob.addNewPos();
                neuRob.getPos().setWinkel(r.getWinkel());
                neuRob.getPos().setX(r.getPosition().x);
                neuRob.getPos().setY(r.getPosition().y);
View Full Code Here

TOP

Related Classes of aufnahme.fmg.edu.kit.aifb.AufnahmeTyp.Population

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.