飞狐箱体主图源码
cc:=CLOSE;
oo:=OPEN;
hh:=HIGH;
ll:=LOW;
top:=HIGH;
bot:=LOW;
xx[1]:=1;
kk:=1;
for i=1 to DATACOUNT do begin
IF xx=1 then begin
top:=hh;
end;
IF xx[i-1]=1 then begin
IF hh>top[i-1] then begin
top:=hh;
xx:=1;
end;else begin
top:=top[i-1];
xx:=2;
end;
end;
IF xx[i-1]=2 then begin
IF hh>top[i-1] then begin
top:=hh;
xx:=1;
end;else begin
top:=top[i-1];
bot:=ll;
xx:=3;
end;
end;
IF xx[i-1]=3 then begin
top:=top[i-1];
IF ll<bot[i-1] then begin
bot:=ll;
xx:=3;
end;else begin
bot:=bot[i-1];
xx:=4;
end;
end;
IF xx[i-1]=4 then begin
top:=top[i-1];
IF ll<bot[i-1] then begin
bot:=ll;
xx:=3;
end;else begin
bot:=bot[i-1];
xx:=5;
end;
end;
IF xx[i-1]=5 then begin
IF ll<bot[i-1] or hh>top[i-1] then begin
top:=hh;
bot:=hh;
xx:=1;
end;else begin
bot:=bot[i-1];
top:=top[i-1];
xx:=5;
end;
end;
end;
for j=1 to DATACOUNT do begin
IF xx[j]=5 AND xx[j-1]=4 then begin
for k=j-1 downto j-kk do begin
top[k]:=top[j];
bot[k]:=bot[j];
end;
end;
IF xx[j-1]=5 AND xx[j]=1 then kk:=0;
kk:=kk+1;
end;
{箱体部分}
PARTLINE(top=REF(top,1),top),Color3399FF,linethick2;//箱顶
PARTLINE(bot=REF(bot,1),bot),Color3399FF,linethick2;//箱底
STICKLINE((top<>REF(top,1)or bot<>REF(bot,1)) AND xx=1 AND REF(xx,1)=5,top,bot,1,0),Color3399FF,linethick2;//左侧竖线
STICKLINE((top<>REFX(top,1)or bot<>REFX(bot,1)) AND xx=5 AND REFX(xx,1)=1,top,bot,1,0),Color3399FF,linethick2;//右侧竖线
DRAWNUMBER((top<>REFX(top,1)or bot<>REFX(bot,1)) AND xx=5 AND REFX(xx,1)=1,bot,SUMBARS(top<>REF(top,1),1)-(SUMBARS(top<>REF(top,1),2)-SUMBARS(top<>REF(top,1),1)),0) colorwhite;
DRAWNUMBER((top<>REFX(top,1)or bot<>REFX(bot,1)) AND xx=5 AND REFX(xx,1)=1,top,SUMBARS(top<>REF(top,1),1),0) colorgreen;
DRAWNUMBER((top<>REFX(top,1)or bot<>REFX(bot,1)) AND xx=5 AND REFX(xx,1)=1,top*1.08,(top-REF(top,SUMBARS(top<>REF(top,1),1)))/REF(top,SUMBARS(top<>REF(top,1),1))*100,2),COLORMAGENTA;