📄 draw.cpp
字号:
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 + -