Exemple #1
0
        public Control CreateMarkerPlaceControl(IMarkerPlacement pGE, BasicSymbolLayerBaseControl attControl)
        {
            IGraphicAttributes attributes = new MarkerPlacementInsidePolygonClass();
            string             className  = attributes.ClassName;
            string             str2       = (pGE as IGraphicAttributes).ClassName;

            switch ((pGE as IGraphicAttributes).ClassName)
            {
            case "Along line":
                return(new MarkerPlacementAlongLinePage(attControl));

            case "At extremities":
                return(new MarkerPlacementAtExtremitiesPage(attControl));

            case "Decorations":
                return(new MarkerPlacementDecorationPage(attControl));

            case "Inside polygon":
                return(new MarkerPlacementInsidePolygonPage(attControl));

            case "On line":
                return(new MarkerPlacementOnLinePage(attControl));

            case "On point":
                return(new MarkerPlacementOnPointPage(attControl));

            case "Polygon center":
                return(new MarkerPlacementPolygonCenterPage(attControl));

            case "Randomly along":
                return(new MarkerPlacementRandomAlongLinePage(attControl));

            case "Randomly inside polygon":
                return(new MarkerPlacementRandomInPolygonPage(attControl));

            case "Variable size":
                return(new MarkerPlacementVariableAlongLinePage(attControl));
            }
            return(null);
        }
Exemple #2
0
        private void BasicMarkerSymbolLayer_Load(object sender, EventArgs e)
        {
            IMarkerPlacement markerPlacement = (base.m_pBasicSymbol as IBasicMarkerSymbol).MarkerPlacement;
            Control          c = base.CreateMarkerPlaceControl(markerPlacement, this);

            if (c != null)
            {
                (c as MarkerPlacementBaseControl).BasicMarkerSymbol = base.m_pBasicSymbol as IBasicMarkerSymbol;
                base.AddControl(c);
            }
            Control control2 = base.CreateControlByGeometricEffect(base.m_pBasicSymbol as IGeometricEffect, this);

            (control2 as GeometricEffectBaseControl).GeometricEffect = base.m_pBasicSymbol as IGeometricEffect;
            base.AddControl(control2);
            for (int i = (base.m_pBasicSymbol as IGeometricEffects).Count - 1; i >= 0; i--)
            {
                control2 = base.CreateControlByGeometricEffect(
                    (base.m_pBasicSymbol as IGeometricEffects).get_Element(i), this);
                (control2 as GeometricEffectBaseControl).GeometricEffect =
                    (base.m_pBasicSymbol as IGeometricEffects).get_Element(i);
                base.AddControl(control2);
            }
        }