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