Dự kiến ​​quỹ đạo của một chiếc xe?


8

Trong trò chơi tôi đang phát triển, tôi phải tính toán nếu phương tiện của tôi (1) mà trong ví dụ đang đi về phía bắc với tốc độ V, có thể đạt được mục tiêu của nó (2) không. Ví dụ mô tả vấn đề từ trên đỉnh:

nhập mô tả hình ảnh ở đây

Thực tế có hai trường hợp có thể xảy ra: V là hằng số (dẫn đến quỹ đạo 4, vòng cung hình tròn) hoặc phương tiện có khả năng tăng tốc / giảm tốc (quỹ đạo 3, vòng cung xoắn ốc).

Tôi muốn biết liệu có một cách đơn giản để xác minh xem chiếc xe có thể đạt được mục tiêu hay không (trái ngược với việc vượt quá nó) . Tôi đặc biệt quan tâm đến quỹ đạo số 3, vì tôi là điều duy nhất tôi có thể nghĩ đến là tích hợp vị trí của chiếc xe theo thời gian.

EDIT: tất nhiên chiếc xe luôn có khả năng bẻ lái, nhưng bán kính lái thay đổi theo tốc độ của nó (nghĩ đến một lực g bên tối đa).

EDIT2: cũng lưu ý rằng (vì hầu hết các phương tiện trong đời thực) cũng có bán kính lái tối thiểu cho những người trong trò chơi).

Câu trả lời:


15

Nếu bạn có thể thay đổi tốc độ của mình (do đó là góc lái của bạn), bạn sẽ luôn tìm ra giải pháp, bắt đầu từ sự suy biến trong đó thực thể gần như dừng quay trong một vòng tròn nhỏ cho đến khi chỉ mục tiêu.

Nếu bạn không thể thay đổi tốc độ của mình, bạn có thể nghĩ về các khu vực hoặc bóng tối không thể tiếp cận mà bạn không thể tiếp cận ngay cả khi sử dụng tay lái tốt hơn, nếu mục tiêu nằm trong những khu vực bạn không thể tiếp cận (trừ khi "vượt quá", bạn thậm chí có thể vượt qua chúng và đặt chúng ra khỏi khu vực bóng tối).

Chỉ đạo tốt nhất của bạn cho phép bạn rẽ trái / phải trên một vòng cung của vòng tròn, cho phép bạn vẽ một chu vi hoàn chỉnh:

bóng tối

Như bạn có thể thấy những gì bên trong một trong hai vòng tròn không thể tiếp cận trực tiếp.

Một vật có khối lượng m đang lái trên một đường cong có bán kính cong r , trải qua một lực ly tâm rõ ràng xuyên tâm gây ra bởi hành vi quán tính của cơ thể, bằng:

Fc = mV ^ 2 / r

Trong đó V là tốc độ của cơ thể (chiều dài của vectơ vận tốc); là gia tốc của cơ thể do một lực:

a = F / m

gia tốc của chúng tôi là:

a = V ^ 2 / r

Nếu chúng ta nói rằng am là gia tốc tối đa, chúng ta có được rằng:

rm = V ^ 2 / sáng

Trong đó rm là bán kính tối đa sử dụng gia tốc cực đại.

Khi bạn muốn kiểm tra xem các ô trong P di chuyển ở tốc độ V có thể đạt được mục tiêu trong T bạn phải:

1) tính C1C2 là:

c1 và c2

2) kiểm tra khoảng cách miminum của P từ C1C2 như sau:

kiểm tra bán kính

Nếu d lớn hơn rm, điều này có nghĩa là T ở bên ngoài cả hai bóng và sau đó có thể tiếp cận được bằng phương tiện chỉ cần điều chỉnh tay lái theo ràng buộc lái. (nói chính xác hơn là có một đường dẫn dưới các ràng buộc cho phép hàm khoảng cách giữa TP giảm đi một cách đơn điệu)

[CẬP NHẬT]

Nếu nó có thể thay đổi vận tốc, luôn luôn có thể để có được một vòng cung (tức là vận tốc / bố trí hình tròn vài accelleration) mà đi từ P đến T . Điều này là có thể bởi vì bán kính trở thành một mức độ tự do thực sự.

Đây là một công trình có thể:

đường dẫn đích

Đường màu đen là trục mà tâm của các vòng tròn có thể nằm: nó vuông góc với mặt hiện tại của xe và đi qua tâm xoay của nó.

Đoạn màu xanh lá cây đại diện cho đường thẳng vuông góc với đường nối giữa tâm xe với mục tiêu và đi qua giữa khoảng cách đó.

Đường màu xanh lá cây vượt qua màu đen chính xác ở trung tâm của vòng cung mong muốn. Độ dài của đoạn màu cam cho chúng ta biết bán kính quay có thể đạt được bằng cách điều chỉnh vận tốc và quay ở mức tối đa hoặc điều chỉnh cả vận tốc và hướng lái để ở dưới ràng buộc


Cảm ơn bạn đã dành thời gian để viết câu trả lời chi tiết này (+1). Tôi cần "nghiên cứu" nó một chút, nhưng ngay từ lần đọc đầu tiên, dường như câu nói đầu tiên của bạn "bạn sẽ luôn tìm ra giải pháp ..." không nhất thiết là đúng: sự tồn tại của bán kính lái tối thiểu ngụ ý rằng luôn có sẽ là một "vùng bóng tối" mà giới hạn của nó sẽ xác định một loại "quỹ đạo" xung quanh mục tiêu ... Hay tôi sai? [Đây thực sự là vấn đề thực sự đối với tôi, vì tính toán cho V = k rất đơn giản ...]
mac

@mac nếu mục tiêu không ở cùng một vị trí trên xe của bạn, bạn có thể giảm tốc độ để rmin tạo ra một vòng tròn đủ nhỏ để không chứa mục tiêu. Khi bạn ở trong tình trạng này, bạn có thể đặt vận tốc của mình để mục tiêu nằm chính xác theo chu vi của bạn!
FxIII

@Fxill - Một lần nữa, cảm ơn bạn đã cập nhật, nếu có thể, tôi sẽ cho bạn +1 thứ hai cho sự cống hiến! :) Tuy nhiên, tôi không hiểu từ lời giải thích của bạn về cách bạn tính cả gia tốc và vận tốc ban đầu: toàn bộ vấn đề phụ thuộc vào thực tế là theo thời gian vận tốc sẽ thay đổi (cung tròn). Tôi ấn tượng đơn giản là có thể không đủ không gian để xe đủ chậm / có bán kính đủ nhỏ để chặn mục tiêu ... hay tôi sai?
mac

@mac cho phép nói am = 1 thì rm = v ^ 2; nếu d = | PT | > 0 bạn có thể chọn v ^ 2 <d / 2; if d = 0 có nghĩa là P = T vì vậy bạn đã đạt được mục tiêu của mình ...
FxIII

hahaha không có nghi ngờ rằng nó hoạt động! : D
FxIII
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.