Board logo

标题: [原创]中间渐渐变大的圆 [打印本页]

作者: 523066680     时间: 2008-11-30 09:58    标题: [原创]中间渐渐变大的圆

首发于http://bbs.bathome.cn/viewthread.php?tid=2666&extra=page%3D1&frombbs=1
由于greedsnake被人回了一个不好的帖,很影响心情,现在打算每次发特效帖先做声明了
声明:
    1.本帖发表特效,视觉类的代码.
    2.对特效,视觉类代码有偏见并且说话没水平的,就请不要回影响别人心情的帖.
    3.如果想要发表偏见的,"没有任何实际意义" "不务正业" 等这类肤浅的话,请不要拿来放.
      因为上面已经声明是特效了,偏见者进来还乱说话的扣分!!

url:以下是我对特效的观点帖.
@echo off &mode con cols=60 lines=32
title made by hi.baidu.com/523066680
call :setup oo.vbs
   ::开始调用vbs,事实上(3,1,13)原为3,2,13,不过我发现1也不错.
   for /l %%a in (3,1,13) do (cls &cscript oo.vbs //i %%a |more +2)
   pause
   exit
::说明,以下生成代码为"打包批处理.bat"打包oo.vbs的生成码.(本人是在宣传作品啊~)
:setup
set "act="
for /f "delims= eol=" %%a in (%~nx0) do (
  if "%%a"=="::%* end" (goto :eof)
  if defined act echo,%%a>>"%*"
  if "%%a"=="::%*" errcommand>"%*" 2>nul&set act=act
)

::oo.vbs
set i=wscript.arguments
wscript.echo Dotx2(i(0))
wscript.sleep 800

function Dotx2(n)
   for y = n to -n step -1
       x=sqr((n^2-y^2))*2
       if x>0 then x=x-1
       Dotx=space(x) & "*" &space(27-x)
       Dotx2=Dotx2 &StrReverse(Dotx) &Dotx & vbcrlf
   next
   Dotx2=space((14-n)*60) & Dotx2
end function
::oo.vbs end
为了方便理解,这里贴上最初画圆的vbs代码
for y = 5 to -5 step -1
x=sqr((25-y^2))*2         '设定公式为 x^2+y^2=25 即半径为5
if x>0 then x=x-1
Dotx=space(x) & "*" &space(10-x)
Dotx2=Dotx2 &StrReverse(Dotx) &Dotx & vbcrlf
next
msgbox Dotx2
主要是先以x正轴描点,然后往后边补空格,再倒过来接在前面,就变圆了.
作者: breakme     时间: 2008-11-30 10:54
发帖的人就是牛逼,这种效果你也做出来了
作者: YoDe     时间: 2008-11-30 11:50
牛 学习了
作者: wxcute     时间: 2008-11-30 18:02
EXIST 兄又来发特效了,支持一下。
作者: wwmmc     时间: 2008-12-1 08:45
虽然我看不大懂,可我知道 要学习