Added providers
This commit is contained in:
129
src/com/flaremicro/visualforecast/icons/impl/IceCubeIcon.java
Normal file
129
src/com/flaremicro/visualforecast/icons/impl/IceCubeIcon.java
Normal file
@@ -0,0 +1,129 @@
|
||||
package com.flaremicro.visualforecast.icons.impl;
|
||||
|
||||
import java.awt.BasicStroke;
|
||||
import java.awt.Color;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.geom.Path2D;
|
||||
|
||||
import com.flaremicro.visualforecast.icons.Icon;
|
||||
|
||||
public class IceCubeIcon extends Icon {
|
||||
|
||||
Path2D.Float iceOutline = new Path2D.Float();
|
||||
|
||||
Path2D.Float[] iceFaces = new Path2D.Float[3];
|
||||
Path2D.Float[] iceShines = new Path2D.Float[3];
|
||||
|
||||
Path2D.Float iceBeams = new Path2D.Float();
|
||||
|
||||
Color[] iceFaceColors = new Color[] {
|
||||
new Color(0xb9dbff),
|
||||
new Color(0x92b1ff),
|
||||
new Color(0x3886ff),
|
||||
};
|
||||
Color[] iceShineAnimation = new Color[] {
|
||||
new Color(0x92B1FF),
|
||||
new Color(0xA2C1FF),
|
||||
new Color(0xB2D1FF),
|
||||
new Color(0xC2E1FF),
|
||||
new Color(0xD2F1FF),
|
||||
new Color(0xE2FFFF),
|
||||
new Color(0xFFFFFF),
|
||||
new Color(0xE2FFFF),
|
||||
new Color(0xD2F1FF),
|
||||
new Color(0xC2E1FF),
|
||||
new Color(0xB2D1FF),
|
||||
new Color(0xA2C1FF),
|
||||
};
|
||||
|
||||
public IceCubeIcon(int id) {
|
||||
super(id);
|
||||
|
||||
iceBeams.moveTo(0.15F, 0.35F);
|
||||
iceBeams.lineTo(0.25F, 0.15F);
|
||||
|
||||
iceBeams.moveTo(0.60F, 0.2F);
|
||||
iceBeams.lineTo(0.70F, 0F);
|
||||
|
||||
iceBeams.moveTo(0.9F, 0.25F);
|
||||
iceBeams.lineTo(1.0F, 0.05F);
|
||||
|
||||
iceOutline.moveTo(0F, 0.161F);
|
||||
iceOutline.lineTo(0.542F, 0F);
|
||||
iceOutline.lineTo(1.0F, 0.093F);
|
||||
iceOutline.lineTo(1.0F, 0.441F);
|
||||
iceOutline.lineTo(0.489F, 0.650F);
|
||||
iceOutline.lineTo(0.0F, 0.531F);
|
||||
iceOutline.closePath();
|
||||
|
||||
iceFaces[1] = new Path2D.Float();
|
||||
iceFaces[1].moveTo(0F, 0.161F);
|
||||
iceFaces[1].lineTo(0.542F, 0F);
|
||||
iceFaces[1].lineTo(1.0F, 0.093F);
|
||||
iceFaces[1].lineTo(0.489F, 0.263F);
|
||||
iceFaces[1].closePath();
|
||||
|
||||
iceFaces[2] = new Path2D.Float();
|
||||
iceFaces[2].moveTo(0.489F, 0.263F);
|
||||
iceFaces[2].lineTo(1.0F, 0.093F);
|
||||
iceFaces[2].lineTo(1.0F, 0.441F);
|
||||
iceFaces[2].lineTo(0.489F, 0.650F);
|
||||
iceFaces[2].closePath();
|
||||
|
||||
iceFaces[0] = new Path2D.Float();
|
||||
iceFaces[0].moveTo(0.0F, 0.161F);
|
||||
iceFaces[0].lineTo(0.489F, 0.263F);
|
||||
iceFaces[0].lineTo(0.489F, 0.650F);
|
||||
iceFaces[0].lineTo(0.0F, 0.531F);
|
||||
iceFaces[0].closePath();
|
||||
|
||||
iceShines[1] = new Path2D.Float();
|
||||
iceShines[1].moveTo(0.537F, 0.013F);
|
||||
iceShines[1].lineTo(0.930F, 0.099F);
|
||||
iceShines[1].lineTo(0.673F, 0.185F);
|
||||
iceShines[1].lineTo(0.556F, 0.187F);
|
||||
iceShines[1].lineTo(0.556F, 0.187F);
|
||||
iceShines[1].lineTo(0.742F, 0.086);
|
||||
iceShines[1].closePath();
|
||||
|
||||
iceShines[2] = new Path2D.Float();
|
||||
iceShines[2].moveTo(0.981F, 0.134F);
|
||||
iceShines[2].lineTo(0.981F, 0.423F);
|
||||
iceShines[2].lineTo(0.515F, 0.624F);
|
||||
iceShines[2].lineTo(0.571F, 0.557F);
|
||||
iceShines[2].lineTo(0.915F, 0.372F);
|
||||
iceShines[2].closePath();
|
||||
|
||||
iceShines[0] = new Path2D.Float();
|
||||
iceShines[0].moveTo(0.018F, 0.187F);
|
||||
iceShines[0].lineTo(0.205F, 0.229F);
|
||||
iceShines[0].lineTo(0.060F, 0.249F);
|
||||
iceShines[0].lineTo(0.044F, 0.475F);
|
||||
iceShines[0].lineTo(0.021F, 0.508F);
|
||||
iceShines[0].closePath();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void drawIcon(Graphics2D g2d, float scale, int animationStep) {
|
||||
g2d.setColor(Color.BLACK);
|
||||
g2d.setStroke(new BasicStroke(2 / scale));
|
||||
g2d.draw(iceBeams);
|
||||
g2d.setStroke(new BasicStroke(4 / scale));
|
||||
g2d.translate(0F, 0.325F);
|
||||
g2d.draw(iceOutline);
|
||||
for(int i = 0; i < iceFaces.length; i++)
|
||||
{
|
||||
g2d.setColor(iceFaceColors[i]);
|
||||
g2d.fill(iceFaces[i]);
|
||||
g2d.setColor(iceShineAnimation[(i+animationStep) % iceShineAnimation.length]);
|
||||
g2d.fill(iceShines[i]);
|
||||
}
|
||||
g2d.translate(0F, -0.325F);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isAnimated() {
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user