ซูมเข้า / ออกแผนที่ตอบสนองพื้นเมืองตามรัศมีเป็นกม. / ไมล์

Aug 18 2020

ฉันมีข้อกำหนดในแอปตอบกลับโดยกำเนิดของฉันซึ่งหากผู้ใช้ระบุตัวเลขซึ่งจะเป็นจำนวนกิโลเมตรหรือไมล์ (เช่น 5 หรือ 10) แผนที่ควรซูมเข้า / ออกโดยแสดงพื้นที่ที่มีรัศมีเป็นอินพุต จำนวน.

ฉันจะเปลี่ยนค่า latitudeDelta และ longitudeDelta ตามหมายเลขอินพุตเหล่านั้นได้อย่างไร

กรุณาช่วยฉันออกไป. ขอบคุณล่วงหน้า.

คำตอบ

MuhammadJunaid Aug 18 2020 at 17:11

latitudeDelta คือจำนวนองศาที่มองเห็นได้บนหน้าจอ ประมาณ 111.045 KM จะเท่ากับ 1 องศาเสมอดังนั้นคุณสามารถคำนวณ latitudeDelta ของพื้นที่ที่มองเห็นได้ในปัจจุบันใน KM ด้วยสิ่งนี้

latitudeDelta = เส้นผ่านศูนย์กลาง (UserEntered) / 111.045

นี่คือสมมติว่าหน้าจออยู่ในโหมดแนวตั้งดังนั้น latitudeDelta จึงเป็นค่าที่ใหญ่กว่า ถ้าไม่มีให้ใช้ longitudeDelta แทน

สำหรับการอัปเดตแผนที่คุณสามารถตั้งค่าตัวแปรสถานะสำหรับ longitudeDelta และ latitudeDelta และเมื่อผู้ใช้ป้อนค่าคุณสามารถคำนวณจากสูตรด้านบนและอัปเดตตัวแปรสถานะเหล่านี้และแผนที่จะอัปเดตในที่สุด