В настоящее время не может найти маршрут для походов GPX на картеJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 В настоящее время не может найти маршрут для походов GPX на карте

Сообщение Anonymous »

Мне нужно загрузить файл GPX на карту, по этой причине мне нужно проанализировать файл и получить из него трек -точки, после того, как это создало Linestring или MultiLinesting и заполняет его на карте, основная проблема заключается в том, что он заполнен на карте на неправильном месте, поскольку в Instnace часть маршрута может быть на озере или на море, что не так,
у кого -то была сходная проблема? Если да, то как вы справились с этим? Местоположение WEERD и странная культура не правильно < /li>
< /ol>
Mathtransform имела аналогичную логику < /p>
try {
// Define the source and target coordinate systems
CoordinateReferenceSystem sourceCRS = CRS.decode("EPSG:3857"); // Example: Web Mercator
CoordinateReferenceSystem targetCRS = CRS.decode("EPSG:4326"); // WGS84 (Leaflet uses this)

CoordinateOperation operation = CRS.findOperation(sourceCRS, targetCRS, null);
transformToWGS84 = operation.getMathTransform();

} catch (FactoryException e) {
log.error("Error initializing coordinate transformation", e);
}
< /code>
type here`import org.geotools.geometry.jts.JTS;
import org.geotools.geometry.jts.JTSFactoryFinder;
import org.opengis.geometry.DirectPosition;
import org.opengis.geometry.coordinate.LineString;
import org.opengis.geometry.geometryfactory.GeometryFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.util.ArrayList;
import java.util.List;

public class MapProcessor {
private static final Logger log = LoggerFactory.getLogger(MapProcessor.class);
private final GeometryFactory geometryFactory = JTSFactoryFinder.getGeometryFactory();
private final List geometries = new ArrayList();
private Polygon cityBoundary; // The cropping boundary

public MapProcessor(Polygon cityBoundary) {
this.cityBoundary = cityBoundary;
}

// This method processes a list of TrackPoints and creates the corresponding path.
public void generatePath(List trackPoints) {
if (trackPoints == null || trackPoints.isEmpty()) {
log.warn("No TrackPoints provided.");
return;
}

List pathCoords = new ArrayList();
for (TrackPoint trackPoint : trackPoints) {
if (isValidCoordinate(trackPoint.getLon(), trackPoint.getLat())) {
// Create DirectPosition from TrackPoint data (longitude and latitude)
DirectPosition pos = geometryFactory.createDirectPosition(new double[]{trackPoint.getLon(), trackPoint.getLat()});
pathCoords.add(pos);
}
}

if (pathCoords.size() < 2) {
log.warn("Not enough valid points to create a path.");
return;
}

LineString pathLine = geometryFactory.createLineString(pathCoords);

log.info("Original LineString created with {} points.", pathCoords.size());

pathLine = validatePath(pathLine);
if (pathLine == null) {
log.warn("Path validation failed.");
return;
}

pathLine = cropPath(pathLine);
if (pathLine == null) {
log.warn("Path is outside the city and has been removed.");
return;
}

geometries.add(pathLine);
}

// Validate if the coordinate is within the acceptable range for longitude and latitude.
private boolean isValidCoordinate(double lon, double lat) {
return lon >= -180 && lon = -90 && lat

Подробнее здесь: https://stackoverflow.com/questions/794 ... e-on-a-map
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как создать полилинию листовки после загрузки дорожки Gpx с разными цветами
    Гость » » в форуме Javascript
    0 Ответы
    29 Просмотры
    Последнее сообщение Гость
  • Заменить последнюю строку в текстовом файле SD-карты (gpx) на esp32
    Anonymous » » в форуме C++
    0 Ответы
    73 Просмотры
    Последнее сообщение Anonymous
  • Использование маршрута или трека GPX для тестирования в Xcode 4.2.
    Anonymous » » в форуме IOS
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous
  • Что такое тип MIME .GPX?
    Anonymous » » в форуме Android
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Загрузить файл .gpx Streamlit Python
    Anonymous » » в форуме Python
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»