ABA


"היי מתכנתים אפשר עזרה בשניה עם הלוגיקה בקוד כאן"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #21809 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 21809
fifa12 לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 13.11.11
1878 הודעות, 2 פידבק
   17:00   16.09.16   
אל הפורום  
  היי מתכנתים אפשר עזרה בשניה עם הלוגיקה בקוד כאן  
 
   ערכתי לאחרונה בתאריך 16.09.16 בשעה 17:12 בברכה, fifa12
 
יש לי את הקוד
הזה

בגדול הבנתי שפה בקוד ברגע שאני לא משתמש בכפתורים כלומר מבטל אותם
יש לי אופציה של החלקה על המסך

עכשיו בשביל לדעת לאן מחלקים לאורך או רוחב

מחסרים את הנקודה שבה סיימתי תהחלקה מהנקודה הראשונה שהתחלתי
לדוגמא אם הערך אם ההפרש בערך מולחט של x גדול מהפררש של Y אנחנו מחלקים על ציר ה X
כלומרHorizontal


if (!useButtons) {
try {
float diffX = e2.getX() - e1.getX();
float diffY = e2.getY() - e1.getY();
if (Math.abs(diffX) > Math.abs(diffY)) {
// Horizontal swipe אופקי
if (Math.abs(diffX) > GameSettings.SWIPE_THRESH_HOLD && Math.abs(velocityX) > GameSettings.SWIPE_VELOCITY_THRESH_HOLD) {
if (diffX > 0) {
onSwipeRight();//החלקה ימינה
} else {
onSwipeLeft();//החלקה שמאלה
}
}
result = true;
} else if (Math.abs(diffY) > GameSettings.SWIPE_THRESH_HOLD
&& Math.abs(velocityY) > GameSettings.SWIPE_VELOCITY_THRESH_HOLD) {
// Vertical swipe אנכי
if (diffY > 0) {
onSwipeDown();//החלקה למטה
} else {
onSwipeUp();//החלקה למעלה
}

עכשיו אני לא מבין מה יכולת הכוונה של הבדיקה פה

 
if (Math.abs(diffX) > GameSettings.SWIPE_THRESH_HOLD && Math.abs(velocityX) > GameSettings.SWIPE_VELOCITY_THRESH_HOLD)

SWIPE_THRESH_HOLD וSWIPE_VELOCITY_THRESH_HOLD מוגדרים כשווים ל100 (כלומר מהירות של 100 מאיות לשניה)
(איזה בדיקה זו בכלל מה זה בדיקה של הפרש מול מהירות החלקה)


אחר כך זה כבר ברור הוא בודק אם x קטן מאפס אז מחליק שמאל אם גדול מחליק ימינה


תודה מראש


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  מכתב Gman 16.09.16 17:18 1
  THRESH_HOLD זאת הנחת יסוד aCoZz  16.09.16 17:31 2
  תודה רבה לשניכם :) סידרתם לי תעניין fifa12 16.09.16 17:37 3

       
Gman
חבר מתאריך 31.3.02
1846 הודעות
   17:18   16.09.16   
אל הפורום  
  1. מכתב  
בתגובה להודעה מספר 0
 
   זה נראה כמו וידוא שבאמת המשתמש החליק באופן אופקי.

החלק הזה:
Math.abs(diffX) > GameSettings.SWIPE_THRESH_HOLD
בודק האם המשתמש החליק יותר מרחק מאשר רף מסויים - כלומר, למנוע החלקות 'קצרות'
Math.abs(velocityX) > GameSettings.SWIPE_VELOCITY_THRESH_HOLD)
בודק האם המשתמש החליק מהר(!) יותר מרף מסויים - למנוע החלקות 'איטיות'.

כלומר, אתה תעבור את הבדיקה רק אם המשתמש החליק מעל למרחק מסויים ומעל למהירות מסויימת כך שזו תהיה החלקה 'תקינה'


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
aCoZz 
חבר מתאריך 19.7.06
17692 הודעות
   17:31   16.09.16   
אל הפורום  
  2. THRESH_HOLD זאת הנחת יסוד  
בתגובה להודעה מספר 0
 
   במקרה שלך אתה מניח שאם נעשתה תנועה תקינה היא מעל ה THRESH_HOLD שצויין
אותו דבר בקשר למהירות

זאת סוג של הנחת יסוד כי אתה לא תרצה להפעיל לוגיקה סתם על נגיע במסך או משהו בסגנון הזה


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
fifa12 לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 13.11.11
1878 הודעות, 2 פידבק
   17:37   16.09.16   
אל הפורום  
  3. תודה רבה לשניכם :) סידרתם לי תעניין  
בתגובה להודעה מספר 0
 
  

נשלח ע"י הסלולרי


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net