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

📄 draw.cpp

📁 数据采集
💻 CPP
📖 第 1 页 / 共 5 页
字号:
      if(bd.hq_mode==HQ_CPZ24){
        int i=flag_tm-1;
        for(int jj=0;jj<KG_SIZE;jj++){
          if(kkg[i][jj].ofst>=offset && kkg[i][jj].ofst<offset+800*step){
            int y1,y2,y3;
            y1=kkg[i][jj].who==1 ? 0 : C4;
            y2=kkg[i][jj].who==1 ? C4 : 2*C4;
            y3=kkg[i][jj].who==1 ? 0 : 2*C4;

            Canvas->MoveTo((kkg[i][jj].ofst-offset)/step,y1);
            Canvas->LineTo((kkg[i][jj].ofst-offset)/step,y2);
            str=IntToStr(kkg[i][jj].k1)+" "+IntToStr(kkg[i][jj].k4);
            Canvas->TextOut((kkg[i][jj].ofst-offset)/step,y3 ,str);

            int dlt=kkg[i][jj].k3;
            str=IntToStr((int)kkg[i][jj].ofst)+" "+dlt;
            Canvas->TextOut((kkg[i][jj].ofst-offset)/step,y3+20 ,str);

            int UP=0;
            int which_j;
            if(i%2==0){
              if(kkg[i][jj].who==1) which_j=2*i;
              else                  which_j=2*i+2;
            }else{
              if(kkg[i][jj].who==1) which_j=2*i-1;
              else                  which_j=2*i+1;
            }
            int i1=data_j(which_j,kkg[i][jj].ofst);
            int i2=data_j(which_j,kkg[i][jj].k2==UP?kkg[i][jj].ofst-dlt:kkg[i][jj].ofst+dlt); // k3 is dlt
            str=IntToStr(i1)+" "+i2+" "+abs(i1-i2);
            Canvas->TextOut((kkg[i][jj].ofst-offset)/step,y3+40 ,str);

          }
        }
      }
    }

    // draw step,dd,offset
    char tmpstr[30];
    sprintf(tmpstr,"%d,%d,%d",step,dd,offset);
    Canvas->TextOut(2,10,tmpstr);

    // 计算曲率半径
    /*
    long rr;
    for(i=0;i<800;i++){
      which_tm=1;
      rr=get_rr(offset+i);
      Canvas->MoveTo(i,600-rr);
      Canvas->LineTo(i,600-rr+1);
      //which_tm=2;
      //rr=get_rr(offset+i);
      // Canvas->MoveTo(i,700-rr);
      //Canvas->LineTo(i,700-rr+1);
    } */
    if(offset+800*step<BUF_SIZE) offset+=800*step;
}


void __fastcall Tform_draw::b_rightClick(TObject *Sender)
{
  Repaint();
  draw();
}


void __fastcall Tform_draw::draw_bt1()
{
  int ab_cnt,bl_cnt,kk,i,j;

  Canvas->Pen->Color=clWhite ;
  for(ab_cnt=0,i=0;i<800;i++){
    kk=get_kk(1,offset+i);
    if(kk>0) ab_cnt++;
    else{
      for(j=i-ab_cnt;j<i;j++){
        Canvas->MoveTo(j,ncpz1-(data_j1(offset+i-ab_cnt)-zero_j1)/dd);
        Canvas->LineTo(j,ncpz1-(data_j1(offset+i)-zero_j1)/dd);
      }
      ab_cnt=0;
    }
  }
  for(ab_cnt=0,i=0;i<800;i++){
    kk=get_kk(3,offset+i);
    if(kk>0) ab_cnt++;
    else{
      for(j=i-ab_cnt;j<i;j++){
        Canvas->MoveTo(j,ncpz2+50-(data_j3(offset+i-ab_cnt)-zero_j3)/dd);
        Canvas->LineTo(j,ncpz2+50-(data_j3(offset+i)-zero_j3)/dd);
      }
      ab_cnt=0;
    }
  }

  Canvas->Pen->Color=clGreen ;
  for(bl_cnt=0,i=0;i<800;i++){
    kk=get_kk(1,offset+i);
    if(kk<0) bl_cnt++;
    else{
      for(j=i-bl_cnt;j<i;j++){
        Canvas->MoveTo(j,ncpz1-(data_j1(offset+i-bl_cnt)-zero_j1)/dd);
        Canvas->LineTo(j,ncpz1-(data_j1(offset+i)-zero_j1)/dd);
      }
      bl_cnt=0;
    }
  }
  for(bl_cnt=0,i=0;i<800;i++){
    kk=get_kk(3,offset+i);
    if(kk<0) bl_cnt++;
    else{
      for(j=i-bl_cnt;j<i;j++){
        Canvas->MoveTo(j,ncpz2+50-(data_j3(offset+i-bl_cnt)-zero_j3)/dd);
        Canvas->LineTo(j,ncpz2+50-(data_j3(offset+i)-zero_j3)/dd);
      }
      bl_cnt=0;
    }
  }
}

void __fastcall Tform_draw::draw_bt2()
{
  int ab_cnt,bl_cnt,kk,i,j;

  Canvas->Pen->Color=clWhite ;
  for(ab_cnt=0,i=0;i<800;i++){
    kk=get_kk(2,offset+i);
    if(kk>0) ab_cnt++;
    else{
      for(j=i-ab_cnt;j<i;j++){
        Canvas->MoveTo(j,ncpz1-(data_j2(offset+i-ab_cnt)-zero_j2)/dd);
        Canvas->LineTo(j,ncpz1-(data_j2(offset+i)-zero_j2)/dd);
      }
      ab_cnt=0;
    }
  }
  for(ab_cnt=0,i=0;i<800;i++){
    kk=get_kk(4,offset+i);
    if(kk>0) ab_cnt++;
    else{
      for(j=i-ab_cnt;j<i;j++){
        Canvas->MoveTo(j,ncpz2+50-(data_j4(offset+i-ab_cnt)-zero_j4)/dd);
        Canvas->LineTo(j,ncpz2+50-(data_j4(offset+i)-zero_j4)/dd);
      }
      ab_cnt=0;
    }
  }

  Canvas->Pen->Color=clGreen ;
  for(bl_cnt=0,i=0;i<800;i++){
    kk=get_kk(2,offset+i);
    if(kk<0) bl_cnt++;
    else{
      for(j=i-bl_cnt;j<i;j++){
        Canvas->MoveTo(j,ncpz1-(data_j2(offset+i-bl_cnt)-zero_j2)/dd);
        Canvas->LineTo(j,ncpz1-(data_j2(offset+i)-zero_j2)/dd);
      }
      bl_cnt=0;
    }
  }
  for(bl_cnt=0,i=0;i<800;i++){
    kk=get_kk(4,offset+i);
    if(kk<0) bl_cnt++;
    else{
      for(j=i-bl_cnt;j<i;j++){
        Canvas->MoveTo(j,ncpz2+50-(data_j4(offset+i-bl_cnt)-zero_j4)/dd);
        Canvas->LineTo(j,ncpz2+50-(data_j4(offset+i)-zero_j4)/dd);
      }
      bl_cnt=0;
    }
  }
}

void __fastcall Tform_draw::draw_bt3()
{
  int ab_cnt,bl_cnt,kk,i,j;

  Canvas->Pen->Color=clWhite ;
  for(ab_cnt=0,i=0;i<800;i++){
    kk=get_kk(5,offset+i);
    if(kk>0) ab_cnt++;
    else{
      for(j=i-ab_cnt;j<i;j++){
        Canvas->MoveTo(j,ncpz1-(data_j5(offset+i-ab_cnt)-zero_j5)/dd);
        Canvas->LineTo(j,ncpz1-(data_j5(offset+i)-zero_j5)/dd);
      }
      ab_cnt=0;
    }
  }
  for(ab_cnt=0,i=0;i<800;i++){
    kk=get_kk(7,offset+i);
    if(kk>0) ab_cnt++;
    else{
      for(j=i-ab_cnt;j<i;j++){
        Canvas->MoveTo(j,ncpz2+50-(data_j7(offset+i-ab_cnt)-zero_j7)/dd);
        Canvas->LineTo(j,ncpz2+50-(data_j7(offset+i)-zero_j7)/dd);
      }
      ab_cnt=0;
    }
  }

  Canvas->Pen->Color=clGreen ;
  for(bl_cnt=0,i=0;i<800;i++){
    kk=get_kk(5,offset+i);
    if(kk<0) bl_cnt++;
    else{
      for(j=i-bl_cnt;j<i;j++){
        Canvas->MoveTo(j,ncpz1-(data_j5(offset+i-bl_cnt)-zero_j5)/dd);
        Canvas->LineTo(j,ncpz1-(data_j5(offset+i)-zero_j5)/dd);
      }
      bl_cnt=0;
    }
  }
  for(bl_cnt=0,i=0;i<800;i++){
    kk=get_kk(7,offset+i);
    if(kk<0) bl_cnt++;
    else{
      for(j=i-bl_cnt;j<i;j++){
        Canvas->MoveTo(j,ncpz2+50-(data_j7(offset+i-bl_cnt)-zero_j7)/dd);
        Canvas->LineTo(j,ncpz2+50-(data_j7(offset+i)-zero_j7)/dd);
      }
      bl_cnt=0;
    }
  }
}
void __fastcall Tform_draw::draw_bt4()
{
  int ab_cnt,bl_cnt,kk,i,j;

  Canvas->Pen->Color=clWhite ;
  for(ab_cnt=0,i=0;i<800;i++){
    kk=get_kk(6,offset+i);
    if(kk>0) ab_cnt++;
    else{
      for(j=i-ab_cnt;j<i;j++){
        Canvas->MoveTo(j,ncpz1-(data_j6(offset+i-ab_cnt)-zero_j6)/dd);
        Canvas->LineTo(j,ncpz1-(data_j6(offset+i)-zero_j6)/dd);
      }
      ab_cnt=0;
    }
  }
  for(ab_cnt=0,i=0;i<800;i++){
    kk=get_kk(8,offset+i);
    if(kk>0) ab_cnt++;
    else{
      for(j=i-ab_cnt;j<i;j++){
        Canvas->MoveTo(j,ncpz2+50-(data_j8(offset+i-ab_cnt)-zero_j8)/dd);
        Canvas->LineTo(j,ncpz2+50-(data_j8(offset+i)-zero_j8)/dd);
      }
      ab_cnt=0;
    }
  }

  Canvas->Pen->Color=clGreen ;
  for(bl_cnt=0,i=0;i<800;i++){
    kk=get_kk(6,offset+i);
    if(kk<0) bl_cnt++;
    else{
      for(j=i-bl_cnt;j<i;j++){
        Canvas->MoveTo(j,ncpz1-(data_j6(offset+i-bl_cnt)-zero_j6)/dd);
        Canvas->LineTo(j,ncpz1-(data_j6(offset+i)-zero_j6)/dd);
      }
      bl_cnt=0;
    }
  }
  for(bl_cnt=0,i=0;i<800;i++){
    kk=get_kk(8,offset+i);
    if(kk<0) bl_cnt++;
    else{
      for(j=i-bl_cnt;j<i;j++){
        Canvas->MoveTo(j,ncpz2+50-(data_j8(offset+i-bl_cnt)-zero_j8)/dd);
        Canvas->LineTo(j,ncpz2+50-(data_j8(offset+i)-zero_j8)/dd);
      }
      bl_cnt=0;
    }
  }
}


//---------------------------------------------------------------------------
void __fastcall Tform_draw::b_leftClick(TObject *Sender)
{
  if(offset>=(800+800)*step) offset-=1600*step;
  else offset=0;
  Repaint();
  draw();
}

//---------------------------------------------------------------------------

void __fastcall Tform_draw::Left_miniClick(TObject *Sender)
{
  if(offset>880*step){
    offset-=880*step;
  }else offset=0;
  Repaint();
  draw();
}
 //---------------------------------------------------------------------------

void __fastcall Tform_draw::Right_miniClick(TObject *Sender)
{
  if(offset>(800-80)*step){
    Repaint();
    offset-=(800-80)*step;
    draw();
  }
}
 //---------------------------------------------------------------------------




void __fastcall Tform_draw::SmallClick(TObject *Sender)
{
  if(offset>=800*step)  offset-=800*step;
  else offset=0;
  Repaint();
  step*=2;
  draw();
}
//---------------------------------------------------------------------------

void __fastcall Tform_draw::LargeClick(TObject *Sender)
{
  if(offset>=800*step)    offset-=800*step;
  else offset=0;
  if(step>=2) step/=2;
  Repaint();
  draw();
}
//---------------------------------------------------------------------------

void __fastcall Tform_draw::ExitClick(TObject *Sender)
{
  form_main->Show();
  Hide();
}
//---------------------------------------------------------------------------

void __fastcall Tform_draw::FormShow(TObject *Sender)
{
  char str[10];

  kjz_bak=bd.k_j_z; // save k_j_z;

  // kg
  //if(bd.pb_mode==PB_WAVE) show_kg->Visible=false;
  //else show_kg->Visible=true;

  // k_j_z
  if(bd.hq_mode==HQ_DG || bd.hq_mode==HQ_STMDG){

⌨️ 快捷键说明

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