Mudlet: Permintaan Fitur: Mudlet Ingat jumlah zoom mapper di antara sesi.

Dibuat pada 6 Mar 2019  ·  10Komentar  ·  Sumber: Mudlet/Mudlet

Ringkasan singkat masalah / Deskripsi fitur yang diminta:

Setiap kali saya menutup dan meluncurkan kembali Mudlet, saya memperbesar mapper saya ke preferensi yang saya inginkan menggunakan roda mouse.

jika Anda mengarahkan kursor mouse ke mapper dan kemudian menggunakan roda mouse, Anda dapat memperbesar atau memperkecil mapper.

Yang benar-benar saya sukai adalah jika Mudlet dapat mengingat jumlah zoom terakhir yang saya gunakan di antara sesi.

Jika Anda ingin menjadi BENAR-BENAR mewah, Anda dapat mengingat pengaturan zoom per Area. Itu sebenarnya akan menjadi fitur utama!

Karena beberapa area Anda hanya benar-benar menginginkan pengaturan zoom yang berbeda.

Semua 10 komentar

Saya memperkirakan pengaturan zoom per area menjadi sangat menyakitkan karena itu akan mengatur ulang antar area pada pertama kalinya dan seterusnya. Mengingat zoom antara restart akan menyenangkan, sementara itu hanya melemparkan https://wiki.mudlet.org/w/Manual :Mapper_Functions#setMapZoom ke dalam skrip adalah solusi sepele untuk itu!

:bulb: Jangan lupa bahwa ada Data Pengguna Area saat ini sehingga memungkinkan untuk menyimpan data per Area - lihat setAreaUserData(...) dan getAreaUserData(...) !

Permintaan lama, tapi tidak cocok.
Saya setuju bahwa setMapZoom yang dikombinasikan dengan setAreaUserData dan getAreaUserData akan membantu, namun tanpa "getMapZoom" atau cara serupa untuk "mendapatkan" tingkat zoom saat ini, itu akan dikendalikan secara sewenang-wenang atau manual. Jika saya dapat mendeteksi perubahan pada tingkat zoom, lalu menyimpannya di areaUserData, lalu mengaturnya setiap kali peta dimuat atau area berubah, itu akan menjadi sempurna

Sayangnya, tingkat zoom peta dikendalikan dalam lebih dari satu cara yang tidak berkomunikasi satu sama lain. di peta 2D Anda memiliki roda mouse (vertikal) dan setMapZoom() yang saya kira dapat dibuat untuk bekerja satu sama lain. Namun mapper 3D adalah sarapan anjing yang tepat. Anda memiliki roda mouse (vertikal) dan kontrol "Skala" (penggeser paling kiri) yang sekali lagi bekerja bersama - tetapi ada tiga kontrol lain yang mengatur posisi koordinat mata/kamera dan yang secara kolektif {dalam urutan kiri ke kanan: z, y, x!} (melalui sqrt(x^2 + y^2 + z^2) yaitu rumus terkenal Pythagorus) juga mengontrol zoom efektif. mengerjakan efek keseluruhan saat ini tidak dapat diprediksi ... AFAICT

hahahaha saat ini saya hanya menggunakan 2D mapper sehingga akan bekerja dengan baik untuk saya :)

pemetaan 3d?? saya bahkan tidak tahu tentang itu: saya juga hanya menggunakan peta 2d.
(membuat catatan untuk menyelidiki mapper 3d :D)

tetapi dengan metode "dapatkan" tambahan untuk tingkat zoom saat ini (untuk 2d) dan untuk posisi dan skala untuk 3d, saya yakin ppl akan dengan cepat membuat area memiliki zoom dan sudut pandang yang persisten :)

Mungkin perlu acara untuk roda mouse jika tidak ada juga.

(ini bukan masalah besar bagi saya, karena hanya membutuhkan waktu sekitar 2 detik untuk menggulir area apa pun yang saya masukkan ke skala yang benar, dan saya mungkin bisa bermain-main dengan setMapZoom untuk mempertahankan ini, hanya akan merasa "kikuk" harus mengatur itu secara manual, dan tidak hanya bertahan apa pun yang saya perbesar hingga terakhir kali saya mengunjungi area itu)

.... hanya akan merasa "kikuk" harus mengaturnya secara manual, dan tidak hanya bertahan apa pun yang saya perbesar hingga terakhir kali saya mengunjungi daerah itu

Jadi Anda ingin:

  • sysMapperAreaViewedEvent yang akan menyala saat area diubah (mengembalikan ID area lama dan baru) dan untuk itu diaktifkan tepat sebelum tampilan dialihkan dari area lama.
  • sesuatu untuk mengembalikan mode tampilan saat ini {tampilan 2D/3D, koordinat pusat tampilan saat ini, peta 2D (hanya zoom) atau peta 3D (pengaturan zoom/skala dan koordinat posisi mata)}

:pemikiran:

Mungkin juga membutuhkan sarana Lua API untuk mengatur semua detail itu juga ...

Ya untuk sysMapperAreaViewedEvent dan pengembaliannya.
(diperlukan untuk mendeteksi perubahan, simpan zoom lama untuk area lama, ambil zoom baru untuk area baru)

Untuk mendapatkan semua properti "mode tampilan", saya tidak 100% yakin Anda harus melakukan kemiringan penuh pada awalnya. Saat ini hanya ada satu setter "setMapZoom(zoom)", yang berarti seseorang dapat memulai dengan pengambil "getMapZoom()". (artinya ini hanya akan berfungsi "dengan benar" untuk mode tampilan 2D pada awalnya.

Ini tentu saja dapat diperluas dengan dukungan 3d, granularitas area, menyimpan tingkat zoom di peta itu sendiri, atau membangun persistensi ke dalam aplikasi. Namun ini mungkin bisa menunggu sampai ada permintaan?
(biasanya saya akan menganjurkan "melakukan hal-hal dengan benar" di awal, namun saya tidak tahu ukuran permintaan untuk 3d, dan saya memperkirakan mengaktifkan getter untuk fitur-fitur itu secara logis akan mendorong permintaan setter untuk mengubah mode dan properti mode tampilan)

(Saya tidak tahu biaya overhead untuk menyiapkan fungsi baru di Mudlet, meskipun saya dapat membayangkan bahwa itu cukup sedikit (kode, pengujian, dokumentasi dll). Seperti yang dinyatakan, ini bukan fitur yang sangat dibutuhkan bagi saya. ingin mulai melihat kode sendiri, berpotensi menjadi motivator bagi saya untuk mendapatkan coding lagi :D) (Saya harus mengatakan saya benar-benar mencintai Mudlet. Ini telah membawa kegembiraan lumpur kembali ke saya)

Saya pikir pada titik ini masuk akal bagi kita untuk hanya membangunnya sebagai fitur Mudlet, alih-alih membuat semua orang mengkode ulang sendiri. Kita bisa menyimpan peta zoom per-area sebagai fitur userdata area.

Saya memperkirakan pengaturan zoom per area menjadi sangat menyakitkan karena itu akan mengatur ulang antar area pada pertama kalinya dan seterusnya.

Jika Anda memasuki area baru untuk pertama kalinya yang belum memiliki pengaturan zoom, mulailah dengan area sebelumnya.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat