פורסם 2005 באוקטובר 2020 שנים אני עושה פרויקט בVB על גרפיקה תלת מימדית, יש לי שם פונקציה שהמורה הביא לנו,הפונקציה אמורה לבצע הסתרה בגופים קמורים בלבד. שכחתי כבר איך הפונקציה עובדת ורציתי להזכר...הפונקציה מקבלת גוף תלת מימדי Body ואת מספר הפאה, ומחזירה TRUE אם צריך להסתיר את הפאה,אחרת מחזירה FALSE Dim P1 As Point3D, P2 As Point3D, P3 As Point3D Dim v1 As Point3D, v2 As Point3D Dim N As Point3D Dim M As Point3D Dim Result As Single Dim C As Point3D C = WeightCenter(body) P1 = body.Ver(body.Faces(NoFace).Face(1)) P2 = body.Ver(body.Faces(NoFace).Face(2)) P3 = body.Ver(body.Faces(NoFace).Face(3)) SubVectors v1, P1, P2 SubVectors v2, P3, P2 m3Cross N, v1, v2 SubVectors M, P1, C Result = N.X * M.X + N.Y * M.Y + N.Z * M.Z If Result < 0 Then N.Z = -N.Z End If If N.Z > 0 Then HideLine = True Else HideLine = False End IfEnd FunctionPrivate Function HideLine(body As Body3D, NoFace As Integer) As Booleanאם מישהו צריך הסבר לגבי פעולות כלשהן או משתנים או פונקציות אחרות שנעשה בהן שימוש ,אשמח לענות...תודה מראש.
פורסם 2005 באוקטובר 2020 שנים מחבר תפתח MSDN נראה לי שלא הבנתם מה אני רוצה,אני יודע מה בדיוק כל פקודה מבצעת ואני מבין את הסינטקס, אני לא מבין איך הפונקציה עובדת מבחינה מטמתית... לכן אמרתי שאם מישהו צריך הסבר ממני על יעודו של משתנה או פונקציה אני מוכן להסביר... בכל מקרה תודה על האתר אולי הוא יהיה לי לעזר בהמשך,אך הוא לא עונה על שאלתי...
פורסם 2005 באוקטובר 2320 שנים בMSDN יש הסבר עבור כל פונ כמעט שקיימת. פרמטרים שהיא מקבלת, הערך(ים) שהיא מחזירה, מה היא עושה, ולפעמים הסבר על אופן הפעולה שלה.
פורסם 2005 באוקטובר 2420 שנים זו פונקציה שהמורה שלו הביא לו, זו לא פוקציה מובנית בVB, למה שהיא תהיה בMSDN?
פורסם 2005 באוקטובר 2420 שנים מחבר חשבתי שהוא רוצה הסבר על כל פונ שהפונ הנל משתמשת בו.לא, אני רוצה הסבר לפונקציה הזאת בלבד,אני רוצה לדעת איך היא עובדת מבחינה מטמתית,מה הוקטורים בודקים ולמה צריך כל וקטור,דברים כאלה.אז בבקשה מישהו שיודע יכול לעזור?כמו שגם אמרתי אם מישהו צריך הסבר לגבי פרטים כלשהם שישאל כי את זה אני דווקא יודע...
פורסם 2005 באוקטובר 2420 שנים למה שלא תשאל את המורה שלךותגיד לו באותה הזדמנות שפעם הבאה יוסיף הערות לקוד
פורסם 2005 באוקטובר 2420 שנים מחבר למה שלא תשאל את המורה שלךותגיד לו באותה הזדמנות שפעם הבאה יוסיף הערות לקודנראה לי בסוף זה מה שאני אעשה, כי לא בדיוק עונים לי. פשוט כרגע אנחנו בחופשת סוכות ואין לי גישה למורה.
פורסם 2005 באוקטובר 2420 שנים שמע קשה לענות לך כשהוא כותב בלי הערות ומשתמש באובייקטים שהוא הגדיר בעצמו שאנחנו מן הסתם לא מכירים.מה גם שאני חושב שהוא עושה שם מכפלה ווקטורית(לא סקלרית), מה שלא ממש מלמדים בתיכון, אלא רק באוניברסיטה למי שהולך ללמוד מתמטיקה.
פורסם 2005 באוקטובר 2420 שנים מחבר הנה הטיפוסי הנתונים: X As Single Y As Single Z As SingleEnd TypePublic Type Face3D NVer As Integer Face(1 To MaxVerInFace) As IntegerEnd TypePublic Type Body3D NVer As Integer Ver(1 To MaxVer) As Point3D NFace As Integer Faces(1 To MaxFace) As Face3DEnd TypePublic Type Point3Dבקשר למכפלה ווקטורית,המורה הסביר לנו שהכפלת ווקטור אחד בשני יוצרת ווקטור שמאונך למישור שני הווקטורים האחרים,זה ברור לי.
פורסם 2005 באוקטובר 2420 שנים בקשר למכפלה ווקטורית,המורה הסביר לנו שהכפלת ווקטור אחד בשני יוצרת ווקטור שמאונך למישור שני הווקטורים האחרים,זה ברור לי.קוראים לזה כלל היד או כלל הבורג אבל זה נותן רק את הכיוון.בשביל הגודל צריך את זה:x = Ay * Bz - By * Azy = Az * Bx - Bz * Axz = Ax * By - Bx * Ayבכל מקרה תישאל אותו, זה יהיה הכי טוב.
פורסם 2005 באוקטובר 2520 שנים מחבר קוראים לזה כלל היד או כלל הבורג אבל זה נותן רק את הכיוון.בשביל הגודל צריך את זה:x = Ay * Bz - By * Azy = Az * Bx - Bz * Axz = Ax * By - Bx * Ayכן זה בדיוק מה שעושה הפונקציה M3Crossבעקרון הפונקציה HIDELINE לוקחת 3 נקודות על אותה פאה(3 נקודות=3 ווקטורים[P1,P2,P3]) ועושה פעולות עליהן, אז נגיד לשם דוגמא נניח שהגוף הוא קובייה. עכשיו אולי זה יותר ברור?אגב, המשתנה C בעצם מכיל את הקוארדינטות של מרכז הכובד של הגוף,זה עוד ווקטור שנעשה בוא שימוש
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.