[英]Convert X Coordinate from one Resolution to another
通常我會這樣做以將一種分辨率轉換為另一種分辨率:
int newX = (x / oldResolutionX) * newResolutionX;
但是這次我不能使用它,我也無法理解數學(從來沒有真正擅長數學,請原諒我)。 無論如何,我的分辨率為1280x720,我想將這樣的點轉換為(720/360): 新分辨率的圖片
寬度是854,高度是720,因此我不必對y坐標進行轉換。 但是,這是(對我來說)棘手的部分:0並不是實際的0。X始於-107,結束於747。你們能向我解釋一下我如何將1280x720的(720/360)轉換為該分辨率嗎? 在此先感謝您,並感謝您數學不好。
因此,您需要從[0 ... 1280]到[-107 ... 747]的線性映射,而y保持不變。
int newX = (int)((x / 1280.0) * 854.0) -107
那么,這里發生了什么?
一些說明:
.0
用於強制浮點類型。 (int)
將其轉換回整數
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.