コード例 #1
0
ファイル: NControlView.cs プロジェクト: bardasoft/NControl2
 /// <summary>
 /// Draw the specified canvas.
 /// </summary>
 /// <param name="canvas">Canvas.</param>
 public virtual void Draw(ICanvas canvas, Rect rect)
 {
     DrawingFunction?.Invoke(canvas, rect);
 }
コード例 #2
0
        protected virtual void RecalculateDebugPoints(Vector2 startPoint, Vector2 endPoint, DrawingFunction drawingFunc)
        {
            STETilemap tilemap = GetTargetTilemap();

            if (!tilemap)
            {
                return;
            }
            Vector2 cellSizeDiv2 = tilemap.CellSize / 2f;

            m_debugPoints.Clear();
            int x0, y0, x1, y1;

            if ((ePositionType)m_action.positionType.Value == ePositionType.LocalPosition)
            {
                x0 = TilemapUtils.GetGridX(tilemap, startPoint);
                y0 = TilemapUtils.GetGridY(tilemap, startPoint);
                x1 = TilemapUtils.GetGridX(tilemap, endPoint);
                y1 = TilemapUtils.GetGridY(tilemap, endPoint);
            }
            else //if ((ePositionType)m_action.positionType.Value == ePositionType.GridPosition)
            {
                x0 = (int)startPoint.x;
                y0 = (int)startPoint.y;
                x1 = (int)endPoint.x;
                y1 = (int)endPoint.y;
            }
            drawingFunc(x0, y0, x1, y1,
                        (x, y) =>
            {
                m_debugPoints.Add(new Vector2(x * tilemap.CellSize.x + cellSizeDiv2.x, y * tilemap.CellSize.y + cellSizeDiv2.y));
                return(true);
            });
        }