source: osm/applications/editors/josm/plugins/opendata/includes/com/vividsolutions/jts/geom/CoordinateSequences.java@ 28000

Last change on this file since 28000 was 28000, checked in by donvip, 12 years ago

Import new "opendata" JOSM plugin

File size: 2.0 KB
Line 
1/*
2 * The JTS Topology Suite is a collection of Java classes that
3 * implement the fundamental operations required to validate a given
4 * geo-spatial data set to a known topological specification.
5 *
6 * Copyright (C) 2001 Vivid Solutions
7 *
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License as published by the Free Software Foundation; either
11 * version 2.1 of the License, or (at your option) any later version.
12 *
13 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Lesser General Public License for more details.
17 *
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with this library; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21 *
22 * For more information, contact:
23 *
24 * Vivid Solutions
25 * Suite #1A
26 * 2328 Government Street
27 * Victoria BC V8T 5G5
28 * Canada
29 *
30 * (250)385-6040
31 * www.vividsolutions.com
32 */
33package com.vividsolutions.jts.geom;
34
35
36/**
37 * Utility functions for manipulating {@link CoordinateSequence}s
38 *
39 * @version 1.7
40 */
41public class CoordinateSequences {
42
43 /**
44 * Reverses the coordinates in a sequence in-place.
45 */
46 public static void reverse(CoordinateSequence seq)
47 {
48 int last = seq.size() - 1;
49 int mid = last / 2;
50 for (int i = 0; i <= mid; i++) {
51 swap(seq, i, last - i);
52 }
53 }
54
55 /**
56 * Swaps two coordinates in a sequence.
57 *
58 * @param seq
59 * @param i
60 * @param j
61 */
62 public static void swap(CoordinateSequence seq, int i, int j)
63 {
64 if (i == j) return;
65 for (int dim = 0; dim < seq.getDimension(); dim++) {
66 double tmp = seq.getOrdinate(i, dim);
67 seq.setOrdinate(i, dim, seq.getOrdinate(j, dim));
68 seq.setOrdinate(j, dim, tmp);
69 }
70 }
71
72
73
74}
Note: See TracBrowser for help on using the repository browser.