কম্পিউটার

2D সমতলের একটি বিন্দু থেকে C++ রেখা পর্যন্ত লম্বের পাদদেশ খুঁজুন


বিবেচনা করুন আমাদের 2D সমতলে একটি বিন্দু P আছে এবং একটি রেখার সমীকরণ রয়েছে, কাজটি হল P থেকে রেখা পর্যন্ত লম্বের পাদদেশ খুঁজে বের করা।

সরলরেখার সমীকরণ হল ax + by + c =0। P এর মধ্য দিয়ে যাওয়া রেখার সমীকরণ এবং রেখার লম্ব। P এবং Q এর মধ্য দিয়ে যাওয়া রেখার সমীকরণ হবে ay – bx + d =0। এছাড়াও P(x1, y1), এবং Q(x2, y2), তাই আমরা সমীকরণে P-এর স্থানাঙ্ক রাখি।

ay 1−bx 1+d=0, তাই d=bx1−ay 1

এছাড়াও Q হল প্রদত্ত রেখা এবং P এবং Q এর মধ্য দিয়ে যাওয়া রেখার ছেদ, তাই আমরা এই দুটি সমীকরণের সমাধান খুঁজে পাব৷

ax+by+c=0, ∧ay−bx+(bx1−ay 1)=0

a, b, c, d সবই পরিচিত, আমরা এই সূত্রটি ব্যবহার করে খুঁজে পেতে পারি −

$$\frac{x-x_{1}}{a}=\frac{y-y_{1}}{b}=\frac{f-(ax_{1}+by_{1}+c)}{ a^{2}+b^{2}$$

উদাহরণ

#include<iostream>
using namespace std;
void getFootCoordinate(double a, double b, double c, double x1, double y1) {
   double p = -1 * (a * x1 + b * y1 + c) / (a * a + b * b);
   double x = p * a + x1;
   double y = p * b + y1;
   cout << "(" << x << ", " << y <<")";
}
int main() {
   double a = 0.0;
   double b = 1.0;
   double c = -2;
   double x1 = 3.0;
   double y1 = 3.0;  
   cout << "The coordinate is: ";
   getFootCoordinate(a, b, c, x1, y1);
}

আউটপুট

The coordinate is: (3, 2)

  1. C++ ব্যবহার করে একটি গ্রিডে এক পয়েন্ট থেকে অন্য পয়েন্টে যাওয়ার উপায়ের সংখ্যা খুঁজুন

  2. C++ এ এর ​​ভাজক থেকে সংখ্যা খুঁজুন

  3. C++ এ 2-D সমতলে একটি বিন্দুর আয়না চিত্র খুঁজুন

  4. C++ এ একটি লাইনের মধ্যবিন্দু খুঁজে বের করার জন্য প্রোগ্রাম