递归火山软件开发平台

标题: @沉默流星,大佬 绐个安卓封装例子参考一下吧 [打印本页]

作者: 承易    时间: 2024-7-11 22:58
标题: @沉默流星,大佬 绐个安卓封装例子参考一下吧
这个仓库中的源码,可用AS编译,
https://gitee.com/mu_muu/utm
拿这个作个例子,
如何把这个安卓源码中的经纬度坐标转UTM坐标功能封装到火山安卓?
我只想知道一下这个咋实现
有空时 请搞个例子吧




作者: qqqkoko123    时间: 2024-7-12 08:20
这个指南针不错~
作者: 沉默流星    时间: 2024-7-12 08:44

作者: 创世魂    时间: 2024-7-12 08:52
沉默流星 发表于 2024-7-12 08:44

大佬那就交给你了,这个人问了好几天了。我一直没空弄。
作者: 承易    时间: 2024-7-12 08:55
创世魂 发表于 2024-7-12 08:52
大佬那就交给你了,这个人问了好几天了。我一直没空弄。

感谢两位大佬的持续关注
作者: qqqkoko123    时间: 2024-7-12 09:21
沉默流星 发表于 2024-7-12 08:44

我刚看了下代码,没有封装的必要,自己写就成,要封的话就只要封个org.osgeo.proj4j这个包就行了
作者: 沉默流星    时间: 2024-7-12 09:36
qqqkoko123 发表于 2024-7-12 09:21
我刚看了下代码,没有封装的必要,自己写就成,要封的话就只要封个org.osgeo.proj4j这个包就行了 ...

是的
作者: 承易    时间: 2024-7-12 09:57
qqqkoko123 发表于 2024-7-12 09:21
我刚看了下代码,没有封装的必要,自己写就成,要封的话就只要封个org.osgeo.proj4j这个包就行了 ...

咋写的
对于大佬 轻描淡写
对于新手 云里雾里
实属无从下手
请赐教
作者: 承易    时间: 2024-7-12 10:00
https://blog.51cto.com/u_16213335/10803419
要在您的Java项目中使用proj4j库,您可以通过Maven添加以下依赖项:

<dependency>
    <groupId>org.osgeo</groupId>
    <artifactId>proj4j</artifactId>
    <version>0.1.0</version>
</dependency>
1.
2.
3.
4.
5.
使用proj4j
下面我们将演示如何使用proj4j库进行地理坐标的转换。假设我们有一个经纬度坐标(经度:116.404, 纬度:39.915),我们想要将其转换为北京54坐标系下的坐标。

import org.osgeo.proj4j.*;

public class CoordinateTransformation {

    public static void main(String[] args) {
        CRSFactory crsFactory = new CRSFactory();
        CoordinateReferenceSystem sourceCRS = crsFactory.createFromName("EPSG:4326"); // WGS 84
        CoordinateReferenceSystem targetCRS = crsFactory.createFromName("EPSG:2430"); // Beijing 54

        ProjCoordinate sourceCoord = new ProjCoordinate(116.404, 39.915);
        ProjCoordinate targetCoord = new ProjCoordinate();

        BasicCoordinateTransform transform = new BasicCoordinateTransform(sourceCRS, targetCRS);
        transform.transform(sourceCoord, targetCoord);

        System.out.println("北京54坐标系下的坐标:" + targetCoord.x + ", " + targetCoord.y);
    }
}
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
在上面的示例中,我们使用proj4j库创建了一个CoordinateTransformation类来进行地理坐标的转换。我们首先使用CRSFactory创建了源坐标系和目标坐标系,然后定义了一个源坐标(经度:116.404, 纬度:39.915)并创建了一个空的目标坐标。接着我们使用BasicCoordinateTransform进行坐标转换,并输出了转换后的北京54坐标系下的坐标。
-----------------------------------
网上找的介绍
作者: 承易    时间: 2024-7-12 10:02
// 引入proj4j库
dependencies {
    implementation files('lib/proj4j.jar')
}

// 代码示例
import org.proj4j.*;

public class Proj4jExample {
    public static void main(String[] args) {
        // 创建CRS对象
        CoordinateReferenceSystem sourceCRS = new CoordinateReferenceSystem("EPSG:4326");
        CoordinateReferenceSystem targetCRS = new CoordinateReferenceSystem("EPSG:3857");
        
        // 创建转换器
        CoordinateTransform transform = new CoordinateTransform(sourceCRS, targetCRS);
        
        // 进行坐标转换
        ProjCoordinate srcCoord = new ProjCoordinate(118, 32);
        ProjCoordinate targetCoord = new ProjCoordinate();
        transform.transform(srcCoord, targetCoord);
        
        // 输出结果
        System.out.println("转换后的坐标为:(" + targetCoord.x + ", " + targetCoord.y + ")");
    }
}

网上找的 咋弄到火山里




欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/) Powered by Discuz! X3.4