Point2D - Objektdefintion geht nicht ?!

Jedrzej

Mitglied
Hi,
Ich habe folgendes Problem, ich schreibe am mittwoch Informatik LK Klausur und zur übung hat uns unser Lehrer ein Programmcode mitgegeben zum verstehen...ich verstehe auch alles soweit, nur wollte ich das ganze bei mir laufen alssen, also habe ich es abgetippt und wollte es laufen lassen. DOch mekert Java dass Hauswelt nicht bekannt sei....naja hier der CODE:
wenn Ihr Transform 2D auch sehen wollt poste ich es nach...
import java.awt.geom.Point2D;
import java.awt.*;
Code:
public class ViewportTransformation
{
    private double xmin, ymin, xmax, ymax;
    private double umin, vmin, umax, vmax;
    Point2D HausWelt[], HausBildschirm[];
    
    public ViewportTransformation()
    {
        xmin = 10;
        ymin = 10;
        xmax = 50;
        ymax = 50;
        Hauswelt    = new Point2D.Double [5];
        HausWelt[0] = new Point2D.Double(20, 35);
        HausWelt[1] = new Point2D.Double(20, 20);
        HausWelt[2] = new Point2D.Double(35, 20);
        HausWelt[3] = new Point2D.Double(35, 35);
        HausWelt[4] = new Point2D.Double(27.5, 40);
        umin = 100;
        vmin = 50;
        umax = 400;
        vmax = 450;
        Transform2D TransformMatrix = new Transform2D();
        TransformMatrix.translate(umin, vmin);
        TransformMatrix.scale((umax-umin)/(xmax-xmin), (vmax-vmax)/(ymax-ymin));
        TransformMatrix.translate(-xmin, -ymin);
        HausBildschirm = new Point2D.Double[5];
        double x=0, y=0;
        Point2D P = new Point2D.Double(0, 0);
        for ( int i=0; i<HausBildschirm.length; i++) {
             P = TransformMatrix.getTransformedPoint(HausWelt[i].getX(), HausWelt[i].getY());
             Hausbildschirm[i] = new Point2d.Double (P.getX(), P.getY() );
         }
     }
     public void transformExample(){
     Transform2D TransformMatrix = new Transform2D();
     TransformMatrix.translate(umin+50, vmin+50);
     TransformMatrix.scale(0.2,0.5);
     TransformMatrix.rotate(45);
     TransfomMatrix.translate(-umin, -min);
     double x=0, y=0;
     Point2D P = new Point2D.Double(0, 0);
     for (int i=0; i<HausBildschirm.length; i++){
         P = TransformMatrix.getTransformedPoint(HausBildschirm[i].getX(), HausBildschrim[i].getY());HausBildschirm[i] = new Point2D.Double (P.getX(), P.getY() );
     }
 }
 public void zeichneHaus (Graphics2D g)
 {
     for( int i=0; i<HausBildschirmlength-1; i++){
         g.drawLine( (int)HausBildschirm[i].getX, (int)HausBildschirm[i].getY(),
                        (int)HausBildschirm[i+1].getX(), (int)HausBildschrim[i+1].getY() );
     }
     g.drawLine( (int)HausBildschirm[4].getX(), (int)HausBildschirm[4].getY(),
                        (int)HausBildschirm[0].getX(), (int)HausBildschirm[0].getY()    );
     g.drawLine( (int)HausBildschirm[0].getX(), (int)HausBildschirm[0].getY(),
                        (int)HausBildschirm[3].getX(), (int)HausBildschirm[3].getY()    );
                    }
 public void zeichneRahmen( Graphics2D g ){
     g.drawLine( (int) umin, (int) vmin, (int)umax, (int) vmin);
     g.drawLine( (int) umax, (int) vmin, (int)umax, (int) vmax);
        g.drawLine( (int) umax, (int) vmax, (int) umin, (int) vmax );
        g.drawLine( (int) umin, (int) vmax, (int) umin, (int) vmin );
    }
}
danke für jede Hilfe.
 
Zurück