Silverlight在线几何绘图


Silverlight在线几何绘图,功能还行,非常好用!
资源截图
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows;
using System.Windows.Controls;
using System.xml.Linq;
using GuiLabs.Utils.Actions;

namespace DynamicGeometry
{
    public class Drawing
    {
        public Drawing(Canvas newCanvas)
        {
            ActionManager = new ActionManager();
            Behavior = new Dragger();

            Figures = new RootFigureList() { Drawing = this };

            OnAttachToCanvas += Drawing_OnAttachToCanvas;
            OnDetachFromCanvas += Drawing_OnDetachFromCanvas;
            Canvas = newCanvas;

            CoordinateSystem = new CoordinateSystem(this);
            CoordinateGrid = new CartesianGrid() { Drawing = this };
            Figures.Add(CoordinateGrid);
        }

        public IFigure this[string index]
        {
            get { return Figures[index]; }
        }

        void Drawing_OnAttachToCanvas(Canvas e)
        {
            e.SizeChanged += mCanvas_SizeChanged;
            Figures.OnAddingToCanvas(e);
        }

        void Drawing_OnDetachFromCanvas(Canvas e)
        {
            e.SizeChanged -= mCanvas_SizeChanged;
            Figures.OnRemovingFromCanvas(e);
        }

        #region Events

        public event EventHandlerchangedEventArgs> Selectionchanged;

        public class SelectionchangedEventArgs : EventArgs
        {
            public SelectionchangedEventArgs()
            {
                SelectedFigures = Enumerable.Empty();
            }

            public SelectionchangedEventArgs(IEnumerable selection)
                : this()
            {
                SelectedFigures = selection;
            }

            public SelectionchangedEventArgs(IFigure singleSelection)
                : this(singleSelection.AsEnumerable())
            {
            }

            public IEnumerable SelectedFigures { get; set; }
        }

        internal void ClearSelectedFigures()
        {
            foreach (IFigure figure in this.Figures)
            {
                if (figure.Selected)
                {
                    figure.Selected = false;
                }
            }
        }

        internal void RaiseSelectionchanged(SelectionchangedEventArgs args)
        {
            if (Selectionchanged != null)
            {
                Selectionchanged(this args);
            }
        }

        public class ConstructionStepCompleteEventArgs : EventArgs
        {
            public bool ConstructionComplete { get; set; }
            public Type FigureTypeNeeded { get; set; }
        }

        public event EventHandler ConstructionStepComplete;

        internal void RaiseConstructionStepComplete(ConstructionStepCompleteEventArgs args)
        {
            if (ConstructionStepComplete != null)
            {
                ConstructionStepCo

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2066  2007-03-07 08:34  china-code.net.txt

     文件       2066  2007-03-07 08:34  Mainchina-code.net.txt

    .......      1462  2009-06-13 19:12  MainDynamicGeometryLibraryActionsAbstractAction.cs

    .......      9639  2009-06-13 19:12  MainDynamicGeometryLibraryActionsActionManager.cs

    .......      4471  2009-06-13 19:12  MainDynamicGeometryLibraryActionsActions.cs

     文件       2066  2007-03-07 08:34  MainDynamicGeometryLibraryActionschina-code.net.txt

    .......       291  2009-06-13 19:12  MainDynamicGeometryLibraryActionsGeometryAction.cs

     文件       2066  2007-03-07 08:34  MainDynamicGeometryLibraryActionsHistorychina-code.net.txt

    .......       708  2009-06-13 19:12  MainDynamicGeometryLibraryActionsHistoryIActionHistory.cs

    .......      5024  2009-06-13 19:12  MainDynamicGeometryLibraryActionsHistorySimpleHistory.cs

    .......      1488  2009-06-13 19:12  MainDynamicGeometryLibraryActionsHistorySimpleHistoryNode.cs

     文件      13457  2007-03-07 08:49  MainDynamicGeometryLibraryActionsHistory说明.html

    .......      1208  2009-06-13 19:12  MainDynamicGeometryLibraryActionsIAction.cs

    .......      1813  2009-06-13 19:12  MainDynamicGeometryLibraryActionsIMultiAction.cs

    .......       596  2009-06-13 19:12  MainDynamicGeometryLibraryActionsTransaction.cs

    .......      2235  2009-06-13 19:12  MainDynamicGeometryLibraryActionsTransactionbase.cs

     文件      13457  2007-03-07 08:49  MainDynamicGeometryLibraryActions说明.html

    .......      7344  2009-06-13 19:12  MainDynamicGeometryLibraryBehaviorsBehavior.cs

    .......      1507  2009-06-13 19:12  MainDynamicGeometryLibraryBehaviorsBehaviorOrderer.cs

     文件       2066  2007-03-07 08:34  MainDynamicGeometryLibraryBehaviorschina-code.net.txt

    .......      5832  2009-06-13 19:12  MainDynamicGeometryLibraryBehaviorsDragger.cs

    .......      9773  2009-06-13 19:12  MainDynamicGeometryLibraryBehaviorsFigureCreator.cs

    .......      3990  2009-06-13 19:12  MainDynamicGeometryLibraryBehaviorsIconBuilder.cs

     文件      13457  2007-03-07 08:49  MainDynamicGeometryLibraryBehaviors说明.html

     文件       2066  2007-03-07 08:34  MainDynamicGeometryLibraryBinchina-code.net.txt

     文件       2066  2007-03-07 08:34  MainDynamicGeometryLibraryBinDebugchina-code.net.txt

     文件       2066  2007-03-07 08:34  MainDynamicGeometryLibraryBinDebugdechina-code.net.txt

     文件      15208  2008-11-12 20:05  MainDynamicGeometryLibraryBinDebugdeSystem.xml.Linq.resources.dll

     文件      13457  2007-03-07 08:49  MainDynamicGeometryLibraryBinDebugde说明.html

     文件     211968  2009-06-15 08:35  MainDynamicGeometryLibraryBinDebugDynamicGeometry.dll

............此处省略1692个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)