📄 draw.cpp
字号:
}
bl_cnt=0;
}
}
}else if(flag_tm2==true){ //// 台面2
for(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,300-(data_j2(offset+i-ab_cnt)-zero_j2)/dd);
Canvas->LineTo(j,300-(data_j2(offset+i)-zero_j2)/dd);
}
ab_cnt=0;
}
}
Canvas->Pen->Color=clGreen ;
for(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,300-(data_j2(offset+i-bl_cnt)-zero_j2)/dd);
Canvas->LineTo(j,300-(data_j2(offset+i)-zero_j2)/dd);
}
bl_cnt=0;
}
}//for
}//else
}//if
else if(bd.hq_mode==HQ_BDG||bd.hq_mode==HQ_CPZ){
Canvas->Pen->Color=clWhite ;
for(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++){
if(bd.hq_mode==HQ_BDG){
Canvas->MoveTo(j,300-(data_j1(offset+i-ab_cnt)-zero_j1)/dd);
Canvas->LineTo(j,300-(data_j1(offset+i)-zero_j1)/dd);
}else{
Canvas->MoveTo(j,300-(data_j1(offset+i-ab_cnt)-zero_j1+data_j2(offset+i-ab_cnt)-zero_j2)/2/dd);
Canvas->LineTo(j,300-(data_j1(offset+i) -zero_j1+data_j2(offset+i)-zero_j2)/2/dd);
}
}
ab_cnt=0;
}
}
Canvas->Pen->Color=clGreen ;
for(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++){
if(bd.hq_mode==HQ_BDG){
Canvas->MoveTo(j,300-(data_j1(offset+i-bl_cnt)-zero_j1)/dd);
Canvas->LineTo(j,300-(data_j1(offset+i)-zero_j1)/dd);
}else{
Canvas->MoveTo(j,300-(data_j1(offset+i-bl_cnt)-zero_j1+data_j2(offset+i-bl_cnt)-zero_j2)/2/dd);
Canvas->LineTo(j,300-(data_j1(offset+i) -zero_j1+data_j2(offset+i)-zero_j2)/2/dd);
}
}
bl_cnt=0;
}
}
} // else
}// if(flag_bt==true)
// draw data
Canvas->Pen->Color=clBlue;
for(i=0;i/step<800;i++){
if(i%step==0){
if(bd.hq_mode==HQ_CPZGZ){
int d1,d2,d3,d4;
if(flag_tm==1){
d1=data_j1(offset+i)-zero_j1;
d2=data_j2(offset+i)-zero_j2;
d3=data_z1(offset+i)-zero_z1;
d4=data_jz(1,offset+i)-zero1;
if(d1+zero_j1!=0){
Canvas->MoveTo(i/step,C4*1-d1/dd);Canvas->LineTo(i/step,C4*1-d1/dd+1);
}
if(d2+zero_j2!=0){
Canvas->MoveTo(i/step,C4*2-d2/dd);Canvas->LineTo(i/step,C4*2-d2/dd+1);
}
if(d3+zero_z1!=0){
Canvas->MoveTo(i/step,C4*3-d3/dd);Canvas->LineTo(i/step,C4*3-d3/dd+1);
}
if(d4+zero1!=0){
Canvas->MoveTo(i/step,C4*4-d4/dd);Canvas->LineTo(i/step,C4*4-d4/dd+1);
}
}else{
d1=data_j3(offset+i)-zero_j3;
d2=data_j4(offset+i)-zero_j4;
d3=data_z2(offset+i)-zero_z2;
d4=data_jz(2,offset+i)-zero2;
if(d1+zero_j3!=0){
Canvas->MoveTo(i/step,C4*1-d1/dd);Canvas->LineTo(i/step,C4*1-d1/dd+1);
}
if(d2+zero_j4!=0){
Canvas->MoveTo(i/step,C4*2-d2/dd);Canvas->LineTo(i/step,C4*2-d2/dd+1);
}
if(d3+zero_z2!=0){
Canvas->MoveTo(i/step,C4*3-d3/dd);Canvas->LineTo(i/step,C4*3-d3/dd+1);
}
if(d4+zero2!=0){
Canvas->MoveTo(i/step,C4*4-d4/dd);Canvas->LineTo(i/step,C4*4-d4/dd+1);
}
}
}else if(bd.hq_mode==HQ_2J1Z){
int d1,d2,d3,d4;
d1=/*data_j1(offset+i)==0?0:*/data_j1(offset+i)-zero_j1;
d2=/*data_j2(offset+i)==0?0:*/data_j2(offset+i)-zero_j2;
d3=/*data_z1(offset+i)==0?0:*/data_z1(offset+i)-zero_z1;
d4=/*data_jz(0,offset+i)==0?0:*/data_jz(0,offset+i)-zero;
if(d1+zero_j1!=0){
Canvas->MoveTo(i/step,C4*1-d1/dd);Canvas->LineTo(i/step,C4*1-d1/dd+1);
}
if(d2+zero_j2!=0){
Canvas->MoveTo(i/step,C4*2-d2/dd);Canvas->LineTo(i/step,C4*2-d2/dd+1);
}
if(d3+zero_z1!=0){
Canvas->MoveTo(i/step,C4*3-d3/dd);Canvas->LineTo(i/step,C4*3-d3/dd+1);
}
if(d4+zero!=0){
Canvas->MoveTo(i/step,C4*4-d4/dd);Canvas->LineTo(i/step,C4*4-d4/dd+1);
}
}else if(bd.hq_mode==HQ_NEWBDG){
int d1,d2,d3,d4;
if(flag_tm1==true){
d1=/*data_j1(offset+i)==0?0:*/data_j1(offset+i)-zero_j1;
d2=/*data_j2(offset+i)==0?0:*/data_j2(offset+i)-zero_j2;
d3=/*data_z1(offset+i)==0?0:*/data_z1(offset+i)-zero_z1;
d4=/*data_jz(1,offset+i)==0?0:*/data_jz(1,offset+i)-zero1;
if(d1+zero_j1!=0){ Canvas->MoveTo(i/step,C4*1-d1/dd);Canvas->LineTo(i/step,C4*1-d1/dd+1);}
if(d2+zero_j2!=0){ Canvas->MoveTo(i/step,C4*2-d2/dd);Canvas->LineTo(i/step,C4*2-d2/dd+1);}
if(d3+zero_z1!=0){ Canvas->MoveTo(i/step,C4*3-d3/dd);Canvas->LineTo(i/step,C4*3-d3/dd+1);}
if(d4+zero1!=0){ Canvas->MoveTo(i/step,C4*4-d4/dd);Canvas->LineTo(i/step,C4*4-d4/dd+1);}
}else{
d1=/*data_j3(offset+i)==0?0:*/data_j1(offset+i)-zero_j3;
d2=/*data_j4(offset+i)==0?0:*/data_j2(offset+i)-zero_j4;
d3=/*data_z2(offset+i)==0?0:*/data_z1(offset+i)-zero_z2;
d4=/*data_jz(2,offset+i)==0?0:*/data_jz(2,offset+i)-zero2;
if(d1+zero_j3!=0){ Canvas->MoveTo(i/step,C4*1-d1/dd);Canvas->LineTo(i/step,C4*1-d1/dd+1);}
if(d2+zero_j4!=0){ Canvas->MoveTo(i/step,C4*2-d2/dd);Canvas->LineTo(i/step,C4*2-d2/dd+1);}
if(d3+zero_z2!=0){ Canvas->MoveTo(i/step,C4*3-d3/dd);Canvas->LineTo(i/step,C4*3-d3/dd+1);}
if(d4+zero2!=0){ Canvas->MoveTo(i/step,C4*4-d4/dd);Canvas->LineTo(i/step,C4*4-d4/dd+1);}
}
}else if(bd.hq_mode==HQ_CPZ24){
int d1,d2,d3,d4;
if(flag_tm%2!=0){
d1=data_j(flag_tm*2-2,offset+i)==0?0:data_j(flag_tm*2-2,offset+i)-zero_j[flag_tm*2-2];
d2=data_j(flag_tm*2,offset+i)==0?0:data_j(flag_tm*2,offset+i)-zero_j[flag_tm*2];
d3=data_z(flag_tm-1,offset+i)==0?0:data_z(flag_tm-1,offset+i)-zero_z[flag_tm-1];
d4=data_jz(flag_tm,offset+i)==0?0:data_jz(flag_tm,offset+i)-zero_tm[flag_tm-1];
}else{
d1=data_j(flag_tm*2-3,offset+i)==0?0:data_j(flag_tm*2-3,offset+i)-zero_j[flag_tm*2-3];
d2=data_j(flag_tm*2-1,offset+i)==0?0:data_j(flag_tm*2-1,offset+i)-zero_j[flag_tm*2-1];
d3=data_z(flag_tm-1,offset+i)==0?0:data_z(flag_tm-1,offset+i)-zero_z[flag_tm-1];
d4=data_jz(flag_tm,offset+i)==0?0:data_jz(flag_tm,offset+i)-zero_tm[flag_tm-1];
}
if(d1!=0){ Canvas->MoveTo(i/step,C4*1-d1/dd);Canvas->LineTo(i/step,C4*1-d1/dd+1);}
if(d2!=0){ Canvas->MoveTo(i/step,C4*2-d2/dd);Canvas->LineTo(i/step,C4*2-d2/dd+1);}
if(d3!=0){ Canvas->MoveTo(i/step,C4*3-d3/dd);Canvas->LineTo(i/step,C4*3-d3/dd+1);}
if(d4!=0){ Canvas->MoveTo(i/step,C4*4-d4/dd);Canvas->LineTo(i/step,C4*4-d4/dd+1);}
// 1,2,3,4为一组,5,6,7,8为另一组
int d5=0;
if(flag_tm<=4){
for(int j=0;j<4;j++) d5+=data_jz(j+1,offset+i);
if(d5!=0){
d5=d5/4-(zero_tm[0]+zero_tm[1]+zero_tm[2]+zero_tm[3])/4;
Canvas->MoveTo(i/step,C4*5-d5/dd);Canvas->LineTo(i/step,C4*5-d5/dd+1);
}
}else{
for(int j=4;j<8;j++) d5+=data_jz(j+1,offset+i);
if(d5!=0){
d5=d5/4-(zero_tm[4]+zero_tm[5]+zero_tm[6]+zero_tm[7])/4;
Canvas->MoveTo(i/step,C4*5-d5/dd);Canvas->LineTo(i/step,C4*5-d5/dd+1);
}
}
}else if(bd.hq_mode==HQ_NEWCPZ){
int d1,d2,d3,d4,d5;
if(flag_tm==0){
d1=data_jz(1,offset+i)==0?0:data_jz(1,offset+i)-zero1;
d2=data_jz(2,offset+i)==0?0:data_jz(2,offset+i)-zero2;
d3=data_jz(3,offset+i)==0?0:data_jz(3,offset+i)-zero3;
d4=data_jz(4,offset+i)==0?0:data_jz(4,offset+i)-zero4;
}else if(flag_tm==1){
d1=data_j1(offset+i)==0?0:data_j1(offset+i)-zero_j1;
d2=data_j3(offset+i)==0?0:data_j3(offset+i)-zero_j3;
d3=data_z1(offset+i)==0?0:data_z1(offset+i)-zero_z1;
d4=data_jz(1,offset+i)==0?0:data_jz(1,offset+i)-zero1;
}else if(flag_tm==2){
d1=data_j2(offset+i)==0?0:data_j2(offset+i)-zero_j2;
d2=data_j4(offset+i)==0?0:data_j4(offset+i)-zero_j4;
d3=data_z2(offset+i)==0?0:data_z2(offset+i)-zero_z2;
d4=data_jz(2,offset+i)==0?0:data_jz(2,offset+i)-zero2;
}else if(flag_tm==3){
d1=data_j5(offset+i)==0?0:data_j5(offset+i)-zero_j5;
d2=data_j7(offset+i)==0?0:data_j7(offset+i)-zero_j7;
d3=data_z3(offset+i)==0?0:data_z3(offset+i)-zero_z3;
d4=data_jz(3,offset+i)==0?0:data_jz(3,offset+i)-zero3;
}else if(flag_tm==4){
d1=data_j6(offset+i)==0?0:data_j6(offset+i)-zero_j6;
d2=data_j8(offset+i)==0?0:data_j8(offset+i)-zero_j8;
d3=data_z4(offset+i)==0?0:data_z4(offset+i)-zero_z4;
d4=data_jz(4,offset+i)==0?0:data_jz(4,offset+i)-zero4;
}
d5=data_jz(0,offset+i)==0?0:data_jz(0,offset+i)-zero;
if(flag_tm==10){
if(d5!=0){
Canvas ->MoveTo(i/step,ncpz5-d5/dd);
Canvas->LineTo(i/step,ncpz5-d5/dd+1);
}
}else{
if(d1!=0){
Canvas ->MoveTo(i/step,ncpz1-d1/dd);
Canvas->LineTo(i/step,ncpz1-d1/dd+1);
}
if(d2!=0){
Canvas ->MoveTo(i/step,ncpz2-d2/dd);
Canvas->LineTo(i/step,ncpz2-d2/dd+1);
}
if(d3!=0){
Canvas ->MoveTo(i/step,ncpz3-d3/dd);
Canvas->LineTo(i/step,ncpz3-d3/dd+1);
}
if(d4!=0){
Canvas ->MoveTo(i/step,ncpz4-d4/dd);
Canvas->LineTo(i/step,ncpz4-d4/dd+1);
}
if(d5!=0){
Canvas ->MoveTo(i/step,ncpz5-d5/dd);
Canvas->LineTo(i/step,ncpz5-d5/dd+1);
}
}
}else if(bd.hq_mode==HQ_CPZ){
if(flag_qh==false){
if(data_j1(offset+i)!=0){
Canvas->MoveTo(i/step,cpz1-(data_j1(offset+i)-zero_j1)/dd);
Canvas->LineTo(i/step,cpz1-(data_j1(offset+i)-zero_j1)/dd+1);
}
if(data_j2(offset+i)!=0){
Canvas->MoveTo(i/step,cpz2-(data_j2(offset+i)-zero_j2)/dd);
Canvas->LineTo(i/step,cpz2-(data_j2(offset+i)-zero_j2)/dd+1);
}
if(data_z1(offset+i)!=0){
Canvas->MoveTo(i/step,cpz3-(data_z1(offset+i)-zero_z1)/dd);
Canvas->LineTo(i/step,cpz3-(data_z1(offset+i)-zero_z1)/dd+1);
}
if(data_z2(offset+i)!=0){
Canvas->MoveTo(i/step,cpz4-(data_z2(offset+i)-zero_z2)/dd);
Canvas->LineTo(i/step,cpz4-(data_z2(offset+i)-zero_z2)/dd+1);
}
}
if(data_jz(0,offset+i)!=0){
Canvas->MoveTo(i/step,cpz5-(data_jz(0,offset+i)-zero)/dd);
Canvas->LineTo(i/step,cpz5-(data_jz(0,offset+i)-zero)/dd+1);
}
}else if(bd.hq_mode==HQ_BDG){
if(data_j1(offset+i)!=0){
Canvas->MoveTo(i/step,bdg1-(data_j1(offset+i)-zero_j1)/dd);
Canvas->LineTo(i/step,bdg1-(data_j1(offset+i)-zero_j1)/dd+1);
}
if(data_z1(offset+i)!=0){
Canvas->MoveTo(i/step,bdg2-(data_z1(offset+i)-zero_z1)/dd);
Canvas->LineTo(i/step,bdg2-(data_z1(offset+i)-zero_z1)/dd+1);
}
if(data_jz(0,offset+i)!=0){
Canvas->MoveTo(i/step,bdg3-(data_jz(0,offset+i)-zero)/dd);
Canvas->LineTo(i/step,bdg3-(data_jz(0,offset+i)-zero)/dd+1);
}
}else if(bd.hq_mode==HQ_DG){
if(data_z1(offset+i)!=0){
Canvas->MoveTo(i/step,dg1-(data_z1(offset+i)-zero)/dd);
Canvas->LineTo(i/step,dg1-(data_z1(offset+i)-zero)/dd+1);
}
}else if(bd.hq_mode==HQ_STMBDG||bd.hq_mode==HQ_BDG3){
if(flag_tm1==true){
if(data_j1(offset+i)!=0){
Canvas->MoveTo(i/step,stmbdg1-(data_j1(offset+i)-zero_j1)/dd);
Canvas->LineTo(i/step,stmbdg1-(data_j1(offset+i)-zero_j1)/dd+1);
}
if(data_z1(offset+i)!=0){
Canvas->MoveTo(i/step,stmbdg3-(data_z1(offset+i)-zero_z1)/dd);
Canvas->LineTo(i/step,stmbdg3-(data_z1(offset+i)-zero_z1)/dd+1);
}
if(data_jz(1,offset+i)!=0){
Canvas->MoveTo(i/step,stmbdg5-(data_jz(1,offset+i)-zero1)/dd);
Canvas->LineTo(i/step,stmbdg5-(data_jz(1,offset+i)-zero1)/dd+1);
}
}else if(flag_tm2==true){
if(data_j2(offset+i)!=0){
Canvas->MoveTo(i/step,stmbdg2-(data_j2(offset+i)-zero_j2)/dd);
Canvas->LineTo(i/step,stmbdg2-(data_j2(offset+i)-zero_j2)/dd+1);
}
if(data_z2(offset+i)!=0){
Canvas->MoveTo(i/step,stmbdg4-(data_z2(offset+i)-zero_z2)/dd);
Canvas->LineTo(i/step,stmbdg4-(data_z2(offset+i)-zero_z2)/dd+1);
}
if(data_jz(2,offset+i)!=0){
Canvas->MoveTo(i/step,stmbdg6-(data_jz(2,offset+i)-zero2)/dd);
Canvas->LineTo(i/step,stmbdg6-(data_jz(2,offset+i)-zero2)/dd+1);
}
}else{
if(flag_qh==false){
if(data_j1(offset+i)!=0){
Canvas->MoveTo(i/step,stmbdg1-(data_j1(offset+i)-zero_j1)/dd);
Canvas->LineTo(i/step,stmbdg1-(data_j1(offset+i)-zero_j1)/dd+1);
}
if(data_j2(offset+i)!=0){
Canvas->MoveTo(i/step,stmbdg2-(data_j2(offset+i)-zero_j2)/dd);
Canvas->LineTo(i/step,stmbdg2-(data_j2(offset+i)-zero_j2)/dd+1);
}
if(data_z1(offset+i)!=0){
Canvas->MoveTo(i/step,stmbdg3-(data_z1(offset+i)-zero_z1)/dd);
Canvas->LineTo(i/step,stmbdg3-(data_z1(offset+i)-zero_z1)/dd+1);
}
if(data_z2(offset+i)!=0){
Canvas->MoveTo(i/step,stmbdg4-(data_z2(offset+i)-zero_z2)/dd);
Canvas->LineTo(i/step,stmbdg4-(data_z2(offset+i)-zero_z2)/dd+1);
}
}
if(data_jz(1,offset+i)!=0){
Canvas->MoveTo(i/step,stmbdg5-(data_jz(1,offset+i)-zero1)/dd);
Canvas->LineTo(i/step,stmbdg5-(data_jz(1,offset+i)-zero1)/dd+1);
}
if(data_jz(2,offset+i)!=0){
Canvas->MoveTo(i/step,stmbdg6-(data_jz(2,offset+i)-zero2)/dd);
Canvas->LineTo(i/step,stmbdg6-(data_jz(2,offset+i)-zero2)/dd+1);
}
}
}else if(bd.hq_mode==HQ_STMDG){
if(data_z1(offset+i)!=0){
Canvas->MoveTo(i/step,stmdg1-(data_z1(offset+i)-zero_z1)/dd);
Canvas->LineTo(i/step,stmdg1-(data_z1(offset+i)-zero_z1)/dd+1);
}
if(data_z2(offset+i)!=0){
Canvas->MoveTo(i/step,stmdg2-(data_z2(offset+i)-zero_z2)/dd);
Canvas->LineTo(i/step,stmdg2-(data_z2(offset+i)-zero_z2)/dd+1);
}
}
}//if
}//for
// draw kg
if(flag_txt){
Canvas->Pen->Color=clLime ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -