奇狐社區論壇
在這個頁面顯示本主題全部的 8 個文章

奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- [教學]總版主.peter 大哥.各位路過的高手請幫幫忙 (http://www.chiefox.com.tw/bbs/showthread.php?threadid=17915)


由 Markchu7 在 2013-08-09 08:03 發表:

[教學]總版主.peter 大哥.各位路過的高手請幫幫忙

下列的源碼的意思?(報告總版主不知正確應該在那一版面發問,請移至正確版面!),感恩!
cc:=c;
oo:=o;
hh:=h;
ll:=l;
top:h,linethick;
bot:l,linethick;
xx[1]:=1;
kk:=1;
for i=1 to datacount do begin if xx[i]=1 then begin top[i]:=hh[i];
end;
if xx[i-1]=1 then begin if hh[i]>top[i-1] then begin top[i]:=hh[i];
xx[i]:1;
end;
else begin top[i]:=top[i-1];
xx[i]:=2;
end;
end;
if xx[i-1]=2 then begin if hh[i]>top[i-1] then begin top[i]:=hh[i];
xx[i]:=1;
end;
else begin top[i]:=top[i-1];
bot[i]:=ll[i];
xx[i]:=3;
end;
end;
if xx[i-1]=3 then begin top[i]:=top[i-1];
if ll[i]<bot[i-1] then begin bot[i]:=ll[i];
xx[i]:=3;
end;
else begin bot[i]:=bot[i-1];
xx[i]:=4;
end;
end;
if xx[i-1]=4 then begin top[i]:=top[i-1];
if ll[i]<bot[i-1] then begin bot[i]:=ll[i];
xx[i]:=3;
end;
else begin bot[i]:=bot[i-1];
xx[i]:=5;
end;
end;
if xx[i-1]=5 then begin if ll[i]<bot[i-1] or hh[i]>top[i-1] then begin top[i]:=hh[i];
bot[i]:=hh[i];
xx[i]:=1;
end;
else begin bot[i]:=bot[i-1];
top[i]:=top[i-1];
xx[i]:=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;

中位線:=(top+bot)/2;

PARTLINE(top=ref(top,1),top),COLORBLACK,LINEDOT;
PARTLINE(bot=ref(bot,1),bot),COLORBLACK,LINEDOT;

STICKLINE((top<>ref(top,1) or bot<>ref(bot,1)) and xx=1 and ref(xx,1)=5,top,bot,1,0),COLORBLACK,LINEDOT;
STICKLINE((top<>refx(top,1) or bot<>refx(bot,1)) and xx=5 and refx(xx,1)=1,top,bot,1,0),COLORBLACK,LINEDOT;
PARTLINE(top=ref(top,1) ,中位線),COLORBLACK,LINEDOT;


由 cgjj 在 2013-08-09 10:31 發表:

回覆: [教學]總版主.peter 大哥.各位路過的高手請幫幫忙

引用:
最初由 Markchu7 發表
下列的源碼的意思?(報告總版主不知正確應該在那一版面發問,請移至正確版面!),感恩!
cc:=c;
oo:=o;
hh:=h;
ll:=l;
top:h,linethick;
bot:l,linethick;
xx[1]:=1;
kk:=1;
for i=1 to datacount do begin if xx[i]=1 then begin top[i]:=hh[i];
end;
if xx[i-1]=1 then begin if hh[i]>top[i-1] then begin top[i]:=hh[i];
xx[i]:1;
end;
else begin top[i]:=top[i-1];
xx[i]:=2;
end;
end;
if xx[i-1]=2 then begin if hh[i]>top[i-1] then begin top[i]:=hh[i];
xx[i]:=1;
end;
else begin top[i]:=top[i-1];
bot[i]:=ll[i];
xx[i]:=3;
end;
end;
if xx[i-1]=3 then begin top[i]:=top[i-1];
if ll[i]<bot[i-1] then begin bot[i]:=ll[i];
xx[i]:=3;
end;
else begin bot[i]:=bot[i-1];
xx[i]:=4;
end;
end;
if xx[i-1]=4 then begin top[i]:=top[i-1];
if ll[i]<bot[i-1] then begin bot[i]:=ll[i];
xx[i]:=3;
end;
else begin bot[i]:=bot[i-1];
xx[i]:=5;
end;
end;
if xx[i-1]=5 then begin if ll[i]<bot[i-1] or hh[i]>top[i-1] then begin top[i]:=hh[i];
bot[i]:=hh[i];
xx[i]:=1;
end;
else begin bot[i]:=bot[i-1];
top[i]:=top[i-1];
xx[i]:=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;

中位線:=(top+bot)/2;

PARTLINE(top=ref(top,1),top),COLORBLACK,LINEDOT;
PARTLINE(bot=ref(bot,1),bot),COLORBLACK,LINEDOT;

STICKLINE((top<>ref(top,1) or bot<>ref(bot,1)) and xx=1 and ref(xx,1)=5,top,bot,1,0),COLORBLACK,LINEDOT;
STICKLINE((top<>refx(top,1) or bot<>refx(bot,1)) and xx=5 and refx(xx,1)=1,top,bot,1,0),COLORBLACK,LINEDOT;
PARTLINE(top=ref(top,1) ,中位線),COLORBLACK,LINEDOT;



源碼的意思?
@@ 真不知要回應您什麼

就是用來計算畫面輸出的結果
結果是什麼意義, 請洽原作者


由 Markchu7 在 2013-08-09 11:38 發表:

感謝總版主的回覆!這是網路上下載來的啦!如果有原作者可以問我還真的是感謝上帝了!只不過是半路出師的半吊子想要學習一下罷了!總版主不是常說:錯的不知所以然更糟糕嗎?不好意思浪費版面了!看得懂的大大們如果覺得有用就來去用用看吧!


由 mead 在 2013-08-09 15:43 發表:

這是一段畫箱體的程式碼
主要是要了解他箱體的定義
不然就只能照著用了


由 Markchu7 在 2013-08-09 17:31 發表:

感謝M大的回覆,我知道是畫箱體!因為門外漢一點一滴學著奇狐的寫法,很辛苦!看不懂源碼,無法知悉畫箱體的規則,所以PO上來,看看有無高手可以指點迷津,否則就算分享也是不錯!


由 mead 在 2013-08-09 23:36 發表:

那應該是VBS語法寫的 我也不是很懂!
所以無法解說
希望能有懂的大大能提點一下 好讓我們能自行修改成自己要的!


由 cgjj 在 2013-08-12 09:39 發表:

引用:
最初由 mead 發表
那應該是VBS語法寫的 我也不是很懂!
所以無法解說
希望能有懂的大大能提點一下 好讓我們能自行修改成自己要的!



該段程式並未用到 VBS 唷
(這邊講的 VBS 是指 VBScript)


由 mead 在 2013-08-12 11:20 發表:

是喔!見笑了
請大家忽略我的言論


全部時間均為台灣時間, 現在時間為19:39
在這個頁面顯示本主題全部的 8 個文章


Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.

簡愛洋行 製作 Copyright 2003-. All Rights Reserved.