public override void RenderPoint(float basePoint, float realPoint) { if (realPoint < 0) { _location.Y = Y; _size.Height = -realPoint; } else { _location.Y = _canvasHeight - realPoint; _size.Height = realPoint; } var rect = new Rect(_location, _size); var pillar = new PillarVisual(_realBrush, rect); _layer.Add(pillar); if (realPoint > basePoint) { _size.Height = realPoint - basePoint; rect.Size = _size; var exceed = new PillarVisual(_exceedBrush, rect); _layer.Add(exceed); } _location.X += _size.Width; _index++; }
public void RenderBasePoints(UIElement image, Viewport baseVp) { var himage = image as PillarImage; Debug.Assert(himage != null && baseVp != null); var layer = himage.BaseDataLayer; Debug.Assert(layer != null); Size size = new Size(_pillarWidth, 0); Rect rect = new Rect(); foreach (var p in baseVp) { size.Height = p; rect.Size = size; rect.Y = _canvasHeight - p; var pillar = new PillarVisual(_baseBrush, rect); layer.Add(pillar); rect.X += _pillarWidth; } }