iron2

プラ子の実数版シダCG改1

2017/12/02 (Sat) 15:00:05

iron2です。
実数版のshidacg Ptuen2 250MHz+C.Basic CG
と比較して少し早くなってると思います。

もうほんとに実数演算機言語PPLなんで
ほとんどのネタがぽしゃりましたが
プラ子はがんばりました。

では
Pass :
sentaro

Re:プラ子の実数版シダCG改1

2017/12/02 (Sat) 17:35:25
iron2様、
最適化の効果、出てますね!
プラ子も頑張れば出来る子ですね。(^^)

>draw_shidaCG1_PI_J1
もし、よろしければぜひ公開を。(^^)
Pass :
iron2

re:Re:プラ子の実数版シダCG改1

2017/12/02 (Sat) 21:32:05

こんばんわ、iron2です。

プラ子の液晶は320X243が正しいサイズです。
公表情報より大きいのはステータスメニュー
バーがあるためです。

で、もう少し手を加えた現状の最高速版です。
20秒は切れませんでしたが、オリジナルと比べると
見ててたのしいのであまり遅く感じません。
実数版の良いところは枝葉の重なりぐわいとか枝葉の
枝がくっきりわかりたのしめます。
高速化ネタはしょぼいのではずかしいかぎりですが
sentaro様のプラ子でお試しください。コピペでいける
はずです。
電卓の(-),E-3の表示が化けるので手直ししてます。
転送後、手直しが必要かもです。

よろしくお願いします。

// title : draw_shidaCG_PI_J1.ppl
// 2017-10-03 15:18:44
// Create by akatuki(sama)
// Modify by iron2
// date 2017/12/02

// main
EXPORT draw_shidaCG_PI_J1()
BEGIN
// Clean the (G0):
RECT(G0);
PRINT();
LOCAL i,cnt,r,tmp;
LOCAL x,y,xmax,xmin,ymax,ymin;
LOCAL width,height,ww,hh,ww2,hh2;
LOCAL col,col1,col2,col3,col4;
LOCAL xp,yp;

// initial ooord
x := 0;
y := 0;

width := 320;
height := 240;

// loop counte
cnt := 30000;
// working
tmp := -3000;
xmin := -3000;
xmax := 5000;
ymin := 0;
ymax := 8000;

ww := width*100000/(xmax-xmin);
hh := height*100000/(ymax-ymin);

ww2 := ww*0.00001;
hh2 := hh*0.00001;

col1 := RGB(0,0,0);
col2 := RGB(255,0,0);
col3 := RGB(0,225,0);
col4 := RGB(0,0,255);

LOCAL T1,T2;

T1 := TICKS();
FOR i FROM 1 TO cnt STEP 1 DO
r := RANDOM(999.0);
CASE
IF(r <10) THEN
tmp :=0;
y :=(160*y)*0.001;
col := col1;
END;
IF(r<70) THEN
tmp :=((200*x)-(260*y))*0.001;
y :=(((230*x)+(220*y))*0.001)+1600;
col := col2;
END;
IF(r<150) THEN
tmp :=((-150*x)+(280*y))*0.001;
y :=(((260*x)+(240*y))*0.001)+440;
col := col3;
END;
DEFAULT
tmp :=((850*x)+(40*y))*0.001;
y :=(((-40*x)+(850*y))*0.001)+1600;
col := col4;
END;
x:=tmp;
xp:=(x-xmin)*ww2;
yp:=(y-ymin)*hh2;

PIXON_P(yp,xp,col);

END;
T2 := TICKS();

TEXTOUT_P((T2-T1)*1E-3+"(SEC)",5,5,0,RGB(0,0,255));
TEXTOUT_P("draw_shidaCG1_PI_J1(color)",80,5,0,RGB(255,0,127));
TEXTOUT_P("ESC->EXIT",240,25,0,RGB(0,200,0));

// key wait loop
REPEAT UNTIL GETKEY() == 4;
FREEZE;
//WAIT();
END;
Pass :
Name
Mail
URL
icon
99
Pass
*編集・削除用(任意:英数字4~8文字)
Subject
絵文字
画像添付
[ e:349][ e:442][ e:446][ e:454][ e:456][ e:786][ e:451][ s:472D][ s:472E][ s:4731]
[ e:731][ e:732][ s:4740][ s:4741][ e:51][ e:265][ e:266][ e:262][ s:4F4F][ s:453D]
[ s:4F34][ s:4532][ s:4F32][ e:45][ e:219][ s:4F62][ s:4540][ s:4763][ s:4766][ s:4767]
[ s:476A][ s:4769][ s:476B][ s:4768] [ s:476C][ s:476D][ s:4538][ s:504E][ s:473E][ s:473D]
[ s:4F2D][ s:512B][ s:5151][ s:4526][ s:4528][ s:452B][ s:4775][ s:453C][ s:453A][ s:453B]