forked from geodmms/xdgnjobs

?? ?
2008-05-07 a979cd1d60acbaacea1e7bdaba453596563cce6a
update for EOFM-76
7 files modified
89 ■■■■■ changed files
xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateLineStringStrategy.java 3 ●●●●● patch | view | raw | blame | history
xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateLineTextStrategy.java 5 ●●●● patch | view | raw | blame | history
xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateShapeStrategy.java 3 ●●●●● patch | view | raw | blame | history
xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateSymbolStrategy.java 53 ●●●● patch | view | raw | blame | history
xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateTextStrategy.java 10 ●●●●● patch | view | raw | blame | history
xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/ElementTypeCriterion.java 14 ●●●● patch | view | raw | blame | history
xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/TypeCompIdDispatchableFilter.java 1 ●●●● patch | view | raw | blame | history
xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateLineStringStrategy.java
@@ -2,6 +2,8 @@
import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.geotools.feature.AttributeTypeFactory;
import org.geotools.feature.Feature;
import org.geotools.feature.FeatureType;
@@ -23,6 +25,7 @@
public class CreateLineStringStrategy implements CreateFeatureTypeStrategy
{
    static final Log logger = LogFactory.getLog(CreateLineStringStrategy.class);
    GeometryFactory geometryFactory = new GeometryFactory();
    FeatureTypeBuilder typeBuilder = null;
    TWD97GeometryConverterDecorator convertDecorator = new TWD97GeometryConverterDecorator();
xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateLineTextStrategy.java
@@ -2,6 +2,8 @@
import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.geotools.feature.AttributeTypeFactory;
import org.geotools.feature.Feature;
import org.geotools.feature.FeatureType;
@@ -25,8 +27,9 @@
import com.ximple.io.dgn7.TextElement;
import com.ximple.io.dgn7.UserAttributeData;
public class CreateLineTextStrategy  implements CreateFeatureTypeStrategy
public class CreateLineTextStrategy implements CreateFeatureTypeStrategy
{
    static final Log logger = LogFactory.getLog(CreateLineTextStrategy.class);
    GeometryFactory geometryFactory = new GeometryFactory();
    FeatureTypeBuilder typeBuilder = null;
    TWD97GeometryConverterDecorator convertDecorator = new TWD97GeometryConverterDecorator();
xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateShapeStrategy.java
@@ -2,6 +2,8 @@
import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.geotools.feature.AttributeTypeFactory;
import org.geotools.feature.Feature;
import org.geotools.feature.FeatureType;
@@ -22,6 +24,7 @@
public class CreateShapeStrategy implements CreateFeatureTypeStrategy
{
    static final Log logger = LogFactory.getLog(CreateShapeStrategy.class);
    GeometryFactory geometryFactory = new GeometryFactory();
    FeatureTypeBuilder typeBuilder = null;
    TWD97GeometryConverterDecorator convertDecorator = new TWD97GeometryConverterDecorator();
xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateSymbolStrategy.java
@@ -2,26 +2,28 @@
import java.util.List;
import org.geotools.feature.FeatureTypeBuilder;
import org.geotools.feature.FeatureType;
import org.geotools.feature.SchemaException;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.geotools.feature.AttributeTypeFactory;
import org.geotools.feature.Feature;
import org.geotools.feature.FeatureType;
import org.geotools.feature.FeatureTypeBuilder;
import org.geotools.feature.IllegalAttributeException;
import org.geotools.feature.SchemaException;
import com.vividsolutions.jts.geom.GeometryFactory;
import com.vividsolutions.jts.geom.Geometry;
import com.vividsolutions.jts.geom.GeometryFactory;
import com.ximple.eofms.jobs.TWD97GeometryConverterDecorator;
import com.ximple.eofms.util.DefaultColorTable;
import com.ximple.io.dgn7.FrammeAttributeData;
import com.ximple.io.dgn7.Element;
import com.ximple.io.dgn7.UserAttributeData;
import com.ximple.io.dgn7.FrammeAttributeData;
import com.ximple.io.dgn7.TextElement;
import com.ximple.io.dgn7.TextNodeElement;
import com.ximple.io.dgn7.UserAttributeData;
public class CreateSymbolStrategy implements CreateFeatureTypeStrategy
{
    static final Log logger = LogFactory.getLog(CreateSymbolStrategy.class);
    GeometryFactory geometryFactory = new GeometryFactory();
    FeatureTypeBuilder typeBuilder = null;
    TWD97GeometryConverterDecorator convertDecorator = new TWD97GeometryConverterDecorator();
@@ -79,7 +81,7 @@
            TextElement txtElement = (TextElement) element;
            double angle = txtElement.getRotationAngle();
            angle += 180.0;
            angle = ((angle > 360.0)? (angle - 360.0) : (angle));
            angle = ((angle > 360.0) ? (angle - 360.0) : (angle));
            StringBuilder sb = new StringBuilder();
            sb.append(txtElement.getFontIndex());
@@ -105,40 +107,9 @@
                    sb.toString()
            });
            return feature;
        } else if (element instanceof TextNodeElement)
        } else
        {
            TextNodeElement nodeElement = (TextNodeElement) element;
            convertDecorator.setConverter(nodeElement);
            String[] texts = nodeElement.getTextArray();
            StringBuffer sb = new StringBuffer();
            for (String text : texts)
            {
                if (sb.length() != 0)
                sb.append("\n");
                sb.append(text);
            }
            double angle = nodeElement.getRotationAngle();
            angle += 180.0;
            angle = ((angle > 360.0)? (angle - 360.0) : (angle));
            Feature feature = featureType.create(new Object[]{
                    convertDecorator.toGeometry(geometryFactory),
                    (int) fLinkage.getFsc(),
                    (long) fLinkage.getUfid(),
                    (int) fLinkage.getComponentID(),
                    0,
                    nodeElement.getLevelIndex(),
                    colorTable.getColorCode(nodeElement.getColorIndex()),
                    nodeElement.getWeight(),
                    nodeElement.getLineStyle(),
                    nodeElement.getFontIndex(),
                    nodeElement.getJustification(),
                    nodeElement.getTextNodeHeight(),
                    nodeElement.getTextNodeLength(),
                    angle,
                    sb.toString()
            });
            return feature;
            logger.info("CreateSymbolStrategy cannot conver " + element.toString() + "to Feature");
        }
        return null;
    }
xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateTextStrategy.java
@@ -2,6 +2,8 @@
import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.geotools.feature.AttributeTypeFactory;
import org.geotools.feature.Feature;
import org.geotools.feature.FeatureType;
@@ -22,6 +24,7 @@
public class CreateTextStrategy implements CreateFeatureTypeStrategy
{
    static final Log logger = LogFactory.getLog(CreateTextStrategy.class);
    GeometryFactory geometryFactory = new GeometryFactory();
    FeatureTypeBuilder typeBuilder = null;
    TWD97GeometryConverterDecorator convertDecorator = new TWD97GeometryConverterDecorator();
@@ -79,7 +82,7 @@
            TextElement txtElement = (TextElement) element;
            double angle = txtElement.getRotationAngle();
            angle += 180.0;
            angle = ((angle > 360.0)? (angle - 360.0) : (angle));
            angle = ((angle > 360.0) ? (angle - 360.0) : (angle));
            convertDecorator.setConverter(txtElement);
            Feature feature = featureType.create(new Object[]{
                    convertDecorator.toGeometry(geometryFactory),
@@ -107,13 +110,13 @@
            for (String text : texts)
            {
                if (sb.length() != 0)
                sb.append("\n");
                    sb.append("\n");
                sb.append(text);
            }
            double angle = nodeElement.getRotationAngle();
            angle += 180.0;
            angle = ((angle > 360.0)? (angle - 360.0) : (angle));
            angle = ((angle > 360.0) ? (angle - 360.0) : (angle));
            Feature feature = featureType.create(new Object[]{
                    convertDecorator.toGeometry(geometryFactory),
                    (int) fLinkage.getFsc(),
@@ -124,7 +127,6 @@
                    colorTable.getColorCode(nodeElement.getColorIndex()),
                    nodeElement.getWeight(),
                    nodeElement.getLineStyle(),
                    nodeElement.getFontIndex(),
                    nodeElement.getJustification(),
                    nodeElement.getTextNodeHeight(),
                    nodeElement.getTextNodeLength(),
xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/ElementTypeCriterion.java
@@ -7,11 +7,11 @@
public class ElementTypeCriterion implements Comparable
{
    private int elementType;
    private ArrayList<Integer> elementTypeArray  ;
    private ArrayList<Integer> elementTypeArray;
    public ElementTypeCriterion()
    {
            elementTypeArray = new ArrayList<Integer>();
        elementTypeArray = new ArrayList<Integer>();
    }
    public int compareTo(Object o)
@@ -20,10 +20,10 @@
        {
            Element elm = (Element) o;
            for(Integer etype : getElementTypeArray())
            for (Integer etype : getElementTypeArray())
            {
             if (elm.getElementType().id == etype.intValue())
                return 0;
                if (elm.getElementType().id == etype.intValue())
                    return 0;
            }
        }
@@ -35,14 +35,14 @@
        return elementType;
    }
     public ArrayList<Integer> getElementTypeArray()
    public ArrayList<Integer> getElementTypeArray()
    {
        return elementTypeArray;
    }
    public void setElementType(int itype)
    {
        this.elementType =  itype ;
        this.elementType = itype;
        this.elementTypeArray.add(itype);
    }
}
xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/TypeCompIdDispatchableFilter.java
@@ -59,7 +59,6 @@
    }
    //§PÂ_¬O§_²Å©M±ø¥ó
    public boolean isDispatchable(Element element)
    {