Пример #1
0
		public override void CreateUI(GLEx g, int x, int y, LComponent component,
				LTexture[] buttonImage) {
			if (visible && goalPath != null) {
				g.SetLineWidth(lineWidth);
				g.SetColor(color);
				g.Draw(goalPath);
				g.ResetLineWidth();
				g.ResetColor();
			}
		}
Пример #2
0
		public void CreateUI(GLEx g) {
			if (!isVisible) {
				return;
			}
	
			this.Setup();
	
			int pointsLength = points.Count;
	
			Progress point;
			int index;
			int frameD;
			int indexD;
	
			float size = (pointsLength * this.trailLength);
	
			for (float i = -1, l = size; ++i < l && !this.stopped;) {
	
				index = (int) (frame + i);
				if (index < pointsLength) {
					point = points[index];
				} else {
					point = points[index - pointsLength];
				}
				this.alpha = (i / (l - 1));
				frameD = frame / (pointsLength - 1);
				indexD = (int) alpha;
				if (lineWidth > 0) {
					g.SetLineWidth(lineWidth);
				}
				if (scaleX != 1 || scaleY != 1) {
					g.Scale(scaleX, scaleY);
				}
				if (alpha > 0 && alpha < 1) {
					g.SetAlpha(alpha);
				}
				g.SetColor(color);
				Step(g, point, indexD, frameD, color, alpha);
				g.ResetColor();
				if (alpha > 0 && alpha < 1) {
					g.SetAlpha(1);
				}
				if (lineWidth > 0) {
					g.ResetLineWidth();
				}
				if (scaleX != 1 || scaleY != 1) {
					g.Restore();
				}
			}
	
		}
Пример #3
0
 public void Draw(GLEx g, int x, int y)
 {
     LColor oldColor = g.GetColor();
     g.SetColor(color);
     switch (style)
     {
         case 0:
             float alpha = 0.0f;
             int nx = x + width / 2 - (int)r * 4,
             ny = y + height / 2 - (int)r * 4;
             g.Translate(nx, ny);
             for (IIterator it = new IteratorAdapter(list.GetEnumerator()); it.HasNext(); )
             {
                 RectBox s = (RectBox)it.Next();
                 alpha = alpha + 0.1f;
                 g.SetAlpha(alpha);
                 g.FillOval(s.x, s.y, s.width, s.height);
             }
             g.SetAlpha(1.0F);
             g.Translate(-nx, -ny);
             break;
         case 1:
             g.SetLineWidth(10);
             g.Translate(x, y);
             g.SetColor(Fill);
             g.DrawOval(0, 0, width, height);
             int sa = angle % 360;
             g.FillArc(x + (width - paintWidth) / 2, y
                     + (height - paintHeight) / 2, paintWidth, paintHeight,
                     sa, sa + ANGLE_STEP);
             g.Translate(-x, -y);
             g.ResetLineWidth();
             break;
     }
     g.SetColor(oldColor);
 }