测量计算器程序

今天,给大家分享一个小博自主开发的测量计算器App,该App有【坐标方位角正反算】、【空间坐标转换】、【四参数计算】、【七参数计算】以及【地图图幅换算】五大功能模块,顺便给大家附上该App的下载链接:点击打开链接

ps:小博只是菜鸟一枚,希望大家多多支持啦!如果有哪位朋友对这程序感兴趣的可以联系小博要该程序的源文件哦!为了方便大家在测绘技术上的交流,小博创建了一个QQ群,欢迎大家加入测绘技术交流QQ群234035436

下面附上该程序的主要代码:

1.主页

效果图:


xml文件:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.android.test.test.MainActivity">

    <RelativeLayout
        android:id="@+id/top"
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:layout_alignParentTop="true"
        android:background="@color/colorPrimary">
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:text="测量计算器"
            android:gravity="center"
            android:layout_centerInParent="true"
            android:textSize="@dimen/Theme_Text"
            android:textColor="@color/colorThemeText" />
    </RelativeLayout>
        <LinearLayout
            android:id="@+id/row1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/top"
            android:paddingTop="@dimen/menu_padding"
            android:orientation="horizontal">

            <LinearLayout
                android:id="@+id/menu1"
                android:layout_width="0dp"
                android:layout_height="@dimen/menu_height"
                android:layout_weight="1"
                android:orientation="vertical">
                <ImageView
                    android:layout_width="match_parent"
                    android:layout_height="0dp"
                    android:layout_weight="3"
                    android:src="@drawable/angle"/>
                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="0dp"
                    android:layout_weight="1"
                    android:gravity="center"
                    android:textSize="@dimen/menu_text"
                    android:text="@string/menu1_name"/>
            </LinearLayout>

            <LinearLayout
                android:id="@+id/menu2"
                android:layout_width="0dp"
                android:layout_height="@dimen/menu_height"
                android:layout_weight="1"
                android:orientation="vertical">

                <ImageView
                    android:layout_width="match_parent"
                    android:layout_height="0dp"
                    android:layout_weight="3"
                    android:src="@drawable/earth" />

                <TextView
                    android:layout_width="match_parent"
                    android:layout_height="0dp"
                    android:layout_weight="1"
                    android:gravity="center"
                    android:textSize="@dimen/menu_text"
                    android:text="@string/menu2_name"/>
            </LinearLayout>

        </LinearLayout>


    <LinearLayout
        android:id="@+id/row2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingTop="@dimen/menu_padding"
        android:orientation="horizontal"
        android:layout_below="@+id/row1"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true">

        <LinearLayout
            android:id="@+id/menu3"
            android:layout_width="0dp"
            android:layout_height="@dimen/menu_height"
            android:layout_weight="1"
            android:orientation="vertical">
            <ImageView
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="3"
                android:src="@drawable/fpara"/>
            <TextView
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="1"
                android:gravity="center"
                android:textSize="@dimen/menu_text"
                android:text="@string/menu3_name"/>
        </LinearLayout>

        <LinearLayout
            android:id="@+id/menu4"
            android:layout_width="0dp"
            android:layout_height="@dimen/menu_height"
            android:layout_weight="1"
            android:orientation="vertical">

            <ImageView
                android:id="@+id/imageView"
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="3"
                android:src="@drawable/spara" />

            <TextView
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="1"
                android:gravity="center"
                android:textSize="@dimen/menu_text"
                android:text="@string/menu4_name"/>
        </LinearLayout>

    </LinearLayout>


    <LinearLayout
        android:id="@+id/row3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/row2"
        android:paddingTop="@dimen/menu_padding"
        android:orientation="horizontal">

        <LinearLayout
            android:id="@+id/menu5"
            android:layout_width="0dp"
            android:layout_height="@dimen/menu_height"
            android:layout_weight="1"
            android:orientation="vertical">
            <ImageView
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="3"
                android:src="@drawable/map"/>
            <TextView
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="1"
                android:gravity="center"
                android:textSize="@dimen/menu_text"
                android:text="@string/menu5_name"/>
        </LinearLayout>

        <LinearLayout
            android:id="@+id/menu6"
            android:layout_width="0dp"
            android:layout_height="@dimen/menu_height"
            android:layout_weight="1"
            android:orientation="vertical">
            <ImageView
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="3"
                android:src="@drawable/help"/>
            <TextView
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="1"
                android:gravity="center"
                android:textSize="@dimen/menu_text"
                android:text="@string/menu6_name"/>
        </LinearLayout>
    </LinearLayout>
</RelativeLayout>
MainActivity.java:

package com.android.test.test;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;

public class MainActivity extends AppCompatActivity {
    private LinearLayout menu1,menu2,menu3,menu4,menu5,menu6;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
       initEvent();
        menu1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent=new Intent();
                intent.setClass(MainActivity.this,ZuoBiaoZhengFan.class);
                startActivity(intent);
            }
        });

        menu2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent=new Intent();
                intent.setClass(MainActivity.this,ZuoBiaoChange.class);
                startActivity(intent);
            }
        });

        menu3.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent=new Intent();
                intent.setClass(MainActivity.this,FourPara.class);
                startActivity(intent);
            }
        });

        menu4.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent=new Intent();
                intent.setClass(MainActivity.this,SevenPara.class);
                startActivity(intent);
            }
        });

        menu5.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent=new Intent();
                intent.setClass(MainActivity.this,MapLacationCacul.class);
                startActivity(intent);
            }
        });

        menu6.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent=new Intent();
                intent.setClass(MainActivity.this,AtivityHelp.class);
                startActivity(intent);
            }
        });
    }
    private void initEvent()
    {
        menu1=(LinearLayout)findViewById(R.id.menu1);
        menu2=(LinearLayout)findViewById(R.id.menu2);
        menu3=(LinearLayout)findViewById(R.id.menu3);
        menu4=(LinearLayout)findViewById(R.id.menu4);
        menu5=(LinearLayout)findViewById(R.id.menu5);
        menu6=(LinearLayout)findViewById(R.id.menu6);
    }
}
2.坐标方位角正反算功能模块

计算界面效果图:


xml文件:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/colorBackground">
    <RelativeLayout
        android:id="@+id/top"
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:layout_alignParentTop="true"
        android:background="@color/colorPrimary">
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:text="坐标正反算"
            android:gravity="center"
            android:layout_centerInParent="true"
            android:textSize="@dimen/Theme_Text"
            android:textColor="@color/colorThemeText" />
        <ImageView
            android:id="@+id/back"
            android:layout_width="25dp"
            android:layout_height="match_parent"
            android:src="@drawable/back"
            android:layout_marginLeft="@dimen/margin_left"/>
    </RelativeLayout>
<ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_below="@+id/top">
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">
            <RadioGroup
                android:id="@+id/radGroup"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_alignParentTop="true"
                android:layout_marginTop="@dimen/margin_left"
               android:layout_marginLeft="@dimen/margin_left"
                android:layout_marginRight="@dimen/margin_left"
                android:orientation="horizontal"
                android:background="@drawable/view_bg">

                <RadioButton
                    android:id="@+id/rad_zheng"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:layout_marginLeft="80dp"
                    android:checked="true"
                    android:text="正算" />

                <RadioButton
                    android:id="@+id/rad_fang"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="2"
                    android:text="反算" />
            </RadioGroup>
                            <!--起始点坐标-->
              <LinearLayout
                  android:layout_width="match_parent"
                  android:layout_height="wrap_content"
                  android:orientation="vertical"
                  android:padding="@dimen/margin_left"
                  android:layout_marginLeft="@dimen/margin_left"
                  android:layout_marginRight="@dimen/margin_left"
                  android:layout_marginTop="@dimen/margin_left"
                  android:background="@drawable/view_bg">
                   <LinearLayout
                       android:layout_width="match_parent"
                       android:layout_height="wrap_content"
                       android:orientation="horizontal">
                       <TextView
                           android:layout_width="0dp"
                           android:layout_height="match_parent"
                           android:layout_weight="1"
                           android:gravity="center"
                           android:textSize="@dimen/edit_text"
                           android:textColor="@color/colorPrimary"
                           android:text="X1"/>
                       <EditText
                           android:id="@+id/et_X1"
                           android:layout_width="0dp"
                           android:layout_height="@dimen/edit_height"
                           android:layout_weight="7"
                           android:hint="起始点横坐标"
                           android:background="@drawable/edit_bg"
                           android:inputType="numberSigned|numberDecimal"/>
                   </LinearLayout>

                  <LinearLayout
                      android:layout_width="match_parent"
                      android:layout_height="wrap_content"
                      android:layout_marginTop="@dimen/margin_left"
                      android:orientation="horizontal">
                      <TextView
                          android:layout_width="0dp"
                          android:layout_height="match_parent"
                          android:layout_weight="1"
                          android:gravity="center"
                          android:textSize="@dimen/edit_text"
                          android:textColor="@color/colorPrimary"
                              android:text="Y1"/>
                      <EditText
                          android:id="@+id/et_Y1"
                          android:layout_width="0dp"
                          android:layout_height="@dimen/edit_height"
                          android:layout_weight="7"
                          android:hint="起始点纵坐标"
                          android:background="@drawable/edit_bg"
                          android:inputType="numberSigned|numberDecimal"/>
                  </LinearLayout>
              </LinearLayout>
                         <!--终点坐标-->
            <LinearLayout
                android:id="@+id/layout1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:padding="@dimen/margin_left"
                android:layout_marginLeft="@dimen/margin_left"
                android:layout_marginRight="@dimen/margin_left"
                android:layout_marginTop="@dimen/margin_left"
                android:background="@drawable/view_bg">
                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="horizontal">
                    <TextView
                        android:layout_width="0dp"
                        android:layout_height="match_parent"
                        android:layout_weight="1"
                        android:gravity="center"
                        android:textSize="@dimen/edit_text"
                        android:textColor="@color/colorPrimary"
                        android:text="X2"/>
                    <EditText
                        android:id="@+id/et_X2"
                        android:layout_width="0dp"
                        android:layout_height="@dimen/edit_height"
                        android:layout_weight="7"
                        android:hint="终止点横坐标"
                        android:background="@drawable/edit_bg"
                        android:inputType="numberSigned|numberDecimal"/>
                </LinearLayout>

                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="@dimen/margin_left"
                    android:orientation="horizontal">
                    <TextView
                        android:layout_width="0dp"
                        android:layout_height="match_parent"
                        android:layout_weight="1"
                        android:gravity="center"
                        android:textSize="@dimen/edit_text"
                        android:textColor="@color/colorPrimary"
                        android:text="Y2"/>
                    <EditText
                        android:id="@+id/et_Y2"
                        android:layout_width="0dp"
                        android:layout_height="@dimen/edit_height"
                        android:layout_weight="7"
                        android:hint="终止点纵坐标"
                        android:background="@drawable/edit_bg"
                        android:inputType="numberSigned|numberDecimal"/>
                </LinearLayout>
            </LinearLayout>

            <LinearLayout
                android:id="@+id/layout2"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:padding="@dimen/margin_left"
                android:layout_marginLeft="@dimen/margin_left"
                android:layout_marginRight="@dimen/margin_left"
                android:layout_marginTop="@dimen/margin_left"
                android:background="@drawable/view_bg">
                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="horizontal">
                    <TextView
                        android:layout_width="0dp"
                        android:layout_height="match_parent"
                        android:layout_weight="3"
                        android:gravity="center"
                        android:textSize="@dimen/edit_text"
                        android:textColor="@color/colorPrimary"
                        android:text="方位角"/>
                    <EditText
                        android:id="@+id/et_Angle"
                        android:layout_width="0dp"
                        android:layout_height="@dimen/edit_height"
                        android:layout_weight="7"
                        android:hint="坐标方位角"
                        android:background="@drawable/edit_bg"
                        android:inputType="numberDecimal"/>
                </LinearLayout>

                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="@dimen/margin_left"
                    android:orientation="horizontal">
                    <TextView
                        android:layout_width="0dp"
                        android:layout_height="match_parent"
                        android:layout_weight="2"
                        android:gravity="center"
                        android:textSize="@dimen/edit_text"
                        android:textColor="@color/colorPrimary"
                        android:text="距离"/>
                    <EditText
                        android:id="@+id/et_S"
                        android:layout_width="0dp"
                        android:layout_height="@dimen/edit_height"
                        android:layout_weight="7"
                        android:hint="起始点到终止点的距离"
                        android:background="@drawable/edit_bg"
                        android:inputType="numberSigned|numberDecimal"/>
                </LinearLayout>
            </LinearLayout>
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:padding="@dimen/margin_left"
                android:orientation="horizontal">
            <Button
                android:id="@+id/btn_cacu"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="2"
                android:layout_marginLeft="@dimen/margin_left"
                android:text="计算"
                android:textColor="#ffffff"
                android:background="@drawable/btn_bg"/>
                <View
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"/>
                <Button
                    android:id="@+id/btn_back"
                    android:layout_width="0dp"
                    android:layout_height="
  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 16
    评论
本系统主要为公路新线、公路增建二线、公路互通、铁路新线、铁路复线、铁路电气化改造等工程的施工复测、施工放样、平面线形图绘制、设计图纸复核等而设计。系统分为积木法坐标计算、交点法坐标计算、互通式立体交叉、纵断面高程计算、放样辅助计算、交会定点计算、导线平差计算、路基土石方计算八大模块。  一、各模块主要功能 1、积木法及交点法坐标计算:可以对公路主线、立交匝道及铁路线路进行中线桩、边线桩施工放样工作。可计算的线形包括直线、圆曲线、缓和曲线、单交点对称型曲线、单交点非对称型曲线、S型曲线、C型曲线、卵形曲线、凸型曲线、复曲线、回头曲线等。坐标计算时,可计算任意角度的边桩,同时系统在加桩时可一次计算多个边桩,桩间米数为自动计算时桩的间距,支持“桩间米数”与“加桩桩号”同时输入计算,逐桩计算时系统会将各主点坐标一并输出,支持多个“加桩桩号”一次输入计算。如果给定置镜点、后视点坐标还可计算出放样角度及放样距离。 2、纵断高程计算:直线段高程计算、竖曲线高程计算及全线纵坡高程计算三模块可计算全线任意点高程。  3、导线平差计算:适用于各等级各类型闭、附合单导线的严密、近似平差计算。严密平差时可以提供完整的精度评定及各种所需报表。    4、放样辅助计算:可进行两点坐标正反、缓和曲线起点反、桥涵放样坐标计算。    5、交会定点计算:可进行前方交会、后方交会、侧方交会、测边交会计算。 6、坐标转换程序:可进行高斯投影正反坐标换带、方向与边长改化计算。 7、互通式立体交叉:可以计算任何复杂组合曲线,该项功能可以将一座互通中所有匝道的平面线位数据及纵断面数据一次性输入,或将几座、几十座、几百座互通中的匝道一次性输入,您只需输入互通匝道的编号(如1A,1代表1号互通,A代表1号互通中的A匝道,如果只有一座互通,只输匝道号即可),您只需输入有限的几个数据系统会自动搜索计算线路各点的坐标及高程。 二、本系统主要特点 1、功能全面,包含了公路、铁路施工测量的各个方面,更新版本将根据用户需求随时完善、增强。  2、表格式的数据操作,简单、方便,所输入的历史数据均可留在系统中,每次程序启动后均可显示以前的数据,包括计算结果。本系统还可将用户输入资料保存为磁盘文件(*.stc)以便交流及随身携带,也可将原始数据或计算结果输出为EXCEL及文本文件。  3、所见即所得的报表输出功能,支持报表设计,用户可根据自已的需要设计出适合的报表,先进的数据计算引擎,计算速度极快,在预览页面可将报表保存为同式样的EXCEL或网页文件,在EXCEL中真正体现了人性化的报表界面,支持数据的直接显示、预览、打印。   4、导线严密平差采用条件平差,所计算数据的变量均采用双精度浮点型,计算精度极高。线路中缓和曲线的计算精度为0.05mm,由程序按精度动态选取计算项数。 5、漂亮的AutoCad输出功能, 可以将原始数据发送到AutoCad,生成.dwg文件,生成的AutoCad平面线位图包含百米桩、公里桩、起讫桩号及主点标志(如ZY、YZ、ZH、HY、YH、HZ、YY、GQ)等,生成的图形坐标系为大地坐标系,图形按大地坐标系绘制,系统提供了“世界坐标系→大地坐标系”、“大地坐标系→世界坐标系”间的转换,系统支持整座互通N个匝道的绘图及AutoCad输出。 6、本系统使现场施工放样的计算工作变的简单、方便,同时也使公路互通匝道复杂曲线的计算变的容易、准确,也许这才是你真正期待的施工测量软件。 7、本系统特别针对公路互通匝道的复杂曲线进行了优化设计,根据设计提供参数可选用多种方案进行计算,既可对组成匝道曲线的单个线元进行计算,也可将整条匝道的曲线参数输入进行全线计算,还可以根据匝道起点或终点坐标方位角其它主点坐标方位角,是互通匝道复杂曲线放样的最得力助手。 愿更多的测量朋友早日从繁琐的手工计算中解脱出来,留给自已更多自由时间享受生活。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值