আমি কীভাবে বিশ্বব্যাপী স্থানাঙ্ক স্থান থেকে স্থানীয় স্থানে রূপান্তর করব?


13

নামের একটি সত্তা দেওয়া EntityA, আমি একটি স্থানীয় স্থানাঙ্ক স্থান নির্ধারণ করতে চাই, যেখানে অবস্থানটি EntityAমূল, এটির শিরোনাম ভেক্টরটি X অক্ষ, এবং শিরোনাম ভেক্টরের সাধারণটি Y অক্ষ:

একই চিত্রাঙ্কন বিবরণ

তাদের বিশ্বব্যাপী স্থানাঙ্কগুলি দেওয়া, আমি কীভাবে অন্য EntityAস্থানীয় সত্তার অবস্থান স্থানীয় স্থানে খুঁজে পাব?

একটি উদাহরণ: EntityAএর গ্লোবাল অবস্থান (50,50), এবং এর EntityB(80,90)। তাহলে এর অবস্থান EntityBমধ্যে EntityAএর স্থানীয় স্থান?

সম্পাদনা: গণিতে সহজে যান the

উত্তর:


21

ঠিক আছে, সুতরাং ধরে নিলাম যে আপনি জানেন যে object অবজেক্ট এটির জন্য ওয়ার্ল্ড ট্রান্সফর্মেশন ম্যাট্রিক্স কী, আপনার কেবল সেই ম্যাট্রিক্সের বিপরীতটি তৈরি করতে হবে এবং আপনার যা প্রয়োজন তা আপনার কাছে থাকবে।

ধরুন গ্লোবাল স্পেসে পৌঁছানোর জন্য বস্তুর এটির ঘূর্ণন, স্কেলিং এবং অনুবাদ ম্যাট্রিকগুলি যথাক্রমে হ'ল আর , এস এবং টি । আপনি এগুলি একসাথে পছন্দ করে নিন

এস * আর * টি = ডাব্লু

এখন, ডাব্লু নিন এবং এর বিপরীত ডাব্লু 1 -1 কোনওভাবে সন্ধান করুন। একটি ম্যাট্রিক্সের বিপরীতটি হ'ল ম্যাট্রিক্স যা ঠিক বিপরীত হয় does এর বিপরীত সহ ম্যাট্রিক্সের পণ্যটি সর্বদা পরিচয় ম্যাট্রিক্স হয়।

ডাব্লু * ডাব্লু ^ -1 = আমি

এভাবে W ^ -1 = I / W ;

এই দৃশ্যে বিশ্ব রূপান্তর হিসাবে এখন এই বিপরীতমুখী ম্যাট্রিক্স প্রয়োগ করুন এবং প্রতিটি বস্তু আপনার পছন্দ অনুযায়ী স্থানাঙ্কে থাকবে।

ম্যাট্রিক্স গুণনের জন্য, এই পৃষ্ঠাটি দেখুন। আইডেন্টিটি ম্যাট্রিক্সের জন্য এটি দেখুন

এখানে আরও একটি পৃষ্ঠা রয়েছে যা আপনাকে ডাব্লু বানাতে হবে এমন ম্যাট্রিকগুলি দেয় ।

উপরের প্রশ্নে আপনাকে x অক্ষে 50 হিসাবে অনুবাদ করা উচিত, y অক্ষরে 50 হিসাবে অনুবাদ করা উচিত, অক্ষের মধ্যে কোনও স্কেলিং নেই এবং আপনি যে ঘূর্ণনটি নির্দিষ্ট করেননি।


উত্তরের জন্য ধন্যবাদ তবে আমি আসলে এর অনেক কিছুই বুঝতে পারি না। গণিত খুব ভাল না। একটি ম্যাট্রিক্স সঙ্গে হয়? 'রোটেশন, স্কেলিং এবং অনুবাদ ম্যাট্রিক্স' বলতে কী বোঝ?
আভিভ কোহন

একটি ম্যাট্রিক্স হ'ল আন্তঃসম্পর্কিত সংখ্যা বা বস্তুর সেট উপস্থাপনের একটি খুব কমপ্যাক্ট উপায়। কম্পিউটার গ্রাফিক্সে, তারা গণনা করতে ব্যাপকভাবে ব্যবহৃত হয়। ঘূর্ণন অনুবাদ এবং স্কেলিং ম্যাট্রিকেস দ্বারা আমি কী বুঝি তা উত্তরের শেষ লিঙ্কটি পরীক্ষা করে দেখুন, আপনাকে এগুলি সমস্তই পড়তে হবে। অন্যথায় আপনি আপনার সমস্যা সমাধানের জন্য ashes999 এর পদ্ধতিটি ব্যবহার করতে পারেন, তবে এটি যদি নেই, সত্তাএর আবর্তন এবং স্কেলিংয়ের জন্য অ্যাকাউন্ট নয়।
হালকা স্পার্ক

9

আমি অতীতে ম্যাট্রিক্সের চেয়ে ত্রিকোণমিতি দিয়ে এটি করেছি (আমি একটি ম্যাট্রিক্স নুব)। অ্যাশেস 999 এর উত্তর অর্ধেকদিকই রয়েছে, আপেক্ষিক ভেক্টরটি পান, তারপরে এন্টিএর কোণটির বিপরীত দ্বারা ঘোরান।

   relativeX = B.x - A.x
   relativeY = B.y - A.y
   rotatedX = Cos(-Angle) * relativeX - Sin(-Angle) * relativeY
   rotatedY = Cos(-Angle) * relativeY + Sin(-Angle) * relativeX

2
+1 ম্যাট্রিক্সের চেয়ে ত্রিকোণমিতিটি আরও অনেক বেশি স্বজ্ঞাত এবং ব্যবহারযোগ্য।
রামচন্দ্র আপ্তে

স্কেল কি? আপনি কখন এটি প্রয়োগ করবেন?
লামাডেডন

দুঃখিত, ঘোরা মানে।
লামাডেডন

6

আমাকে হালকা স্পার্কের উত্তর এবং এলিয়টের জবাবের মধ্যে কোথাও কিছু দেওয়ার চেষ্টা করব, কারণ আমি যা পড়েছি তা থেকে আপনি সত্যিই কোনও অ্যালগরিদম অনুসরণ করার জন্য সন্ধান করছেন এবং কেবল গণিতই আপনাকে টস করেছেন না।

সমস্যা বিবৃতি: প্রদত্ত আপনি একটি অবস্থান আছে A (50, 50)এবং একটি শিরোনাম (যেহেতু আপনি এক প্রদান না, আমি যেমন জাহির করব y = 2 * x + 25), এটি যেখানে B (80, 90)আপেক্ষিক Aএবং শিরোনাম নেই।

আপনি যা করতে চান তা আসলে মোটামুটি সোজা। 1) Aআপনার সিস্টেমের উত্স পুনরায় স্থানান্তর । এর সহজ অর্থ হ'ল স্থানীয়-থেকে- Aমানগুলি বিশ্বব্যাপী অবস্থানের মানগুলি বিশ্বব্যাপী অবস্থানের মানকে বিয়োগমান হতে চলেছে AAহয়ে (0, 0)এবং Bহয়ে (30, 40)

1.1) শিরোনামটি সরানোও দরকার। এটি করণটি আসলেই খুব সহজ, কারণ স্থানীয়-থেকে- Aপদগুলিতে y- ইন্টারসেপ্ট সর্বদা 0 থাকে এবং slালু পরিবর্তন হবে না, তাই আমাদের y = 2 * xশিরোনাম হিসাবে রয়েছে।

2) এখন আমাদের এক্স অক্ষের পূর্বের শিরোনামটি প্রান্তিককরণ করা দরকার। তাহলে আমরা এটা কিভাবে করব? সবচেয়ে সহজ উপায়, ধারণাটিগতভাবে এটি করার জন্য হ'ল এক্স, ওয়াই কো-অর্ডিনেটস থেকে পোলার কো-অর্ডিনেট সিস্টেমে রূপান্তর। পোলার কো-অর্ডিনেট সিস্টেমে জড়িত থাকে R, কোনও অবস্থানের দূরত্ব এবং phiএক্স-অক্ষ থেকে ঘোরার একটি কোণ। Rহিসাবে সংজ্ঞায়িত করা হয় sqrt(x^2 + y^2)এবং phiহিসাবে সংজ্ঞায়িত করা হয় atan(y / x)। আজকাল বেশিরভাগ কম্পিউটারের ভাষা এগিয়ে যায় এবং একটি atan2(y, x)ফাংশন সংজ্ঞায়িত করে যা ঠিক একই জিনিসটি করে atan(y/x)তবে এমনভাবে করে যে আউটপুটটি 0 ডিগ্রি থেকে 360 ডিগ্রির পরিবর্তে -180 ডিগ্রি থেকে 180 ডিগ্রি পর্যন্ত হয়, তবে হয় কাজ করে।

Bএইভাবে হয় R = sqrt(30^2 + 40^2) = sqrt(2500) = 50, এবং phi = atan2(40, 30) = 53.13ডিগ্রি।

একইভাবে, শিরোনাম এখন পরিবর্তন হয়। এটি ব্যাখ্যা করতে কিছুটা জটিল, তবে এটি শিরোনাম, সংজ্ঞা অনুসারে, সর্বদা আমাদের উত্সের মধ্য দিয়ে যায় A, আমাদের Rউপাদান সম্পর্কে চিন্তিত হওয়ার দরকার নেই । শিরোনাম সবসময় phi = Cযেখানে Cধ্রুবক হয় সেই আকারে হতে চলেছে । এই ক্ষেত্রে, phi = atan(2 * x / x) = atan(2) = 63.435ডিগ্রি।

এখন, আমরা স্থানীয়টি টু- Aসিস্টেমের শিরোনামটি X- অক্ষে স্থানান্তরিত করতে সিস্টেমটি ঘোরান । অনেক যখন আমরা সরানো মত Aসিস্টেম উৎপত্তি, সব আমরা যা করতে হবে বিয়োগ হয় phiসব থেকে শিরোনামের phiসিস্টেমের মধ্যে মান। সুতরাং phiএর Bহয়ে 53.13 - 63.435 = -10.305ডিগ্রী।

শেষ অবধি, আমাদের মেরু সমবায় থেকে আবার এক্স, ওয়াই কো-অর্ডিনেটে রূপান্তর করতে হবে। রূপান্তরটি করার সূত্রটি হ'ল X = R * cos(phi)এবং Y = R * sin(phi)। জন্য Bতাই আমরা পেতে X = 50 * cos(-10.305) = 49.2এবং Y = 50 * sin(-10.305) = 8.9, তাই Bস্থানীয় পারেন- মধ্যে Aসমন্বয় পাসে হবে (49,9)

আশা করি এটি সহায়তা করে এবং আপনি অনুসরণ করতে গণিতে যথেষ্ট হালকা।


1

আপনাকে গ্লোবাল স্পেস (x1, y1, θ) এ সত্তা A এর পোজটি জানতে হবে, যেখানে θ হ'ল x অক্ষের সাথে সম্পর্কিত ient

বিশ্বব্যাপী স্থানাঙ্ক (x2, y2) থেকে সত্তাবিটির অবস্থানকে স্থানীয় স্থানাঙ্ক (x2 ', y2') এ রূপান্তর করতে:


  1. এক্সপ্রেশন ব্যবহার করে

গ্লোবাল টু লোকাল

x2' = (x2-x1)cosθ + (y2-y1)sinθ

y2' = -(x2-x1)sinθ + (y2-y1)cosθ

স্থানীয় থেকে গ্লোবাল

x2 = x2'cosθ - y2'sinθ + x1

y2 = x2'sinθ + y2'cosθ + y1

  1. ম্যাট্রিকেস ব্যবহার:

    R = [cosθ   -sinθ
    
         sinθ    cosθ]
    
    A = [x1
         y1]
    
    B_global = [x2
                y2]
    
    B_local = [x2' 
               y2']
    

গ্লোবাল টু লোকাল

    B_local = inv(R) x (B_global - A)

স্থানীয় থেকে গ্লোবাল

    B_global = R x B_local + A

-2

এটিকে সহজভাবে বলতে গেলে সত্তা বিতে সত্তা এ সম্পর্কিত একটি রেফারেন্সের প্রয়োজন হবে তখন আপনাকে সত্তার A অবস্থান এবং সত্তা বি এর অবস্থানের মধ্যে পার্থক্য পাওয়া উচিত।


3
এটি কীভাবে প্রশ্নের উত্তর দেয় আমি বুঝতে পারি না।
আনকো
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.