Parallele Linien zeichnen

sengul

Mitglied
Hallo,
ich habe folgendes Problem. Ich habe ein frame erstellt, in diesen frame will ich mehrere horizontale und vertikale linien zeichnen. Ich bekomme es auch hin, mit horizontale und vertikale linien zeichnen , aber sobald ich paralele linien zeichnen, fallen diese linien übereinander, wenn ich die koordinaten entsprechen gebe. Unten ist der Code dafür, wo auch linien gezeichnet werden. Kann mir bitte jemand ein Beispiel geben, wie paralele linien zeichne? Was mache ich falsch?


public static void eventStartButton(Button but)
{
but.setOnAction(new EventHandler<ActionEvent>() {
@Overridepublic void handle(ActionEvent event) {
System.out.println("Hello World!");

Stage stage = new Stage();
StackPane stackPane = new StackPane();

Line line1 = new Line(-200, 500, 200, 500);
line1.setStroke(Color.BLUE);
Line line2 = new Line(200, 0, 50, 700);
line2.setStroke(Color.RED);

stackPane.getChildren().addAll(line1, line2);
Scene scene = new Scene(stackPane, 300, 250);
stage.setTitle("Gerasterte Karte");
stage.setScene(scene);
stage.show();
}
});
}
 
sorry, ich habe nun die koordinaten geandert, oben waren sie falsch. Mit den Koordinaten wie unten musste es aber zwei paralele linien erbegen. Es kommt nur eine, den die beiden linien fallen übereinander. Warum pasiert das? Sie müssen paralel zu einander sein? Bitte kann mir jemand helfen?


Stage stage = new Stage();
StackPane stackPane = new StackPane();
Line line1 = new Line(0, 300, 1000, 300);
Line line2 = new Line(0, 400, 1000, 400);
stackPane.getChildren().addAll(line1, line2);
Scene scene = new Scene(stackPane, 300, 250);
stage.setTitle("Gerasterte Karte");
stage.setScene(scene);
stage.show();
 
Ich habe dein Problem mal in Swing umgesetzt
und da bekomm ich mit deinen Koordinaten
zwei parallele Linien
lines-jpg.64398

Hier mein Code:
Code:
package drawTests;

import java.awt.Button;
import java.awt.Canvas;
import java.awt.Color;
import java.awt.Graphics;

import javax.swing.JFrame;

public class DrawLines extends JFrame{

   public DrawLines(){
     setSize(500, 500);
     
     Can c = new Can();
     this.add(c);
     
     setVisible(true);
   }
   
   public static void main(String[] args) {
     // TODO Auto-generated method stub
     new DrawLines();
   }
   
   class Can extends Canvas{

     @Override
     public void paint(Graphics g) {
       // TODO Auto-generated method stub
       super.paint(g);
       
       g.drawLine(0, 300, 1000, 300);
       g.drawLine(0, 400, 1000, 400);
     }
     
   }
}
 

Anhänge

  • lines.jpg
    lines.jpg
    6,5 KB · Aufrufe: 16
Zurück