title: Java Swing, draw a line at a specific angle?
body: <p>I made a JSlider with Java that changes the angle the line needs to be slanted at. </p>
  
  <pre><code>angle = new JSlider(SwingConstants.HORIZONTAL, 0, 180, 90);
  angle.setSize(300, 50);
  angle.setLocation(650, 60);
  angle.setPaintTicks(true);
  angle.setPaintTrack(true);
  angle.setMinorTickSpacing(10);
  angle.setMajorTickSpacing(30);
  angle.setPaintLabels(true);
  angle.addChangeListener(this);
  
  thepanel.add(angle);
  </code></pre>
  
  <p>I want the code to draw that line that implements the angle from the JSlider.</p>
  
  <p>Here is my code:</p>
  
  <pre><code>public void paintComponent(Graphics g){
      super.paintComponent(g);
  
      int angle = intAngle;
      Graphics2D graphics = (Graphics2D)g;
  
      int startX = getWidth()/2;
      int startY = getHeight()/2;
      int length = 200;
  
  
      int endX = startX + length * (int)Math.cos(Math.toRadians(angle));
      int endY = startY + length * (int)Math.sin(Math.toRadians(angle));
  
      graphics.drawLine(startX, startY, endX, endY);
  
  }
  </code></pre>
  
  <p>What is the mathematics behind rotating a line given a value?</p>