コード例 #1
0
 public ScalePointRender(IPointRender render, float scale, float offset)
 {
     _render = render;
     _scale  = scale;
     _offset = offset;
     _block  = new StorageBlock(Viewport.ViewportSize);
 }
コード例 #2
0
 public LimitLineRender(IPointRender render, double canvasHeight, double pillarWidth)
 {
     _render       = render;
     _canvasHeight = canvasHeight;
     _pillarWidth  = pillarWidth;
     LimitLineRenderContext.LastBlunt = 0;
     LimitLineRenderContext.LastBreak = 0;
 }
コード例 #3
0
        public override RenderItem CreateRenderItem(IPointRender render)
        {
            Debug.Assert(!_isFreezed);
            var item = new RenderItem(render);

            item.AllocateResource();
            _items.Add(item);
            return(item);
        }
コード例 #4
0
ファイル: RenderTask.cs プロジェクト: fanliangandrew/DataQ
 public RenderTask(Dispatcher dispatcher, IPointRender render, RenderItemPool pool)
 {
     _dispatcher      = dispatcher;
     _render          = render;
     _pool            = pool;
     _baseVpGenerator = new ViewportGenerator();
     _realVpGenerator = new ViewportGenerator();
     _isCreated       = new AutoResetEvent(false);
 }
コード例 #5
0
        public override RenderItem CreateRenderItem(IPointRender render)
        {
            var i = _newIndex++;

            if (_newIndex >= _size)
            {
                _newIndex = 0;
            }
            _items[i].AllocateResource();
            return(_items[i]);
        }
コード例 #6
0
 public ViewRenderItemPool(IPointRender render, Dispatcher dispatcher)
 {
     _dispatcher = dispatcher;
     _size       = StorageBlock.StorageBlockSize / Viewport.ViewportSize * 2;
     _items      = new RenderItem[_size];
     for (int i = 0; i < _size; i++)
     {
         _items[i] = new RenderItem(render);
     }
     _newIndex    = 0;
     _rendreIndex = _size - 1;
 }
コード例 #7
0
 public override RenderTask CreateViewRenderTask(Dispatcher dispatcher, IPointRender render, RenderItemPool pool)
 {
     return(new RenderTask(dispatcher, render, pool));
 }
コード例 #8
0
 public RenderItem(IPointRender render)
 {
     _render = render;
 }
コード例 #9
0
 public abstract RenderItem CreateRenderItem(IPointRender render);
コード例 #10
0
 public abstract RenderTask CreateViewRenderTask(Dispatcher dispatcher, IPointRender render, RenderItemPool pool);