DAVID Malan: Se pou yo ekri yon pwogram ki gen yon fenèt ak yon sèk ki gen ti sèk ki rebondi dèyè, yo soti sou bò gòch la ak dwa bor nan ki fenèt. Pou fè sa, se pou yo sèvi ak Stanford a Bibliyotèk pòtab, e kite yo premye gen ladan yo gevents.h pou nou ka koute pou mouvman sourit. Se pou yo Lè sa a, gen ladan yo gobjects.h pou ke nou ka deklare bagay sa yo tankou oval oswa ti sèk, vrèman. Lè sa a, se pou yo gen ladan yo gwindow.h pou ke nou gen yon fenèt grafik pou tout bagay. Se pou yo deklare prensipal nan chemen an dabitid. Li kite yo kounye a deklare ak enstansye oubyen kreye ki fenèt, GWindow - epi n ap rele fenèt la varyab - vin newGWindow. Epitou, n ap abitrèman fè l ' 320 piksèl pa 240 piksèl. Se pou yo pwochen enstansye yon sèk. Men, yo enstansye sèk sa a, nou bezwen fè yon ti jan plis travay. An patikilye, se pou yo ranpli nan sèk sa a se konsa ke bagay la tout antye se nwa epi li pa jis nan deskripsyon ladan l '. GOval - nou pral rele li sèk - vin newGOval. Nou pral mete oval sa a nan 0, 110, epi n ap fè oval 20 piksèl yo lajè pa 20 piksèl segondè - nan lòt mo, yon dyamèt 20 oswa yon reyon 10. Se pou nou kounye a mete koulè a ​​nan ki sèk yo dwe quote, unquote, "nwa." Se pou yo kounye a mete l 'dwe ranpli pa ki espesifye vre. Epi, koulye a Finalman, se pou yo ajoute sèk la fenèt la jan sa a, annakò ak sa a lèt se ajoute nan ansyen an. Se pou nou kounye a deklare yon doub. Nou pral rele li vitès. Apre sa, yon ti jan abitrèman, se pou yo di a vitès nan ti sèk sa a pral 2.0, nan lòt mo, 2 piksèl pou chak inite tan. Epi, koulye a kite a fè espre pwovoke yon bouk enfini. Se konsa, ki jan fè sèk sa a rebondisman dèyè, yo soti? Oke kite a sipoze nan sa a bouk ki pou chak inite tan, nou ale pou avanse pou pi sèk la jis yon ti kras ti jan ki baze sou vitès li yo nan 2 piksèl pou chak inite tan. Men, toujou, nou pral fè yo tcheke si ti sèk an ki manyen an dwa kwen nan ekran an oswa bò gòch la kwen nan ekran an, paske si se konsa, nou bezwen li a rebondi, se konsa pale. Ki jan yo aplike a nosyon nan rebondi? Byen si nou pral nan 2 piksèl a dwa pou chak inite tan, nan rebondisman nan kwen dwat la, nou ka tou senpleman ranvèse ke yo dwe negatif 2 piksèl pou chak inite nan tan, kidonk negation vitès la. Se konsa, an reyalite, rebondi se relativman dwat. Se pou yo premye deplase ti sèk ki pa sa a anpil piksèl ansanm aks-x la, pa sa a anpil piksèl ansanm aks-y la. Nan lòt mo, nou pa vle li nan trennen sou aks-y la nan tout. Nou sèlman vle li nan rebondi tounen ak lide kite ak dwa. Li kite yo kounye a tcheke nan sa a bouk si kowòdone x la-a ti sèk ki plis lajè a nan ti sèk ki gen plis pouvwa pase oswa egal a la lajè nan fenèt la - nan lòt mo, si kote sèk la plis lajè a nan ti sèk ki tèt li se kounye a sot pase kwen an nan fennèt la, nou ta pi bon ranvèse vitès nou yo - vitès vin vitès negatif, kidonk ranvèrsan yon pozitif nan yon negatif oswa yon negatif nan yon pozitif. Men, sa ki si se ti sèk ki k ap soti nan dwat a gòch epi li Se poutèt sa, frape kwen an rete? Nan lòt mo, si nan la kowòdone-x ti sèk ki se kounye a mwens pase oswa egal a 0, se pou yo ale pi devan epi ankò Invert vitès nou an. Se konsa, poukisa m 'pa te ajoute nan la lajè nan sèk la sa a tan, menm jan mwen te fè anvan an? Oke, kenbe nan tèt ou ki kowòdone yo yon objè ki defini pa kwen gòch anwo-men li yo, pa pa mwayen li yo. Se konsa, lè sèk la ap deplase soti nan goch a dwat, nou bezwen yo tcheke si wi ou non kwen an dwa a nan se ti sèk pase a dwa kwen nan fenèt la. Se konsa, yo konnen sa ki se sa ki, nou gen jwenn kowòdone x la-a ti sèk ki plis lajè a nan sèk la pou avanse pou pi tèt nou, depi anwo sou bò gòch la kwen, efektivman, nan la tèt kwen men dwat-ou. Lè sèk la ap deplase de dwat a gòch li yo, pandan se tan, nou pa bezwen anmède ak adisyon sa yo, paske la tèt kwen gòch nan sèk la se deja valè a nou pral jwenn nan jwenn x. Se pou nou kounye a deplase boul la. Se pou nou kounye a sove, konpile yo, kouri sa a pwogram nan, fè rebondisman,. / rebondisman. Apre sa, nou gen yon pwogram nan. Men, se ti sèk ki ap deplase Se konsa, reprize vit, li prèske enposib yo wè sa ki nan aktyèlman pral sou. Se konsa, kite a byen pwogram nan lafòs pa klike X la nan anwo sou men dwat la kwen isit la. Se pou nou kounye a ale tounen nan kòd la sous ak bagay ralanti yon ti kras. Nan lòt mo, nan sa enfini bouk, olye ke jis ak deplase ak deplase ak ankò, anons nauseum, se pou yo retade pou jis yon kèk milisgond anvan yo pou avanse pou pi ankò. An patikilye, se pou yo ale nan pati anba a nan bouk la enfini isit la ak tou senpleman pran yon poz pou, di, 10 milisgond sou chak iterasyon. Se pou nou kounye a compile ak re-kouri rebondisman. Epi, koulye a nou wè yon rezonab pi plis aplikasyon, kote nou ka wè nan sèk se vre wi: rebondi sou la kite ak kwen dwat.