سؤال

لدي نقطة P ، و 2 شرائح خط في طائرة ثنائية الأبعاد. النقطة P هي موقع للعرض من حيث تتطلع الكاميرا نحو شرائح الخط. أرغب في التحقق مما إذا كان الخط 1 خطًا مخفيًا جزئيًا أو بالكامل خلف السطر 2 ، عند النظر من النقطة P.

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

المحلول

أعتقد أن السؤال هو ما إذا كان السطر الثاني "ملثمين" حسب السطر الأول.

دعك نقول لك نقطة الكاميرا هي C ، وأقاطعك هي A1 و A2 و B1 و B2.

أود حساب المنتجات المتقاطعة CA1XCB1 و CA2XCB2. تمنحك العلامة ما إذا كانت النقطة إذا كانت نقطة B1 على اليسار أو يمين خط CA1. يعتمد ذلك على كيفية توجيه مثلثاتك CA1A2 و CB1B2 (يجب أن تكون موجهة كما هي ، فهي عديدة للقيام بذلك).

يمكنك بعد ذلك استخدام العلامة لمعرفة ما إذا كنت في الحالات التالية:

  • Ca1xcb1 سلبي أو Ca2xcb2 موجب ، ثم مرئي جزئيًا
  • العكس ، ثم مخبأة.

يمكنك أيضًا حساب CA1XCB2 و CA2XCB1 لغرامة الحالات المحببة.

نصائح أخرى

تعد إجابة Slurdge بداية جيدة ، لكنها أكثر تعقيدًا من ذلك.

إذا كان الجزء 2 من الخط أقرب إلى C من الجزء 1 ، فقد لا يزال مرئيًا ، على سبيل المثال

A1-------A2

  B1-B2


   C

هنا B1 و B2 هما "داخل" قطاع A1A2 ، لكنهما غير مخفيين.

أصعب واحدة في العمل هي إذا كان B1 "بين" A1 و A2 ، ولكن أقرب إلى الكاميرا ، في حين أن B2 ليس بين "A1 و A2 ، ولكن أبعد من الكاميرا:

             B2

A1-----A2
 B1


   C

يمكن لـ B1B2 قصاصة شريحة الخط ، مما يجعل جزءًا صغيرًا من B1B2 مخفيًا (أو ربما لا!). أعتقد أنه سيتعين عليك العثور على تقاطع A1A2 و B1B2 للتحقق مما إذا كان هذا يحدث بالفعل.

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