コード例 #1
0
ファイル: NewLineToolTest.cs プロジェクト: Sony-NS/SharpMap
        private void AddNetworkCoverageAndTool()
        {
            INetworkCoverage networkCoverage = new NetworkCoverage {
                Network = network
            };

            networkCoverageGroupLayer.NetworkCoverage = networkCoverage;

            ((FeatureCollection)networkCoverageGroupLayer.LocationLayer.DataSource).AddNewFeatureFromGeometryDelegate =
                AddFeatureFromGeometryDelegate;

/* no references to DeltaShell, TODO: move LayerPropertiesEditor into SharpMap.UI
 *          mapControl.MouseDoubleClick += delegate
 *          {
 *              var dialog = new LayerPropertiesEditorDialog(networkCoverageLayer.SegmentLayer);
 *              dialog.Show(mapControl);
 *          };
 */

            mapControl.Map.Layers.Add(networkCoverageGroupLayer);

            var networkCoverageTool = new NewNodeTool(networkCoverageGroupLayer.LocationLayer);

            mapControl.Tools.Add(networkCoverageTool);
            mapControl.SnapRules.Add(new SnapRule
            {
                SourceLayer  = networkCoverageGroupLayer.LocationLayer,
                TargetLayer  = branchLayer,
                SnapRole     = SnapRole.FreeAtObject,
                Obligatory   = true,
                PixelGravity = 40
            });
            return;
        }
コード例 #2
0
        private void AddCulvertLayerAndTool()
        {
            var culverts = new EventedList <TestBranchFeature>();

            culvertLayer.DataSource = new FeatureCollection {
                Features = culverts
            };
            //culvertLayer.VectorLayer.Name = "culverts";
            culvertLayer.Visible      = true;
            culvertLayer.Style        = new VectorStyle();
            culvertLayer.Style.Fill   = new SolidBrush(Color.Tomato);
            culvertLayer.Style.Symbol = null;
            culvertLayer.Style.Line   = new Pen(Color.Turquoise, 3);
            mapControl.Map.Layers.Insert(0, culvertLayer);

            //mapControl.SnappingStrategiesByLayer[culvertLayer].Add(
            //    new SnapStrategy(branchLayer, SnapRole.FreeAtObject, 40));

            var newNodeTool = new NewNodeTool(culvertLayer);

            mapControl.Tools.Add(newNodeTool);
        }