annotate gnv-artifacts/src/main/java/de/intevation/gnv/artifacts/context/GNVArtifactContext.java @ 639:a94ed2755480

Implemented SVG export for histograms. gnv-artifacts/trunk@724 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Tue, 02 Mar 2010 14:48:32 +0000
parents b248531fa20b
children c8749d83d9b6
rev   line source
52
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
1 /**
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
2 *
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
3 */
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
4 package de.intevation.gnv.artifacts.context;
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
5
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
6 import org.apache.log4j.Logger;
444
85f48e287fb3 Added configuration for vertical cross sections ("Profilschnitte")
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 443
diff changeset
7
52
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
8 import org.w3c.dom.Document;
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
9
521
1bf058f1a2d1 Generate seabed polygon to "Profilschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 474
diff changeset
10 import java.awt.Color;
444
85f48e287fb3 Added configuration for vertical cross sections ("Profilschnitte")
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 443
diff changeset
11 import java.awt.Dimension;
521
1bf058f1a2d1 Generate seabed polygon to "Profilschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 474
diff changeset
12 import java.awt.Paint;
444
85f48e287fb3 Added configuration for vertical cross sections ("Profilschnitte")
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 443
diff changeset
13
472
d6a100d5f74a Added configuration of directory of "Horizontalschnitt" shape files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 468
diff changeset
14 import java.io.File;
d6a100d5f74a Added configuration of directory of "Horizontalschnitt" shape files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 468
diff changeset
15
52
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
16 import de.intevation.artifactdatabase.DefaultArtifactContext;
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
17
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
18 /**
443
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
19 * @author Tim Englich (tim.englich@intevation.de)
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
20 * @author Sascha L. Teichmann (sascha.teichmann@intevation.de)
52
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
21 */
443
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
22 public class GNVArtifactContext
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
23 extends DefaultArtifactContext
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
24 {
52
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
25 /**
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
26 * the logger, used to log exceptions and additonaly information
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
27 */
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
28 private static Logger log = Logger.getLogger(GNVArtifactContext.class);
171
7fb9441dd8af Format Code to max 80 Chars per Row and Cleanup
Tim Englich <tim.englich@intevation.de>
parents: 52
diff changeset
29
443
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
30 public static final String CHART_TEMPLATE_KEY =
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
31 "gnv.chart.template";
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
32
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
33 public static final String HORIZONTAL_CROSS_SECTION_PROFILE_SAMPLES_KEY =
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
34 "gnv.horizontal.cross.section.profile.samples";
468
7ba4c7222265 Added ij-Index determination for horizontal-cross-sections.
Tim Englich <tim.englich@intevation.de>
parents: 463
diff changeset
35
7ba4c7222265 Added ij-Index determination for horizontal-cross-sections.
Tim Englich <tim.englich@intevation.de>
parents: 463
diff changeset
36 public static final String HORIZONTAL_CROSS_SECTION_SAMPLES_KEY =
7ba4c7222265 Added ij-Index determination for horizontal-cross-sections.
Tim Englich <tim.englich@intevation.de>
parents: 463
diff changeset
37 "gnv.horizontal.cross.section.samples";
443
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
38
593
b248531fa20b Added experimental support for extrapolation in "Horizontalschnitte"
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 521
diff changeset
39 public static final String HORIZONTAL_CROSS_SECTION_EXTRAPOLATION_ROUNDS_KEY =
b248531fa20b Added experimental support for extrapolation in "Horizontalschnitte"
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 521
diff changeset
40 "gnv.horizontal.cross.section.extrapolation.rounds";
b248531fa20b Added experimental support for extrapolation in "Horizontalschnitte"
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 521
diff changeset
41
472
d6a100d5f74a Added configuration of directory of "Horizontalschnitt" shape files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 468
diff changeset
42 public static final String
d6a100d5f74a Added configuration of directory of "Horizontalschnitt" shape files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 468
diff changeset
43 HORIZONTAL_CROSS_SECTION_RESULT_SHAPEFILE_PATH_KEY =
d6a100d5f74a Added configuration of directory of "Horizontalschnitt" shape files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 468
diff changeset
44 "gnv.horizontal.cross.section.result.shapefile";
d6a100d5f74a Added configuration of directory of "Horizontalschnitt" shape files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 468
diff changeset
45
d6a100d5f74a Added configuration of directory of "Horizontalschnitt" shape files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 468
diff changeset
46 public static final File
d6a100d5f74a Added configuration of directory of "Horizontalschnitt" shape files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 468
diff changeset
47 DEFAULT_HORIZONTAL_CROSS_SECTION_PROFILE_SHAPEFILE_PATH =
d6a100d5f74a Added configuration of directory of "Horizontalschnitt" shape files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 468
diff changeset
48 new File(System.getProperty("java.io.tmpdir"));
d6a100d5f74a Added configuration of directory of "Horizontalschnitt" shape files.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 468
diff changeset
49
443
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
50 public static final Integer
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
51 DEFAULT_HORIZONTAL_CROSS_SECTION_PROFILE_SAMPLES = Integer.valueOf(250);
468
7ba4c7222265 Added ij-Index determination for horizontal-cross-sections.
Tim Englich <tim.englich@intevation.de>
parents: 463
diff changeset
52
7ba4c7222265 Added ij-Index determination for horizontal-cross-sections.
Tim Englich <tim.englich@intevation.de>
parents: 463
diff changeset
53 public static final Integer
474
ab29e4ff2fda Added area interpolation needed for "Horizontalschnitt"
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 472
diff changeset
54 DEFAULT_HORIZONTAL_CROSS_SECTION_SAMPLES = Integer.valueOf(1024);
ab29e4ff2fda Added area interpolation needed for "Horizontalschnitt"
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 472
diff changeset
55
593
b248531fa20b Added experimental support for extrapolation in "Horizontalschnitte"
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 521
diff changeset
56 public static final Integer
b248531fa20b Added experimental support for extrapolation in "Horizontalschnitte"
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 521
diff changeset
57 DEFAULT_HORIZONTAL_CROSS_SECTION_EXTRAPOLATION_ROUNDS = Integer.valueOf(0);
b248531fa20b Added experimental support for extrapolation in "Horizontalschnitte"
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 521
diff changeset
58
474
ab29e4ff2fda Added area interpolation needed for "Horizontalschnitt"
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 472
diff changeset
59 public static final String HORIZONTAL_CROSS_SECTION_GROUND_INTERPOLATION_KEY =
ab29e4ff2fda Added area interpolation needed for "Horizontalschnitt"
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 472
diff changeset
60 "gnv.horizontal.cross.section.ground.interpolation";
ab29e4ff2fda Added area interpolation needed for "Horizontalschnitt"
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 472
diff changeset
61
ab29e4ff2fda Added area interpolation needed for "Horizontalschnitt"
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 472
diff changeset
62 public static final String DEFAULT_HORIZONTAL_CROSS_SECTION_GROUND_INTERPOLATION =
ab29e4ff2fda Added area interpolation needed for "Horizontalschnitt"
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 472
diff changeset
63 "bilinear";
443
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
64
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
65 public static final String PALETTES_KEY =
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
66 "gnv.color.palettes";
da21c256a0ba "horizontale Schnittprofile" are now configured via conf.xml
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 171
diff changeset
67
444
85f48e287fb3 Added configuration for vertical cross sections ("Profilschnitte")
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 443
diff changeset
68 public static final String VERTICAL_CROSS_SECTION_SAMPLES_KEY =
85f48e287fb3 Added configuration for vertical cross sections ("Profilschnitte")
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 443
diff changeset
69 "gnv.vertical.cross.section.samples";
85f48e287fb3 Added configuration for vertical cross sections ("Profilschnitte")
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 443
diff changeset
70
85f48e287fb3 Added configuration for vertical cross sections ("Profilschnitte")
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 443
diff changeset
71 public static final Dimension DEFAULT_VERTICAL_CROSS_SECTION_SAMPLES =
85f48e287fb3 Added configuration for vertical cross sections ("Profilschnitte")
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 443
diff changeset
72 new Dimension(1024, 768);
85f48e287fb3 Added configuration for vertical cross sections ("Profilschnitte")
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 443
diff changeset
73
85f48e287fb3 Added configuration for vertical cross sections ("Profilschnitte")
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 443
diff changeset
74 public static final String VERTICAL_CROSS_SECTION_FILTER_FACTORIES_KEY =
85f48e287fb3 Added configuration for vertical cross sections ("Profilschnitte")
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 443
diff changeset
75 "gnv.vertical.cross.section.filter.factories";
85f48e287fb3 Added configuration for vertical cross sections ("Profilschnitte")
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 443
diff changeset
76
463
07672838fa5f Make ground interpolation for vertical cross section configurable.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 444
diff changeset
77 public static final String VERTICAL_CROSS_SECTION_GROUND_INTERPOLATION_KEY =
07672838fa5f Make ground interpolation for vertical cross section configurable.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 444
diff changeset
78 "gnv.vertical.cross.section.ground.interpolation";
07672838fa5f Make ground interpolation for vertical cross section configurable.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 444
diff changeset
79
07672838fa5f Make ground interpolation for vertical cross section configurable.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 444
diff changeset
80 public static final String DEFAULT_VERTICAL_CROSS_SECTION_GROUND_INTERPOLATION =
07672838fa5f Make ground interpolation for vertical cross section configurable.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 444
diff changeset
81 "bilinear";
07672838fa5f Make ground interpolation for vertical cross section configurable.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 444
diff changeset
82
521
1bf058f1a2d1 Generate seabed polygon to "Profilschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 474
diff changeset
83 public static final String VERTICAL_CROSS_SECTION_GROUND_FILL_KEY =
1bf058f1a2d1 Generate seabed polygon to "Profilschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 474
diff changeset
84 "gnv.vertical.cross.section.ground.fill";
1bf058f1a2d1 Generate seabed polygon to "Profilschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 474
diff changeset
85
1bf058f1a2d1 Generate seabed polygon to "Profilschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 474
diff changeset
86 public static final Paint DEFAULT_VERTICAL_CROSS_SECTION_GROUND_FILL =
1bf058f1a2d1 Generate seabed polygon to "Profilschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 474
diff changeset
87 new Color(0x7c8683);
1bf058f1a2d1 Generate seabed polygon to "Profilschnitte".
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 474
diff changeset
88
171
7fb9441dd8af Format Code to max 80 Chars per Row and Cleanup
Tim Englich <tim.englich@intevation.de>
parents: 52
diff changeset
89 public GNVArtifactContext() {
52
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
90 super();
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
91 log.debug("GNVArtifactContext.Constructor");
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
92 }
171
7fb9441dd8af Format Code to max 80 Chars per Row and Cleanup
Tim Englich <tim.englich@intevation.de>
parents: 52
diff changeset
93
52
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
94 public GNVArtifactContext(Document config) {
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
95 super(config);
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
96 log.debug("GNVArtifactContext.Constructor(config)");
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
97 }
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
98
4d6a82b96059 First Implementation of the GNV-Artifacts
Tim Englich <tim.englich@intevation.de>
parents:
diff changeset
99 }

http://dive4elements.wald.intevation.org