نظرة عامة حول manipulations و Inertia
manipulations بتمكين مستخدمين من إلى تحريك وتدوير وتغيير حجم عناصر واجهة مستخدم باستخدام manipulaإلىrs . يمثل manipulator ماوس أو (في سيناريو بطريقة اللمس) قلم أو finger.
inertia بمحاكاة سلوك واقعية واجه المستخدم عناصر موجودة في الحركة بواسطة محاكاة خاص friction يفرض تشغيل العناصر. بما يمكن من العناصر إلى تدريجيا تبطئ الحركة الخاصة بهم (كلا خطي و زاوية) قبل القادمة إلى توقف. توفر هذه المقالة مقدمة إلى manipulations و inertia ل.NET Framework.
manipulations
يعامل معالجة مجموعة من manipulators كـ كائن مركب. يمكن تطبيق مقطع صوتي التغييرات إلى كائن مركب بدلاً من المكونات الفردية.
خذ بعين الاعتبار نسخة في التوضيح التالي. يمكن لمستخدم استخدام الثاني manipulaإلىrs إلى تحريك وتدوير وتغيير حجم الصورة. التغييرات إلى كل manipulaإلىr يتم تفسير إلى gether مع manipulaإلىrs غير ذلك.
تشغيل سبيل المثال، إذا كان لديك جهازي manipulators (1 و 2) تشغيل نسخة، وقمت بنقل manipulator 1 في + ن الالاتجاه إلى (أسفل) أو تغيير إلى نسخة يعتمد تشغيل ما يحدث ل manipulator 2. إذا manipulator 2 ينقل أيضا + الاتجاه Y (أسفل)، نسخة ينقل ببساطة في + الاتجاه ص. ولكن إذا كان لا يغير manipulator 2، أو يتحرك في الاتجاه ص-(لأعلى) والصورة هو إجراء أصغر أو تدويرها.
نسخة يتم التعامل معه بواسطة manipulators الثاني
معالجة معالجة يوفر إطار عمل تراقب مجموعة فرعية manipulators ويفسر لهم كـ إذا كانت هي تعمل معا، بدلاً من طريقة مستقلة. يمكنك إنشاء معالجة عدة الكائنات المعالج في نفس الوقت، واحد لكل عنصر واجهة مستخدم إلى يمكن معالجته في أحد تطبيقات. معالج معالجة هو إعلام من أجهزة لمراقبة إدخال و manipulations التقارير من خلال أحداث.NET.
لم يكن معالج معالجة معلومات حول عنصر معين هو الذي يتم التعامل معه. تطبيق التغييرات يطبق بشكل منفصل إلى عنصر خاص بالتطبيق. على سبيل المثال، يتم تطبيق بتطبيق تحويلات إلى نسخة أو redraws إلى بعرضه في الالموقع الجديد أو بالحجم الجديد أو الاتجاه.
يتم تصميم manipulations ل تحويلات affine ثنائي الأبعاد (ثنائي-الأبعاد) . تضمين هذه تحويلات ترجمة، تدوير، و مقياس.
أجزاء من معالجة
معالجة هو مجموعة من Manipulator2Dالكائنات. Th هو تجميع معالجة هو تمثيله بنقطة أصل وقطع ناقص. يؤشر الأصل هو موضع متوسط الجميع manipulators التي يتم التعامل مع عنصر. على القطع الناقص RADIUS هو متوسط المسافة من الأصل إلى كل من Manipulator2Dالكائنات.
manipulators الثاني (1 و 2) ونقطة بداية قطع ناقص بتحديد معالجة
كـ manipulators إضافة، نقل، أو إزالتها لعنصر واجهة مستخدم، أحد تطبيقات بتحديث ManipulationProcessor2Dالكائن قبل استدعاء ProcessManipulators()الأسلوب. عندما المعالجة أولاً يبدأ، Startedحدث هو raهوed.
ملاحظة |
---|
معالجة معالجة هو أكثر فعالية عند استخدامه في بيئة تستند إلى إطار تحديث.عند استخدام معالجة معالجة في تطبيق XNA Microsoft Office 2010 Suite، رقم هو هو لا مهما لأنه يوفر إطار عمل XNA تحديثات تستند إلى إطار باستخدام Game.تحديث الأسلوب.في بيئة أخرى (مثل كـ WinForms)، قد تحتاج إلى توفير منطق إطار-bكـed الخاص بك لجمع manipulations وإرسالها بشكل دوري إلى ProcessManipulators()أسلوب كـ دفعية. |
كرقم manipulators أو تغيير الموضع الخاصة بهم، Deltaحدث هو raهوed. خصائص Manipulation2DDeltaEventArgsالكائن الذي هو التي تم تمريرها إلى Deltaتعيين معالج أحداث تغييرات في الأصل والمقياس، التدوير، والترجمة التي حدثت منذ آخر الأحداث. نقطة البداية لمعالجة التغييرات عند تحريك manipulators، و عند تمت الإضافة manipulators أو إزالتها. ترجمة قيم بتحديد مقدار حركة س أو ص يشتمل المعالجة.
قم باستخدام قيم الجديدة، redraws تطبيق من عنصر واجهة المستخدم.
نقل manipulator 1 و يؤدي إلى نقطة البداية لتغيير
عند manipulator الأخيرة التي هو المقترنة المعالجة هو إزالتها من ManipulationProcessor2Dالكائن، Completedحدث هو raهوed.
طراز معالجة معالجة
يستخدم معالج معالجة نموذج استخدام المباشرة. بهذه الطريقة بسيطة، يجب أن تجتاز تطبيق أية تفاصيل حدث إدخال إلى المعالج معالجة. قد يمكن رفع حدث إدخال بواسطة إدخال أية مجموعة أساسية، مثل جهاز ماوس أو قلم finger. توفر هذه العملية تقنية تصفية مباشرة وطراز استخدام بسيطة، حيث تطبيق يمكن تجميعها الأحداث الإدخال عندما يكون ذلك ضروريا.
لتطبيق ما يتم تضمين اﻷولى إدخال في عملية المعالجة، يقوم بإنشاء Manipulator2Dبنية من تفاصيل أساسية الإدخال، وتمرير البنية باستخدام المعالج معالجة ProcessManipulators()الأسلوب. المعالج معالجة ثم يرفع من الأحداث، والتي يجب أن تعامل تطبيق إلى تحديث المكونات المرئية بالشكل مناسب.
طراز معالجة معالجة
inertia
يمكن للمعالج inertia التطبيقات الاستكمال الالموقع، واتجاهها، و غير ذلك الخصائص لعنصر واجهة المستخدم بواسطة محاكاة خاص سلوك الحقيقي.
على سبيل المثال، عند نقرات مستخدم عنصر ما، فإنه يمكن متابعة نقل، decelerate، و ثم الإيقاف ببطء. المعالج inertia بتنفيذ هذا سلوك بتسبب affine قيم ثنائية الأبعاد (أصل المقياس، الترجمة والتدوير) إلى تتغير بمرور وقت محدد بمعدل deceleration محدد.
كـ بمعالجة معالجة، معالج inertia لم يكن على معلومات حول أي عنصر واجهة مستخدم معين. استجابة إلى الأحداث التي يتم مرفوع على InertiaProcessor2Dالكائن بتطبيق التغييرات التي يتم تطبيق حدة إلى على العنصر الخاص بالتطبيق.
معالجة inertia و المعالجة معالجة تستخدم غالباً مع بعضها البعض. بها واجهات متشابهة، و أحداث التي يقومون برفع كانا (في بعض الحالات) متطابقة. بشكل عام، يبدأ المعالجة inertia عند معالجة عنصر واجهة مستخدم هو إكمال. Th هو هو accomplهوhed ب lهوtening Completedحدث وبدء inertia معالجة من معالج حدث هذا.