Answer:

  startX startY endX endY
line 1L1X1: 0 L1Y1: 140 L1X2: 40 L1Y2: 115
line 2L2X1: L1X2 L2Y1: L1Y2 L2X2: houseX L2Y2: 130
line 3L3X1: houseX+houseW L3Y1: 135 L3X2: trunkX L3Y2: 140
line 4L4X1: trunkX+trunkW L4Y1: L3Y2 L4X2: width L4Y2: 110


Complete JApplet

With all these new blanks filled in, the applet is complete. There was some work involved, but now this applet can be put on the Web and this fine art can be enjoyed by anyone in the World!

import javax.swing.JApplet;
import java.awt.*;

// assume that the drawing area is 350 by 250
public class HouseComplete extends JApplet
{
  final int width  = 350, height = 250;
  final int houseX =  65, houseY = 100, houseW = 110, houseH = 110 ;
  final int               doorY  = 165, doorW  =  25, doorH  =  40 ;
  final int lWindX =  90, lWindY = 115, lWindW =  30, lWindH =  30 ;
  final int rWindX = 130, rWindY = 115, rWindW =  30, rWindH =  30 ;
  final int trunkX = 255, trunkY = 100, trunkW =  10, trunkH = 100 ;
  
  // tree leaves 
  final int treeX  = 200, treeY  =  45, treeW  = 125, treeH  =  55 ;
  
  final int L1X1   = 0,             L1Y1 = 140,    L1X2 = 40,      L1Y2 = 115; 
  final int L2X1   = L1X2,          L2Y1 = L1Y2,   L2X2 = houseX,  L2Y2 = 130;
  final int L3X1   = houseX+houseW, L3Y1 = 135,    L3X2 = trunkX,  L3Y2 = 140;
  final int L4X1   = trunkX+trunkW, L4Y1 = L3Y2,   L4X2 = width,   L4Y2 = 110;

  final int roof1X1 = houseX,  roof1Y1 = houseY;
  final int roof1X2 = houseX + houseW/2, roof1Y2 = 50;
  final int roof2X1 = roof1X2, roof2Y1 = roof1Y2;
  final int roof2X2 = houseX + houseW, roof2Y2 = houseY;
  final int doorX   = houseX + houseW/2 - doorW/2;
  
  public void paint ( Graphics gr )
  { 
     gr.setColor( Color.orange ); // there is no color brown
     gr.drawRect( houseX , houseY , houseW, houseH); // house
     gr.fillRect( doorX  , doorY  , doorW , doorH ); // door
     gr.drawRect( lWindX , lWindY , lWindW, lWindH); // lwind
     gr.drawRect( rWindX , rWindY , rWindW, rWindH); // rwind
     gr.fillRect( trunkX , trunkY , trunkW, trunkH); // trunk
     
     gr.setColor( Color.green );
     gr.fillOval( treeX, treeY, treeW, treeH ); 

     gr.drawLine( L1X1, L1Y1, L1X2, L1Y2 ); // line 1
     gr.drawLine( L2X1, L2Y1, L2X2, L2Y2 ); // line 2
     gr.drawLine( L3X1, L3Y1, L3X2, L3Y2 ); // line 3
     gr.drawLine( L4X1, L4Y1, L4X2, L4Y2 ); // line 4

     gr.setColor( Color.green );
     gr.drawLine( roof1X1, roof1Y1, roof1X2, roof1Y2 );
     gr.drawLine( roof2X1, roof2Y1, roof2X2, roof2Y2 );
  }
}

Here is the output of the applet:

If you see this, your browser is not running Java.


QUESTION 8:

If your entire objective was to draw this picture on the computer screen, is writing this program a sensible way to do so?