Package org.geotools.styling

Examples of org.geotools.styling.Rule


        }
        return null;
    }

    private static Rule getRule( Style sld ) {
        Rule rule = null;
        int size = 0;

        for( FeatureTypeStyle style : sld.getFeatureTypeStyles() ) {
            for( Rule potentialRule : style.getRules() ) {
                if (potentialRule != null) {
View Full Code Here


public class StyleTreeLabelProvider extends LabelProvider implements ITableLabelProvider {
    public Image getImage( Object element ) {
        if (element instanceof Rule) {
            // grab the color for the current rule
            Rule rule = (Rule) element;
            String[] colors = SLDs.colors(rule);
            if (colors.length == 0)
                return null;
            if (colors.length > 1) {
                SLDPlugin.log("Multiple colours received unexpectedly, proceeding with first colour only.", null); //$NON-NLS-1$
View Full Code Here

        if (element instanceof Style) {
            // shouldn't be called, as the root object is hidden
            Style style = (Style) element;
            return style.getTitle();
        } else if (element instanceof Rule) {
            Rule rule = (Rule) element;
            if (rule.getName().startsWith("rule")) //$NON-NLS-1$
                return StyleGenerator.toStyleExpression(rule.getFilter());
            else
                return rule.getTitle();
        }
        return super.getText(element); // unknown type
    }
View Full Code Here

    public Image getColumnImage( Object element, int columnIndex ) {
        if (columnIndex == 0) { // image
            if (element instanceof Rule) {
                // grab the color for the current rule
                Rule rule = (Rule) element;
                String[] colors = SLDs.colors(rule);
                if (colors.length == 0)
                    return null;
                Color color = SLDs.toColor(colors[0]);

                List<Symbolizer> symbolizers = rule.symbolizers();
                for( Symbolizer symbolizer : symbolizers ) {
                    if (symbolizer instanceof PointSymbolizer) {
                        return Glyph.point(rule).createImage();
                    } else if (symbolizer instanceof LineSymbolizer) {
                        return Glyph.line(rule).createImage();
View Full Code Here

        } else if (columnIndex == 1) { // label
            if (element instanceof String) {
                SLDPlugin.log("already knew label", null); //$NON-NLS-1$
                return (String) element;
            } else if (element instanceof Rule) {
                Rule rule = (Rule) element;
                return rule.getTitle();
            }
        } else if (columnIndex == 2) { // style expression
            if (element instanceof Rule) {
                Rule rule = (Rule) element;
                if (rule.getName().startsWith("rule")) //$NON-NLS-1$
                    return StyleGenerator.toStyleExpression(rule.getFilter());
                else
                    return null;
            }
        }
        return null;
View Full Code Here

            }
        }
        if(defaultStyle == null)
            return;
       
        Rule rule = defaultStyle.rules().get(0);
        // Find the first PointSymbolizer in the rule
        PointSymbolizer sym = null;
        for(Symbolizer symbolizer : rule.symbolizers()) {
            if(symbolizer instanceof PointSymbolizer) {
                sym = (PointSymbolizer)symbolizer;
                break;
            }
        }
        if(sym == null) {
            SLD.POINT.createDefault();
            rule.symbolizers().add(sym);
        }
       
//        IProgressMonitor monitor = new NullProgressMonitor();
//        getSelectedLayer().getResource(FeatureSource.class, monitor);
       
View Full Code Here

    }

    private void createGeometrySLD( Color colour, Color colour2, String geomXPath, Style style,
            int size ) throws IllegalFilterException {
        // create Point rule
        Rule rule = getDefaultRule(style);
        PropertyIsEqualTo filter = createGeometryFunctionFilter(geomXPath, Point.class
                .getSimpleName());
        rule.setFilter(filter);
        Symbolizer[] pointSymbolizers = new Symbolizer[]{createPointSymbolizer(colour, size)};
        rule.setSymbolizers(pointSymbolizers);
        getDefaultFeatureTypeStyle(style).addRule(rule);

        // create MultiPoint rule
        rule = styleBuilder.createRule(new Symbolizer[]{});
        filter = createGeometryFunctionFilter(geomXPath, MultiPoint.class.getSimpleName());
        rule.setFilter(filter);
        rule.setSymbolizers(pointSymbolizers);
        getDefaultFeatureTypeStyle(style).addRule(rule);

        // create LineString rule
        rule = styleBuilder.createRule(new Symbolizer[]{});
        filter = createGeometryFunctionFilter(geomXPath, LineString.class.getSimpleName());
        rule.setFilter(filter);
        Symbolizer[] lineSymbolizers = createLineSymbolizers(this);
        rule.setSymbolizers(lineSymbolizers);
        getDefaultFeatureTypeStyle(style).addRule(rule);

        // create LinearRing rule
        rule = styleBuilder.createRule(new Symbolizer[]{});
        filter = createGeometryFunctionFilter(geomXPath, LinearRing.class.getSimpleName());
        rule.setFilter(filter);
        rule.setSymbolizers(lineSymbolizers);
        getDefaultFeatureTypeStyle(style).addRule(rule);

        // create MultiLineString rule
        rule = styleBuilder.createRule(new Symbolizer[]{});
        filter = createGeometryFunctionFilter(geomXPath, MultiLineString.class.getSimpleName());
        rule.setFilter(filter);
        rule.setSymbolizers(lineSymbolizers);
        getDefaultFeatureTypeStyle(style).addRule(rule);

        // create Polygon rule
        rule = styleBuilder.createRule(new Symbolizer[]{});
        filter = createGeometryFunctionFilter(geomXPath, Polygon.class.getSimpleName());
        rule.setFilter(filter);
        Symbolizer[] polygonSymbolizers = createPolygonSymbolizarts(this);
        rule.setSymbolizers(polygonSymbolizers);
        getDefaultFeatureTypeStyle(style).addRule(rule);

        // create MultiPolygon rule
        rule = styleBuilder.createRule(new Symbolizer[]{});
        filter = createGeometryFunctionFilter(geomXPath, MultiPolygon.class.getSimpleName());
        rule.setFilter(filter);
        rule.setSymbolizers(polygonSymbolizers);
        getDefaultFeatureTypeStyle(style).addRule(rule);
    }
View Full Code Here

        removeButton.addSelectionListener(new SelectionListener() {

            public void widgetSelected( SelectionEvent e ) {
                StructuredSelection selection = (StructuredSelection) treeViewer.getSelection();
                if (selection.isEmpty()) return;
                Rule rule = (Rule) selection.getFirstElement();
                if (removeRule(rule)) {
                    treeViewer.refresh();
                } else {
                    //freak out
                }
View Full Code Here

              AffineTransform worldToScreen = null; // we are leting the GridCoverageRenderer sort that out
             
              //draw
              try {
                  Style style = grabStyle();
                  Rule rule = SLDs.getRasterSymbolizerRule(style);
                 
                  final double currentScale = currentContext.getViewportModel().getScaleDenominator();               
                  double minScale = rule.getMinScaleDenominator();
                  double maxScale = rule.getMaxScaleDenominator();
                  if (minScale <= currentScale && currentScale <= maxScale ) {
                      final GridCoverageRenderer paint = new GridCoverageRenderer( destinationCRS, envelope, screenSize,worldToScreen,hints );
                      final RasterSymbolizer rasterSymbolizer = SLD.rasterSymbolizer(style);

                      // check if there is a color to mask
View Full Code Here

        double maxScale = Double.MAX_VALUE;
        float opacity = 1.0f;
        if (style != null) {
            try {
                FeatureTypeStyle featureStyle = style.featureTypeStyles().get(0);               
                Rule rule = featureStyle.rules().get(0);
                minScale = rule.getMinScaleDenominator();
                maxScale = rule.getMaxScaleDenominator();
                if (rule.getSymbolizers()[0] instanceof RasterSymbolizer) {
                    RasterSymbolizer rs = (RasterSymbolizer) rule.getSymbolizers()[0];
                    opacity = getOpacity(rs);
                }

            } catch (Exception e) {
                ProjectPlugin.getPlugin().log(e);
View Full Code Here

TOP

Related Classes of org.geotools.styling.Rule

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.