找回密码
 加入
搜索
楼主: afan

[效率算法] 心跳的感觉[控件移动]

 火... [复制链接]
 楼主| 发表于 2010-4-20 23:49:11 | 显示全部楼层
回复 30# C.L


    皮球型弹跳够自然了~ 我那个是气球~ 呵呵
发表于 2010-4-21 00:21:50 | 显示全部楼层
回复 31# afan
气球只是质量小一点,我那里可以改质量,然后调整一下加速度,你看看下面这段象不象气球:
Dim $P = RegRead('HKLM\SOFTWARE\AutoIt v3\AutoIt', 'InstallDir')
Dim $Ico = $P & '\Aut2Exe\Icons\strawberry.ico'
GUICreate('test', 350, 130)
$cIco = GUICtrlCreateIcon($Ico, -1, 100, 100)
GUISetState()

While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                        Case -3
                                        Exit
                        Case $cIco
                                IcoMove ()        
        EndSwitch
WEnd

Func IcoMove()
                For $y=500 To 1 Step -25
                        Circle ($y)
                Next
EndFunc   ;==>IcoMove

Func Circle ($times)
        Local $v=0,$t,$s,$h=0,$g=9.8,$a=$times
        For $t=1 To $times
                $v=Round (0.01*$a/$t,2)
                $s=$v*$t
                $a=$a-$g
                $h+=$s
                If $h <= 0 Then ExitLoop
                ControlMove('test', '', $cIco, Default, 100-$h)
                Sleep (30)
        Next
        $v=0
        $a=0
        $h=100
        For $t=1 To $times
                $v=Round (0.01*$a/$t,2)                
                $s=$v*$t
                $a=$a+$g
                $h+=$s
                If $h >= 100 Then ExitLoop
                ControlMove('test', '', $cIco, Default, $h)
                Sleep (30)
        Next        
EndFunc
                

评分

参与人数 2威望 +10 金钱 +22 贡献 +5 收起 理由
lynfr8 + 22 + 5 很棒的见解
afan + 10

查看全部评分

 楼主| 发表于 2010-4-21 00:26:05 | 显示全部楼层
回复  afan
气球只是质量小一点,我那里可以改质量,然后调整一下加速度,你看看下面这段象不象气球:
C.L 发表于 2010-4-21 00:21



    果真,效果非常自然,学习了~
发表于 2010-4-21 07:06:04 | 显示全部楼层
学习高手们的技术.
发表于 2010-4-21 08:55:52 | 显示全部楼层
虽然插不上手,但afan的贴子一定是要顶一下的。
发表于 2010-4-21 09:08:00 | 显示全部楼层
本帖最后由 水木子 于 2010-4-21 12:30 编辑

我在想当球落地的时候稍微改变球的形状,是不是更真实些呢!
发表于 2010-4-21 12:24:15 | 显示全部楼层
我在想当球落地的时候稍微改变球的形状,是不是会真实呢!
水木子 发表于 2010-4-21 09:08



    我也很想知道.
发表于 2010-4-21 12:30:07 | 显示全部楼层
有意思,不错啊
 楼主| 发表于 2010-4-21 13:12:55 | 显示全部楼层
我在想当球落地的时候稍微改变球的形状,是不是更真实些呢!
水木子 发表于 2010-4-21 09:08



    那个只怕用flash方便很多吧(我不会做flash... gif的效果也不好),要不就得做多个ico图标...
发表于 2010-4-21 15:11:56 | 显示全部楼层
呵呵,学习了....
发表于 2010-4-21 17:21:06 | 显示全部楼层
牛人们,都这么熬夜,身体才是革命的本钱啊!学习AU3,可别忘了本钱!
发表于 2010-4-22 00:37:14 | 显示全部楼层
乱七八糟的一段代码
Dim $P = RegRead('HKLM\SOFTWARE\AutoIt v3\AutoIt', 'InstallDir')
Dim $Ico = $P & '\Aut2Exe\Icons\strawberry.ico'
GUICreate('test', 400, 640)
$cIco = GUICtrlCreateIcon($Ico, -1, 10, 10)
$dIco = GUICtrlCreateIcon($Ico, -1, 250, 10)
GUISetState()

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case -3
                        Exit
                Case $cIco
                        heart_1()
                Case $dIco
                        heart_2()
        EndSwitch
WEnd

Func heart_1()
        For $i = 0 To 60
                GUICtrlSetPos($cIco, 10 + $i * 3, 10 + 4.9 * 0.03 * ($i + 1) ^ 2)
                Sleep(30)
        Next
        Sleep(20)
        For $i = 60 To 0 Step -1
                GUICtrlSetPos($cIco, 10 + $i * 3, 10 + 4.9 * 0.03 * ($i + 1) ^ 2)
                Sleep(30)                
        Next
EndFunc

Func heart_2()
        Dim $H[22] = [0, 0, 15, 30, 41, 52, 62, 70, 77, 83, 88, 92, 95, 97, 99, 101, 102, 103, 104, 104, 104, 104]
        For $j = 1 To 21
                If mod($j, 2) <> 0 Then
                        Sleep(Round(200/$j))
                        For $i = $H[$j] To 105
                                Sleep(10)
                                GUICtrlSetPos($dIco, 250, 10 + 4.9 * 0.01 * ($i + 1) ^ 2)
                        Next
                Else
                        For $i = 105 To $H[$j] Step -1
                                Sleep(10)
                                GUICtrlSetPos($dIco, 250, 10 + 4.9 * 0.01 * ($i + 1) ^ 2)
                        Next
                EndIf
        Next
EndFunc        

评分

参与人数 1金钱 +40 收起 理由
afan + 40 学习了

查看全部评分

发表于 2010-4-22 08:55:49 | 显示全部楼层
很有意思,看看。
发表于 2010-4-22 13:02:44 | 显示全部楼层
呵呵呵呵呵呵呵呵呵嗬嗬嗬嗬

评分

参与人数 1金钱 -30 收起 理由
pusofalse -30 恶意灌水,扣分警告!

查看全部评分

发表于 2010-4-22 13:02:58 | 显示全部楼层
呵呵呵呵呵呵呵呵呵呵呵额呵呵

评分

参与人数 1金钱 -30 收起 理由
pusofalse -30 恶意灌水,扣分警告!

查看全部评分

您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-22 12:08 , Processed in 0.101358 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表