查看完整版本: [-- 分享一下今天做的坐标转换 --]

阿果石油论坛 -> 油气勘探 -> 分享一下今天做的坐标转换 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

jur.zeng 2017-03-20 19:54

分享一下今天做的坐标转换

背景需求,两个三维区块合并成一个区块,两个三维数据体合并,重新输出。
流程:
1、建立新测网,需要一些数学运算(坐标已做保密处理),为了方便以及避免手算出差,写个简单的java程序,代码在最后。

2、在蓝马中,对两块地震数据进行漂移处理,尽量保证时差问题最小化。

3、在蓝马中,进行地震数据振幅归一化。

4、输出两块数据。

5、建立新测网,以图中(L1,X1312),(L1,X11),(L1290,X11)三点及其坐标为准。

6、在PostStack中加载数据,其中右下数据输入的时候,只需要选择按照线道号读入数据即可。左上数据输入时,选择按线道号输入,同时进行道头计算,Line减掉49,Trace加上285即可。

//=============================================

public class CalcXY {
    public static void main(String[] args) {
        final double GRID = 25 * 25;
        double x1 = 12345678.874734600;
        double y1 = 1234567.600384450;
        double x2 = 12345678.956554900;
        double y2 = 1234567.492693720;
        int line1 = 367;
        int trace1 = 51;
        int line2 = 11;
        int trace2 = 1;
        double A = Math.pow(line1 - line2, 2) * GRID + Math.pow(trace1 - trace2, 2) * GRID;
        double B = (x1 - x2) / (y1 - y2);

        double x, y;

        boolean isY2BiggerY = true;
        if (isY2BiggerY) {
            y = y2 - Math.sqrt(A / (B * B + 1));
        } else {
            y = y2 + Math.sqrt(A / (B * B + 1));
        }

        x = x2 + B * (y - y2);

        System.err.println("X is: " + x);
        System.err.println("Y is: " + y);

    }
}
阿果石油网旗下站点:石油文库 | 石油资讯 |石油英才 | 石油供求 | 石油搜索

jur.zeng 2017-03-20 20:13
后来想了想,这个小程序可以在已知一条斜线上任意两点坐标,拿来直接计算其他点的XY坐标,前提是你要分的清楚X1,Y1,X2,Y2,以及那条斜边的长度(一般是固定)。 阿果石油网旗下站点:石油文库 | 石油资讯 |石油英才 | 石油供求 | 石油搜索

coverme 2017-03-20 21:18
赞一个,学习下 阿果石油网旗下站点:石油文库 | 石油资讯 |石油英才 | 石油供求 | 石油搜索

guo5707 2017-03-23 22:27
支持原创啊 阿果石油网旗下站点:石油文库 | 石油资讯 |石油英才 | 石油供求 | 石油搜索

liuqing 2017-03-24 14:59
guo5707:支持原创啊[表情]  (2017-03-23 22:27) 

支持原创 . 阿果石油网旗下站点:石油文库 | 石油资讯 |石油英才 | 石油供求 | 石油搜索

dgd2005 2017-03-28 10:56
     阿果石油网旗下站点:石油文库 | 石油资讯 |石油英才 | 石油供求 | 石油搜索


查看完整版本: [-- 分享一下今天做的坐标转换 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Time 0.103784 second(s),query:2 Gzip enabled