Package org.geotools.styling

Examples of org.geotools.styling.FeatureTypeStyle


    }

    public void visit(FeatureTypeStyle fts) {
       
       
        FeatureTypeStyle copy = new FeatureTypeStyleImpl( (FeatureTypeStyleImpl)fts);

//        copy = new StyleFactoryImpl().createFeatureTypeStyle(
//                fts.getRules(),
//                fts.getSemanticTypeIdentifiers(),
//                fts.featureInstanceIDs(),
//                fts.getFeatureTypeName(),
//                fts.getDescription(),
//                fts.getName());
       
       
        Rule[] rules = fts.getRules();
        int length=rules.length;
        Rule[] rulesCopy = new Rule[length];
        for (int i = 0; i < length; i++) {
            if (rules[i] != null) {
                rules[i].accept(this);
                rulesCopy[i] = (Rule) pages.pop();
            }
        }
//
//        copy = sf.createFeatureTypeStyle();
//        copy.setName(fts.getName());
//        copy.setTitle(fts.getTitle());
//        copy.setAbstract(fts.getAbstract());
//        copy.setFeatureTypeName(fts.getFeatureTypeName());
        copy.setRules(rulesCopy);
//        copy.setSemanticTypeIdentifiers((String[]) fts.getSemanticTypeIdentifiers().clone());
       
        if( STRICT && !copy.equals( fts )){
            throw new IllegalStateException("Was unable to duplicate provided FeatureTypeStyle:"+fts );
        }
        pages.push(copy);
    }
View Full Code Here


        }
    }


    public void testStyle() throws Exception {
        FeatureTypeStyle fts = sf.createFeatureTypeStyle();
        fts.setFeatureTypeName("feature-type-1");

        FeatureTypeStyle fts2 = fts2();

        Style style = sf.getDefaultStyle();
        style.addFeatureTypeStyle(fts);
        style.addFeatureTypeStyle(fts2);
View Full Code Here

       
        assertEqualsContract(copy, notEq, style);
    }

    private FeatureTypeStyle fts2() {
        FeatureTypeStyle fts2 = sf.createFeatureTypeStyle();
        Rule rule = sf.createRule();
        fts2.addRule(rule);
        fts2.setFeatureTypeName("feature-type-2");

        return fts2;
    }
View Full Code Here

        return fts2;
    }

    public void testFeatureTypeStyle() throws Exception {
        FeatureTypeStyle fts = sf.createFeatureTypeStyle();
        fts.setFeatureTypeName("feature-type");

        Rule rule1;

        rule1 = sf.createRule();
        rule1.setName("rule1");
        rule1.setFilter(ff.id(Collections.singleton(ff.featureId("FID"))));

        Rule rule2 = sf.createRule();
        rule2.setIsElseFilter(true);
        rule2.setName("rule2");
        fts.addRule(rule1);
        fts.addRule(rule2);

        fts.accept( visitor );
        FeatureTypeStyle clone = (FeatureTypeStyle) visitor.getCopy();
        //assertClone(fts, clone);
        assertEqualsContract( fts, clone );
       
        rule1 = sf.createRule();
        rule1.setName("rule1");
        rule1.setFilter(ff.id(Collections.singleton(ff.featureId("FID"))));

        FeatureTypeStyle notEq = sf.createFeatureTypeStyle();
        notEq.setName("fts-not-equal");
        notEq.addRule(rule1);
        assertEqualsContract(clone, notEq, fts);
    }
View Full Code Here

    protected void refresh() {
        Style style = getStyle(); // grab an SLD style or bust

        List<FeatureTypeStyle> ftsList = style.featureTypeStyles();
        FeatureTypeStyle fts = null;
        if (ftsList.size() > 0) {
            fts = ftsList.get(0);
        }

        SimpleFeatureType schema = featureCollection.getSchema();
        geometryName.setInput(schema);
        String name = DEFAULT_GEOMETRY;

        Stroke stroke = null;
        Fill fill = null;
        Graphic graphic = null;
        TextSymbolizer text = null;
        LabelPlacement placement = null;

        List<Rule> rules = Collections.emptyList();
        if (fts != null)
            rules = fts.rules();
        if (rules.size() > 1) {
            // simple mode trimms away all but the first rule
            Rule keepRule = rules.get(0);
            rules.clear();
            rules.add(keepRule);
View Full Code Here

        Rule rule = this.build.createRule(array);
        if (minScale.isEnabled())
            rule.setMinScaleDenominator(minScaleDen);
        if (maxScale.isEnabled())
            rule.setMaxScaleDenominator(maxScaleDen);
        FeatureTypeStyle featureTypeStyle = this.build.createFeatureTypeStyle(SLDs.GENERIC_FEATURE_TYPENAME, rule);
        featureTypeStyle.setName("simple"); //$NON-NLS-1$

        Style style = getStyle();
        style.setDefault(true);
        if (replace.getSelection()) {
            // if repalce was hit we are going to completly redfine the style
View Full Code Here

     *
     * @generated modifiable
     */
    public Object parse(ElementInstance instance, Node node, Object value)
        throws Exception {
        FeatureTypeStyle featureTypeStyle = styleFactory.createFeatureTypeStyle();

        //&lt;xsd:element ref="sld:Name" minOccurs="0"/&gt;
        if (node.hasChild("Name")) {
            featureTypeStyle.setName((String) node.getChildValue("Name"));
        }

        //&lt;xsd:element ref="sld:Title" minOccurs="0"/&gt;
        if (node.hasChild("Title")) {
            featureTypeStyle.getDescription().setTitle(
                    (InternationalString) node.getChildValue("Title"));
        }

        //&lt;xsd:element ref="sld:Abstract" minOccurs="0"/&gt;
        if (node.hasChild("Abstract")) {
            featureTypeStyle.getDescription().setAbstract(
                    (InternationalString) node.getChildValue("Abstract"));
        }

        //&lt;xsd:element ref="sld:FeatureTypeName" minOccurs="0"/&gt;
        if (node.hasChild("FeatureTypeName")) {
            //sld 1.0 FTN is a String, in SE 1.1 it is a QName
            Object ftn = node.getChildValue("FeatureTypeName");
            if (ftn instanceof QName) {
                QName qn = (QName)ftn;
                ftn = qn.getPrefix() != null && !"".equals(qn.getPrefix().trim()) ?
                        qn.getPrefix() + ":" + qn.getLocalPart() : qn.getLocalPart();
            }
            featureTypeStyle.setFeatureTypeName(ftn.toString());
        }

        //&lt;xsd:element ref="sld:SemanticTypeIdentifier" minOccurs="0" maxOccurs="unbounded"/&gt;
        if (node.hasChild("SemanticTypeIdentifier")) {
            List ids = node.getChildValues("SemanticTypeIdentifier");
            featureTypeStyle.setSemanticTypeIdentifiers((String[]) ids.toArray(
                    new String[ids.size()]));
        }

        //&lt;xsd:element ref="sld:Rule" maxOccurs="unbounded"/&gt;
        if (node.hasChild("Rule")) {
            List rules = node.getChildValues("Rule");
            featureTypeStyle.setRules((Rule[]) rules.toArray(new Rule[rules.size()]));
        }

        return featureTypeStyle;
    }
View Full Code Here

     *
     * @generated modifiable
     */
    public Object parse(ElementInstance instance, Node node, Object value) throws Exception {

        FeatureTypeStyle fts = (FeatureTypeStyle) super.parse(instance, node, value);
       
        if (node.hasChild("Description")) {
            Description d = (Description) node.getChildValue("Description");
            fts.getDescription().setTitle(d.getTitle());
            fts.getDescription().setAbstract(d.getAbstract());
        }
       
        //TODO: version
        if (node.hasChild("version")) {
        }
View Full Code Here

        Style style = layer.getStyles()[0];
        assertEquals("GEOSYM", style.getName());
        assertTrue(style.isDefault());
        assertEquals(1, style.getFeatureTypeStyles().length);

        FeatureTypeStyle ftStyle = (FeatureTypeStyle) style.getFeatureTypeStyles()[0];
        assertEquals(1, ftStyle.getRules().length);

        Rule rule = ftStyle.getRules()[0];
        assertEquals("main", rule.getName());
        assertEquals(1, rule.getSymbolizers().length);

        PolygonSymbolizer ps = (PolygonSymbolizer) rule.getSymbolizers()[0];
        assertEquals("GEOMETRY", ps.getGeometryPropertyName());
View Full Code Here

                                </Fill>
                        </PolygonSymbolizer>
                </Rule>
        </FeatureTypeStyle>*/
       
        FeatureTypeStyle fts = (FeatureTypeStyle) parse("example-featurestyle.xml");
        assertEquals("oceansea:Foundation", fts.getFeatureTypeName());
        assertEquals(1, fts.rules().size());
   
        Rule rule = fts.rules().get(0);
        assertEquals("main", rule.getName());
       
        assertEquals(1, rule.symbolizers().size());
       
        PolygonSymbolizer sym = (PolygonSymbolizer) rule.symbolizers().get(0);
View Full Code Here

TOP

Related Classes of org.geotools.styling.FeatureTypeStyle

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.