تعيين إحداثيات إلى البند لا يعمل كما هو متوقع

StackOverflow https://stackoverflow.com//questions/21029273

  •  21-12-2019
  •  | 
  •  

سؤال

أواجه مشاكل في الحصول على تنسيق رسم الخرائط للعمل كما هو المقصود. لسبب ما، عادة ما تكون النتيجة، ما لم يتم تلبية حالة محددة للغاية.

هنا هو سيناريو مثال:

أدخل وصف الصورة هنا

يتم طلب الكائنات

في شجرة، مع كل عقدة ممرات 100 بكسل. يتم التعيين من كل عقدة إلى الوالد من العقدة الأولى. العناصر هي مشبوهة لأنها أمرت، على سبيل المثال 1 هو الوالد من 2 و 4، 2 هو الوالد 3 وما إلى ذلك ...

  • node0 هو في إحداثيات محلية 0،0 في والديها، لذلك منطقيا، ورسم خرائط موقف العقدة 0 إرجاع 0،0
  • node1 ولكن لا يعود 100، 100، بدلا من ذلك إرجاع 200، 200
  • node2 و 3 تتصرف بشكل مختلف، هذه المرة يتم زيادة القيم بشكل صحيح من قيمة العقدة السابقة (غير الصحيحة) إلى 300 و 300 و 400 و 400 على التوالي
  • node4 ترجع 300، 700 على الرغم من أنها ليست سوى 100 بكسل أدناه العقدة 2
  • node5 - 200، 1000
  • node6 - 300، 700 - هو أقل من العقدة 5 ولكنها تظهر قيمة ذ انخفاض
  • node7 - 200، 1400 - 100 بكسل أقل من العقدة 6 عودة 700 بكسل إضافي قيمة Y

يبدو أن هذا الخرائط لا يفعل ما افترض أنه يفعل ذلك، والذي ينتج عنه تنسيق، وهو مطلق على الكائن الذي يتم تعيينه إلى، على سبيل المثال الركن الأيسر الأيسر من العقدة 0. والتي يجب أن تنتج القيم المتوقعة:

  • node0 0، 0
  • node1 100، 100
  • node2 200، 200
  • node3 300، 300
  • node4 200، 400
  • node5 100، 500
  • node6 200، 600
  • node7 100، 700

يبدو أن كل طفل جديد يدور على مستوى معين ينطلق. أي فكرة عما يجري هنا؟

هل كانت مفيدة؟

المحلول

بعد التحقيق في طريقة mapToItem، انتهت أنها ليست الأداة المناسبة لهذا المنصب، لذلك كتبت الخاصة بي.

giveacodicetagpre.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top