); for (int i = 0; i < eyeLength; i++) { graphics.drawLine( centerX-eyeLength/2+i, centerY-(int)(Math.sin(Math.PI*i/eyeLength)*amplitude), centerX-eyeLength/2+i, centerY+(int)(Math.sin(Math.PI*i/eyeLength)*amplitude)); } //在眼睛的中心绘制一个黑色的圆 graphics.setColor(Color.black); graphics.fillOval( centerX-90/2, centerY-90/2, 90, 90); //在眼睛的中心绘制一个白色的圆 graphics.setColor(Color.white); graphics.fillOval( centerX-60/2/2/2, centerY-60/2/2/2, 60/2/2, 60/2/2); //用于绘制3个不同角度、在不断变化、不同位置的太极图,图是有顺序的 for (int i = 0; i < 3; i++) { //绘制写轮眼球(sharinganSemi) graphics.setColor(Color.red); graphics.fillArc( (int)(centerX-sharinganSemi+Math.cos(Math.PI*(angleCircle+90+(i*120))/180-angleOfWhiteMini/2+angleOfwhiteShar+angleErr*2/3)*distansOfSharSemi), (int)(centerY-sharinganSemi-Math.sin(Math.PI*(angleCircle+90+(i*120))/180-angleOfWhiteMini/2+angleOfwhiteShar+angleErr*2/3)*distansOfSharSemi), (int)(sharinganSemi*2), (int)(sharinganSemi*2),angleCircle+i*120,180); //绘制写轮眼固定圆(whiteOfSharingan) graphics.setColor(Color.red); graphics.fillOval( (int)(centerX-whiteOfSharingan+Math.cos(Math.PI*(angleCircle+90+(i*120))/180)*extendCircleSemi), (int)(centerY-whiteOfSharingan-Math.sin(Math.PI*(angleCircle+90+(i*120))/180)*extendCircleSemi), (int)(whiteOfSharingan*2), (int)(whiteOfSharingan*2)); //绘制写轮眼黑球(miniCircleSemi) graphics.setColor(Color.black); graphics.fillOval( (int)(centerX-miniCircleSemi+Math.cos(Math.PI*(angleCircle+90+(i*120))/180-angleOfWhiteMini)*extendCircleSemi), (int)(centerY-miniCircleSemi-Math.sin(Math.PI*(angleCircle+90+(i*120))/180-angleOfWhiteMini)*extendCircleSemi), (int)(miniCircleSemi*2), (int)(miniCircleSemi*2)); //绘制写轮眼固定球内黑球(blackOfWhiteSemi) graphics.setColor(Color.black); graphics.fillOval( (int)(centerX-(blackOfWhiteSemi+0.0)/120*whiteOfSharingan/2+Math.cos(Math.PI*(angleCircle+90+(i*120))/180)*extendCircleSemi), (int)(centerY-(blackOfWhiteSemi+0.0)/120*whiteOfSharingan/2-Math.sin(Math.PI*(angleCircle+90+(i*120))/180)*extendCircleSemi), (int)((blackOfWhiteSemi+0.0)/120*whiteOfSharingan), (int)((blackOfWhiteSemi+0.0)/120*whiteOfSharingan)); } //绘制外圆 graphics.setColor(Color.red); graphics.drawOval( (int)(centerX-extendCircleSemi), (int)(centerY-extendCircleSemi), (int)(extendCircleSemi)*2, (int)(extendCircleSemi)*2); } public void startRun() { new Thread(){ public void run() { while(true){ if (flag) { angleCircle += 2 ; //沟玉白球中的黑球半径 blackOfWhiteSemi = angleCircle; //System.out.println(angleCircle); //根据目前写轮眼沟玉球转过角度来确定mini小球目前的对应的半径 miniCircleSemi = (angleCircle+0.0)/120* |