class IGPPentagon extends IGPFamily{ IGPPentagon(float x, float y, float d){ super(x, y, d); setVectorsOnAlphaCircle(); setConstructionCircleCenters(); } void setConstructionCircleCenters(){ constructionCircleCenters = new ArrayList (5); constructionCircleCenters.add(getVectorOnAlphaCircle(342)); constructionCircleCenters.add(getVectorOnAlphaCircle(54)); constructionCircleCenters.add(getVectorOnAlphaCircle(126)); constructionCircleCenters.add(getVectorOnAlphaCircle(198)); constructionCircleCenters.add(getVectorOnAlphaCircle(270)); } void createInnerPentagon(){ beginShape(LINES); vertex(constructionCircleCenters.get(0).x, constructionCircleCenters.get(0).y); vertex(constructionCircleCenters.get(1).x, constructionCircleCenters.get(1).y); vertex(constructionCircleCenters.get(1).x, constructionCircleCenters.get(1).y); vertex(constructionCircleCenters.get(2).x, constructionCircleCenters.get(2).y); vertex(constructionCircleCenters.get(2).x, constructionCircleCenters.get(2).y); vertex(constructionCircleCenters.get(3).x, constructionCircleCenters.get(3).y); vertex(constructionCircleCenters.get(3).x, constructionCircleCenters.get(3).y); vertex(constructionCircleCenters.get(4).x, constructionCircleCenters.get(4).y); vertex(constructionCircleCenters.get(4).x, constructionCircleCenters.get(4).y); vertex(constructionCircleCenters.get(0).x, constructionCircleCenters.get(0).y); endShape(); } void createDividingLines(){ createLine(mid, constructionCircleCenters.get(0)); createLine(mid, constructionCircleCenters.get(1)); createLine(mid, constructionCircleCenters.get(2)); createLine(mid, constructionCircleCenters.get(3)); createLine(mid, constructionCircleCenters.get(4)); } void displayConstructionLines(){ super.displayConstructionLines(); createInnerPentagon(); createConstructionCircles(); createDividingLines(); } }