private void drawMarks(Graphics g) { int physicalPoint = physicalValue[yourBiorhythm.getPhysicalBiorhythm()] * 2; if (physicalImage != null) { g.drawImage(physicalImage, gridWidth * physicalPoint + PHYSICAL_ORIGIN_X - physicalImageDimension.width / 2, (int)(amplitude * Math.sin((double)(physicalPoint - 18) * Math.PI / 12.0)) + ORIGIN_Y - physicalImageDimension.height / 2, this); } else { g.setColor(physicalColor); g.fillRoundRect(gridWidth * physicalPoint + PHYSICAL_ORIGIN_X - 7, (int)(amplitude * Math.sin((double)(physicalPoint - 18) * Math.PI / 12.0)) + ORIGIN_Y - 7, 14, 14, 10, 10); } int sensitivityPoint = sensitivityValue[yourBiorhythm.getSensitivityBiorhythm()] * 2; if (sensitivityImage != null) { g.drawImage(sensitivityImage, gridWidth * sensitivityPoint + SENSITIVITY_ORIGIN_X - sensitivityImageDimension.width / 2, (int)(amplitude * Math.sin((double)(sensitivityPoint - 22) * Math.PI / 12.0)) + ORIGIN_Y - sensitivityImageDimension.height / 2, this); } else { g.setColor(sensitivityColor); g.fillRoundRect(gridWidth * sensitivityPoint + SENSITIVITY_ORIGIN_X - 7, (int)(amplitude * Math.sin((double)(sensitivityPoint - 22) * Math.PI / 12.0)) + ORIGIN_Y - 7, 14, 14, 10, 10); } int intellectualPoint = intellectualValue[yourBiorhythm.getIntellectualBiorhythm()] * 2; if (intellectualImage != null) { g.drawImage(intellectualImage, gridWidth * intellectualPoint + INTELLECTUAL_ORIGIN_X - intellectualImageDimension.width / 2, (int)(amplitude * Math.sin((double)(intellectualPoint - 2) * Math.PI / 12.0)) + ORIGIN_Y - intellectualImageDimension.height / 2, this); } else { g.setColor(intellectualColor); g.fillRoundRect(gridWidth * intellectualPoint + INTELLECTUAL_ORIGIN_X - 7, (int)(amplitude * Math.sin((double)(intellectualPoint - 2) * Math.PI / 12.0)) + ORIGIN_Y - 7, 14, 14, 10, 10); } }