comparison gnv-artifacts/src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java @ 519:4e347624ee7c

Last part to fix gnv/issue153. Now 'Profilschnitte', 'Horizontalschnitte' and 'horizontale Schnittprofile' all use the same x/y interpolation code. gnv-artifacts/trunk@613 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Sat, 23 Jan 2010 21:16:45 +0000
parents da21c256a0ba
children 44415ae01ddb
comparison
equal deleted inserted replaced
518:464e03bf786b 519:4e347624ee7c
1 /** 1 /**
2 * 2 *
3 */ 3 */
4 package de.intevation.gnv.state.profile.horizontal; 4 package de.intevation.gnv.state.profile.horizontal;
5 5
6 import java.util.Arrays; 6 import com.vividsolutions.jts.geom.Coordinate;
7 import java.util.ArrayList;
8 import java.util.Collection;
9 import java.util.List;
10 import java.util.Locale;
11
12 import org.apache.log4j.Logger;
13 import org.w3c.dom.Node;
14 7
15 import de.intevation.artifactdatabase.Config; 8 import de.intevation.artifactdatabase.Config;
16 9
10 import de.intevation.artifacts.CallContext;
11
17 import de.intevation.gnv.artifacts.cache.CacheFactory; 12 import de.intevation.gnv.artifacts.cache.CacheFactory;
13
14 import de.intevation.gnv.artifacts.context.GNVArtifactContext;
15
16 import de.intevation.gnv.chart.Chart;
17 import de.intevation.gnv.chart.ChartLabels;
18 import de.intevation.gnv.chart.HorizontalCrossProfileChart;
18 19
19 import de.intevation.gnv.geobackend.base.DefaultResult; 20 import de.intevation.gnv.geobackend.base.DefaultResult;
20 import de.intevation.gnv.geobackend.base.DefaultResultDescriptor; 21 import de.intevation.gnv.geobackend.base.DefaultResultDescriptor;
21 import de.intevation.gnv.geobackend.base.Result; 22 import de.intevation.gnv.geobackend.base.Result;
22 import de.intevation.gnv.geobackend.base.ResultDescriptor; 23 import de.intevation.gnv.geobackend.base.ResultDescriptor;
24
23 import de.intevation.gnv.geobackend.base.query.QueryExecutor; 25 import de.intevation.gnv.geobackend.base.query.QueryExecutor;
24 import de.intevation.gnv.geobackend.base.query.QueryExecutorFactory; 26 import de.intevation.gnv.geobackend.base.query.QueryExecutorFactory;
27
25 import de.intevation.gnv.geobackend.base.query.exception.QueryException; 28 import de.intevation.gnv.geobackend.base.query.exception.QueryException;
29
26 import de.intevation.gnv.math.Interpolation2D; 30 import de.intevation.gnv.math.Interpolation2D;
27 import de.intevation.gnv.math.LinearMetrics; 31 import de.intevation.gnv.math.LinearMetrics;
28 import de.intevation.gnv.math.Point2d; 32 import de.intevation.gnv.math.Point2d;
29 import de.intevation.gnv.chart.Chart;
30 import de.intevation.gnv.chart.ChartLabels;
31 import de.intevation.gnv.chart.HorizontalCrossProfileChart;
32 33
33 import de.intevation.gnv.state.InputData; 34 import de.intevation.gnv.state.InputData;
34 35
35 import de.intevation.gnv.utils.DistanceCalculator; 36 import de.intevation.gnv.utils.DistanceCalculator;
37 import de.intevation.gnv.utils.StringUtils;
36 import de.intevation.gnv.utils.WKTUtils; 38 import de.intevation.gnv.utils.WKTUtils;
37 import de.intevation.gnv.utils.StringUtils; 39
38 40 import java.util.ArrayList;
39 import de.intevation.gnv.artifacts.context.GNVArtifactContext; 41 import java.util.Arrays;
40 42 import java.util.Collection;
41 import de.intevation.artifacts.CallContext; 43 import java.util.List;
44 import java.util.Locale;
45
46 import org.apache.log4j.Logger;
42 47
43 import org.jfree.chart.ChartTheme; 48 import org.jfree.chart.ChartTheme;
44 49
45 import com.vividsolutions.jts.geom.Coordinate; 50 import org.w3c.dom.Node;
46 51
47 /** 52 /**
48 * @author Tim Englich (tim.englich@intevation.de) 53 * @author Tim Englich (tim.englich@intevation.de)
49 * @author Ingo Weinzierl (iweinzierl@intevation.de) 54 * @author Ingo Weinzierl (iweinzierl@intevation.de)
50 * @author Sascha L. Teichmann (sascha.teichmann@intevation.de) 55 * @author Sascha L. Teichmann (sascha.teichmann@intevation.de)
358 363
359 public void handle(Result result) { 364 public void handle(Result result) {
360 Coordinate coordinate = 365 Coordinate coordinate =
361 WKTUtils.toCoordinate(result.getString("SHAPE")); 366 WKTUtils.toCoordinate(result.getString("SHAPE"));
362 double value = result.getDouble("YORDINATE"); 367 double value = result.getDouble("YORDINATE");
363 int iPos = result.getInteger("MEDIAN.MESHPOINT.JPOSITION"); 368 int iPos = result.getInteger("IPOSITION");
364 int jPos = result.getInteger("MEDIAN.MESHPOINT.JPOSITION"); 369 int jPos = result.getInteger("JPOSITION");
365 Point2d p = new Point2d( 370 Point2d p = new Point2d(
366 coordinate.x, 371 coordinate.x,
367 coordinate.y, 372 coordinate.y,
368 value, 373 value,
369 iPos, jPos); 374 iPos, jPos);

http://dive4elements.wald.intevation.org