⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bd.cpp

📁 数据采集
💻 CPP
📖 第 1 页 / 共 2 页
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop

#include <fstream.h>
#include <stdio.h>
#include "bd.h"
#include "main.h"
#include "global.h"

//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"

Tform_bd *form_bd;
//static long now_ad;
static long now_wei=0,store_wei=0,total_wei=0;
extern FILE *prn ;


//---------------------------------------------------------------------------
__fastcall Tform_bd::Tform_bd(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall Tform_bd::Button1Click(TObject *Sender)
{
  long tmp;
  try{
     if(Edit1->Text!="") bd.ad_lr[0]=StrToInt(Edit1->Text); else bd.ad_lr[0]=0;
     if(Edit2->Text!="") bd.ad_lr[1]=StrToInt(Edit2->Text); else bd.ad_lr[1]=0;
     if(Edit3->Text!="") bd.ad_lr[2]=StrToInt(Edit3->Text); else bd.ad_lr[2]=0;
     if(Edit4->Text!="") bd.ad_lr[3]=StrToInt(Edit4->Text); else bd.ad_lr[3]=0;
     if(Edit5->Text!="") bd.ad_lr[4]=StrToInt(Edit5->Text); else bd.ad_lr[4]=0;
     if(Edit13->Text!="") bd.ad_rl[0]=StrToInt(Edit13->Text); else bd.ad_rl[0]=0;
     if(Edit14->Text!="") bd.ad_rl[1]=StrToInt(Edit14->Text); else bd.ad_rl[1]=0;
     if(Edit15->Text!="") bd.ad_rl[2]=StrToInt(Edit15->Text); else bd.ad_rl[2]=0;
     if(Edit16->Text!="") bd.ad_rl[3]=StrToInt(Edit16->Text); else bd.ad_rl[3]=0;
     if(Edit17->Text!="") bd.ad_rl[4]=StrToInt(Edit17->Text); else bd.ad_rl[4]=0;
     if(Edit6->Text!="") bd.wei[0]=StrToInt(Edit6->Text); else bd.wei[0]=0;
     if(Edit7->Text!="") bd.wei[1]=StrToInt(Edit7->Text); else bd.wei[1]=0;
     if(Edit8->Text!="") bd.wei[2]=StrToInt(Edit8->Text); else bd.wei[2]=0;
     if(Edit9->Text!="") bd.wei[3]=StrToInt(Edit9->Text); else bd.wei[3]=0;
     if(Edit10->Text!="") bd.wei[4]=StrToInt(Edit10->Text); else bd.wei[4]=0;

     if(Edit18->Text!="") bd.wei_j[0]=StrToInt(Edit18->Text);
     if(Edit19->Text!="") bd.wei_j[1]=StrToInt(Edit19->Text);
     if(Edit20->Text!="") bd.wei_j[2]=StrToInt(Edit20->Text);
     if(ad_jin0_e->Text!="") bd.ad_jin[0]=StrToInt(ad_jin0_e->Text);
     if(ad_jin1_e->Text!="") bd.ad_jin[1]=StrToInt(ad_jin1_e->Text);
     if(ad_jin2_e->Text!="") bd.ad_jin[2]=StrToInt(ad_jin2_e->Text);
     if(Edit21   ->Text!="") bd.i_bak2   =StrToInt(Edit21->Text);

     strcpy(bd.name,(Edit11->Text).c_str());
     strcpy(bd.mima,(Edit12->Text).c_str());

     if(rr->Text!=""){
       tmp=StrToInt(rr->Text);
       if(tmp>=1 && tmp<=500) bd.rr= tmp;
       else bd.rr=50;
     }

     if(k_dz->Text!="") bd.k_dz=StrToFloat(k_dz->Text);
     else bd.k_dz=0.80;
     //if(bd.k_dz>0.80) bd.k_dz=0.80;

     if(ad_t->Text!="") bd.ad_t=StrToInt(ad_t->Text);
     else  bd.ad_t=165535;

     if(use_e->Text!="") bd.use_status=StrToInt(use_e->Text);
     if(k_j_z_e->Text!="") bd.k_j_z=StrToFloat(k_j_z_e->Text);
     if(len_e->Text!="") bd.len=StrToFloat(len_e->Text);
     if(zero_ad_e->Text!="") bd.zero=StrToInt(zero_ad_e->Text);
     if(hpz->Text!="") bd.hpz=StrToFloat(hpz->Text);
     if(zpz->Text!="") bd.zpz=StrToInt(zpz->Text);
     if(cz->Text!="") bd.cz=StrToInt(cz->Text);
     if(lw->Text!="") bd.lw=StrToInt(lw->Text);
     strcpy(bd.smtp_host,(smtp_host->Text).c_str());
     strcpy(bd.smtp_id,(smtp_id->Text).c_str());
     strcpy(bd.smtp_to_address,(smtp_to_address->Text).c_str());
     strcpy(bd.ftp_host,(ftp_host->Text).c_str());
     strcpy(bd.c_bak3,(ftp_path->Text).c_str());
     strcpy(bd.ftp_id,(ftp_id->Text).c_str());
     strcpy(bd.ftp_pw,(ftp_pw->Text).c_str());
     if(pb_mode->Text!="") bd.pb_mode=StrToInt(pb_mode->Text);
     if(hq_mode->Text!="") bd.hq_mode=StrToInt(hq_mode->Text);
     if(sj_mode->Text!="") bd.sj_mode=StrToInt(sj_mode->Text);
     if(yh_mode->Text!="") bd.yh_mode=StrToInt(yh_mode->Text);
     if(irq    ->Text!="") bd.irq    =StrToInt(irq->Text);
     if(if_auto->Text!="") bd.if_auto=StrToInt(if_auto->Text);
     if(if_fx->Text!="")   bd.fx=StrToInt(if_fx->Text);
     if(if_autopi->Text!="")   bd.if_autopi=StrToInt(if_autopi->Text);
     if(which_com->Text!="")   bd.which_com=StrToInt(which_com->Text);
     strcpy(bd.tele,tele->Text.Trim().c_str()); //remove leading spaces, trailing spaces, or control characters.
     if(which_com->Text!="")   bd.chsb=StrToInt(e_chsb->Text);


     //if(bd.use_status==USE_CPZJH && (bd.hq_mode!=HQ_CPZ||)
     if(bd.use_status>3){   bd.use_status=USE_ZC;}

     char msg[200];
     sprintf(msg,"system setup:zero_bd=%ld,ad:%ld,%ld,%ld,%ld,%ld,%ld,%ld,%ld,%ld,%ld,wei:%ld,%ld,%ld,%ld,%ld\r\n",bd.zero,
         bd.ad_lr[0],bd.ad_lr[1],bd.ad_lr[2],bd.ad_lr[3],bd.ad_lr[4],
         bd.ad_rl[0],bd.ad_rl[1],bd.ad_rl[2],bd.ad_rl[3],bd.ad_rl[4],
         bd.wei[0],bd.wei[1],bd.wei[2],bd.wei[3],bd.wei[4]);
     write_log(msg);
  }catch(...){
     Application->MessageBox("     设 置 数 据 错     ", NULL, MB_OK);
     return;
  }

  if(write_bd()==FALSE)  Application->MessageBox("写设置文件错", NULL, MB_OK);
  form_main->Show();
  form_bd->Hide();
}
//---------------------------------------------------------------------------

void __fastcall Tform_bd::Button2Click(TObject *Sender)
{
  form_main->Show();
  form_bd->Hide();
}
//---------------------------------------------------------------------------



void __fastcall Tform_bd::Timer1Timer(TObject *Sender)
{
  if(bd.hq_mode==HQ_CPZ24){
    long adj[16],adz[8];
    long tmp_j,tmp_z,i;

    get_ad_jin_cpz24(adj,adz);
    for(i=0,tmp_j=0;i<16;i++) tmp_j+=adj[i];
    for(i=0,tmp_z=0;i<8; i++) tmp_z+=adz[i];
    now_ad=tmp_j*bd.k_j_z/16+tmp_z/8-zero_jin;

    now_wei=ad_to_wei_jin(now_ad);
    total_wei=now_wei+store_wei;
    zero_ad_e ->Text=IntToStr((int)zero_jin);//ltoa( zero_jin,str,10);
    zero_ad1_e ->Text="";//ltoa( zero_jin,str,10);
    zero_ad2_e ->Text="";//ltoa( zero_jin,str,10);

    j1_e->Text=IntToStr((int)adj[0]);  z1_e->Text=IntToStr((int)adz[0]);
    j2_e->Text=IntToStr((int)adj[1]);  z2_e->Text=IntToStr((int)adz[1]);
    j3_e->Text=IntToStr((int)adj[2]);  z3_e->Text=IntToStr((int)adz[2]);
    j4_e->Text=IntToStr((int)adj[3]);  z4_e->Text=IntToStr((int)adz[3]);
    j5_e->Text=IntToStr((int)adj[6]);  z5_e->Text=IntToStr((int)adz[4]);
    j6_e->Text=IntToStr((int)adj[7]);  z6_e->Text=IntToStr((int)adz[5]);
    j7_e->Text=IntToStr((int)adj[10]); z7_e->Text=IntToStr((int)adz[6]);
    j8_e->Text=IntToStr((int)adj[11]); z8_e->Text=IntToStr((int)adz[7]);
    j9_e->Text=IntToStr((int)adj[14]);
    j10_e->Text=IntToStr((int)adj[15]);

    now_ad_e->Text=IntToStr((int)now_ad);//ltoa(now_ad,str,10);
    now_wei_e->Text=IntToStr((int)now_wei);//ltoa(now_wei,str,10);
    store_wei_e->Text=IntToStr((int)store_wei);//ltoa(store_wei,str,10);
    total_wei_e->Text=IntToStr((int)total_wei);//ltoa(total_wei,str,10);
  }

  else if(bd.hq_mode==HQ_CPZGZ){
    long adj[16],adz[8];
    long tmp_j,tmp_z,i;

    get_ad_jin_cpz24(adj,adz);
    for(i=0,tmp_j=0;i<4;i++) tmp_j+=adj[i];
    for(i=0,tmp_z=0;i<2; i++) tmp_z+=adz[i];
    now_ad=tmp_j*bd.k_j_z/2+tmp_z-zero_jin;

    now_wei=ad_to_wei_jin(now_ad);
    total_wei=now_wei+store_wei;
    zero_ad_e ->Text=IntToStr((int)zero_jin);//ltoa( zero_jin,str,10);
    zero_ad1_e ->Text="";//ltoa( zero_jin,str,10);
    zero_ad2_e ->Text="";//ltoa( zero_jin,str,10);

    j1_e->Text=IntToStr((int)adj[0]);  z1_e->Text=IntToStr((int)adz[0]);
    j3_e->Text=IntToStr((int)adj[1]);  z2_e->Text=IntToStr((int)adz[1]);
    j2_e->Text=IntToStr((int)adj[2]);
    j4_e->Text=IntToStr((int)adj[3]);   

    now_ad_e->Text=IntToStr((int)now_ad);//ltoa(now_ad,str,10);
    now_wei_e->Text=IntToStr((int)now_wei);//ltoa(now_wei,str,10);
    store_wei_e->Text=IntToStr((int)store_wei);//ltoa(store_wei,str,10);
    total_wei_e->Text=IntToStr((int)total_wei);//ltoa(total_wei,str,10);
  }

  else if(bd.hq_mode==HQ_NEWBDG){
    long adj[16],adz[8];
    long tmp_j,tmp_z,i;

    get_ad_jin_cpz24(adj,adz);
    for(i=0,tmp_j=0;i<4;i++) tmp_j+=adj[i];
    for(i=0,tmp_z=0;i<2; i++) tmp_z+=adz[i];
    now_ad=tmp_j*bd.k_j_z/4+tmp_z/2-zero_jin;

    j1_e->Text=IntToStr((int)adj[0]);  z1_e->Text=IntToStr((int)adz[0]);
    j2_e->Text=IntToStr((int)adj[1]);  z2_e->Text=IntToStr((int)adz[1]);
    //j3_e->Text=IntToStr((int)adj[2]);
    j4_e->Text=IntToStr((int)adj[3]);
  }

  else if(bd.hq_mode==HQ_NEWCPZ){
    long now_ad_j1,now_ad_z1,now_ad_j2,now_ad_z2;
    long now_ad_j3,now_ad_z3,now_ad_j4,now_ad_z4;
    long now_ad_j5,now_ad_j6;
    long now_ad_j7,now_ad_j8;
    //char str[30];

    get_ad_jin_newcpz(now_ad_j1,now_ad_j2,now_ad_z1,now_ad_z2,
                      now_ad_j3,now_ad_j4,now_ad_z3,now_ad_z4,
                      now_ad_j5,now_ad_j6,now_ad_j7,now_ad_j8 );

    now_ad=( now_ad_j1+now_ad_j2+now_ad_j3+now_ad_j4+
             now_ad_j5+now_ad_j6+now_ad_j7+now_ad_j8 )/8*bd.k_j_z +
           ( now_ad_z1+now_ad_z2+now_ad_z3+now_ad_z4)/4-zero_jin;

    now_wei=ad_to_wei_jin(now_ad);
    total_wei=now_wei+store_wei;

    zero_ad_e ->Text=IntToStr((int)zero_jin);//ltoa( zero_jin,str,10);
    //zero_ad1_e->Text=ltoa( zero_jin1,str,10);
    //zero_ad2_e->Text=ltoa( zero_jin2,str,10);


    j1_e->Text=IntToStr((int)now_ad_j1);z1_e->Text=IntToStr((int)now_ad_z1);
    j2_e->Text=IntToStr((int)now_ad_j2);z2_e->Text=IntToStr((int)now_ad_z2);
    j3_e->Text=IntToStr((int)now_ad_j3);z3_e->Text=IntToStr((int)now_ad_z3);
    j4_e->Text=IntToStr((int)now_ad_j4);z4_e->Text=IntToStr((int)now_ad_z4);
    j5_e->Text=IntToStr((int)now_ad_j7);
    j6_e->Text=IntToStr((int)now_ad_j8);

    now_ad_e->Text=IntToStr((int)now_ad);//ltoa(now_ad,str,10);
    now_wei_e->Text=IntToStr((int)now_wei);//ltoa(now_wei,str,10);
    store_wei_e->Text=IntToStr((int)store_wei);//ltoa(store_wei,str,10);
    total_wei_e->Text=IntToStr((int)total_wei);//ltoa(total_wei,str,10);
  }

  else{
    long now_ad_j1,now_ad_z1,now_ad_j2,now_ad_z2;
    char str[30];

    get_ad_jin(&now_ad_j1,&now_ad_j2,&now_ad_z1,&now_ad_z2);

    if(bd.hq_mode==HQ_2J1Z){
      now_ad=(now_ad_j1+now_ad_j2)/2*bd.k_j_z +now_ad_z1-zero_jin;
    }else if(bd.hq_mode==HQ_DG){
      if(bd.fx==1 && bd.pb_mode==PB_WAVE)//wave判别方向需2个重力通道
        now_ad=(now_ad_z1+now_ad_z2)/2-zero_jin;
      else
        now_ad=now_ad_z1-zero_jin;
    }else if(bd.hq_mode==HQ_BDG){
      if(bd.fx==1 && bd.pb_mode==PB_WAVE)//wave判别方向需2个重力通道
        now_ad=now_ad_j1*bd.k_j_z +(now_ad_z1+now_ad_z2)/2-zero_jin;
      else
        now_ad=now_ad_j1*bd.k_j_z +now_ad_z1-zero_jin;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -