Halaman ini menjelaskan format angka mana yang ditemukan dalam berbagai rute dan file kereta api dan bagaimana mematuhinya.
■ Isi konten
■ 1. Penjelasan
Dalam file rute dan kereta, Anda akan selalu menemukan angka seperti bilangan bulat/integer dan angka floating-point , terkadang juga yang lain. Angka-angka ini harus mengikuti format tertentu, yang dijelaskan di bagian berikut.
Ada dua metode penguraian untuk angka: Strict dan Loose. Metode Ketat/Strict adalah tipe yang sangat ketat yang tidak meninggalkan ruang untuk membuat kesalahan seperti salah ketik. Metode ini digunakan dalam semua format file baru. Metode Loose adalah model penguraian jadul yang diperlukan untuk kompatibilitas dengan materi yang jadul. File yang berbeda seperti yang disajikan pada halaman Mengembangkan openBVE menunjukkan model mana yang digunakan. Perhatikan bahwa kapan pun model Loose diizinkan, Anda juga dapat menggunakan format Strict karena Strict membentuk subset dari Loose.
■ 2. Integers
Strict: Diizinkan di urutan apa pun dari setidaknya satu digit desimal dalam rentang dari 0 hingga 9 (U+0030 - U+0039), secara opsional dapat diawali dengan tanda negatif (U+002D). Urutan karakter yang dihasilkan dapat mencakup spasi di depan atau di belakang.
Examples for Strict integers: | |
▶ |
0 123 -98 |
Loose: Semua spasi dihilangkan dari urutan karakter terlebih dahulu. Kemudian, urutan karakter yang tersisa (abcde) diinterpretasikan menurut model Strict. Jika ini gagal membuat nomor yang valid, karakter terakhir dikeluarkan dari urutan (abcd) dan kemudian, urutan diuji lagi. Ini berlanjut sampai nomor yang valid dihasilkan atau sampai tidak ada karakter yang tersisa, setelah itu urutan karakter ditentukan sebagai angka yang tidak valid.
Examples for Loose integers: | |
▶ |
123 77 11 -987x456 |
The interpreted integers from the preceding examples are: | |
▶ |
123 7711 -987 |
■ 3. Floating-point numbers
Strict: Diizinkan di urutan apa pun dari setidaknya satu digit desimal dalam kisaran dari 0 hingga 9 (U+0030 - U+0039), secara opsional dapat disisipkan dengan satu pemisah desimal dalam bentuk titik (U+002E) , secara opsional dapat diawali dengan tanda negatif (U+002D). Urutan karakter yang dihasilkan dapat mencakup spasi di depan atau di belakang.
Examples for Strict floating-point numbers: | |
▶ |
123 123. 123.0 123.456 0.456 .456 -123.456 |
Loose: Semua spasi dihilangkan dari urutan karakter terlebih dahulu. Kemudian, urutan karakter yang tersisa (abcde) diinterpretasikan menurut model Strict. Jika ini gagal untuk membuat nomor yang valid, karakter terakhir dikeluarkan dari urutan (abcd) dan kemudian, urutan diuji lagi. Ini berlanjut sampai nomor yang valid dihasilkan atau sampai tidak ada karakter yang tersisa, setelah itu urutan karakter ditentukan sebagai angka yang tidak valid.
Examples for Loose floating-point numbers: | |
▶ |
-123 . 456 987,333 |
The interpreted floating-point numbers from the preceding examples are: | |
▶ |
-123.456 987 |
■ 4. Waktu
Legacy: Diizinkan jika salah satu dari urutan berikut:
▶ |
hhh.mmss hhh.mms hhh.mm hhh.m hhh |
Dalam urutan ini, hhh menunjukkan urutan apa pun dari setidaknya satu digit desimal untuk menunjukkan jam, mm menunjukkan bagian menit dua digit, m menunjukkan bagian menit satu digit, ss menunjukkan dua- digit bagian kedua, s menunjukkan bagian kedua satu digit, dan karakter untuk memisahkan jam dari menit adalah titik (U+002E). Semua digit harus berupa karakter dari 0 hingga 9 (U+0030 - U+0039). Spasi di depan atau di belakang diabaikan. Total waktu ditentukan melalui rumus berikut, menghasilkan detik berawal dari tengah malam:
Seconds since midnight for a given time: | |
ƒ | 3600*hhh + 60*mm + ss |
Jika menit atau detik tidak ditunjukkan, akan dianggap nol. Anda dapat menggunakan jam non-negatif, termasuk nilai yang lebih besar atau sama dengan 24. Jika, misalnya, waktu kedatangan stasiun adalah 23:59:00 (hari ke 1), dan waktu kedatangan stasiun berikut adalah 00:02 :15 (hari ke 2), lalu gunakan urutan berikut untuk mewakili waktu ini untuk memastikan urutan kronologis:
Examples for times: | |
▶ |
23.5900 24.0215 |
■ 5. Nilai warna
Hexcolor: Bilangan heksadesimal enam digit didahului oleh karakter tanda angka (U+0023). Satu digit heksadesimal dapat terdiri dari digit desimal dari 0 hingga 9 (U+0030 - U+0039), huruf kecil dari a hingga f (U+0061 - U+0066) dan huruf besar dari A hingga F ( U+0041 - U+0046). Hexcolor memiliki bentuk berikut:
▶ | #RRGGBB |
Pada bagian ini, RR mewakili komponen warna merah, GG komponen warna hijau dan B komponen warna biru. Setiap komponen berkisar dari 00 hingga FF (0 - 255), di mana 00 mewakili tidak ada kontribusi untuk warna itu dan FF kontribusi penuh.
Warna yang umum digunakan (untuk menunjukkan transparansi) yaitu:
▶ |
#000000 (hitam) #FF0000 (merah) #00FF00 (hijau) #0000FF (biru) #00FFFF (cyan) #FF00FF (magenta) #FFFF00 (kuning) #FFFFFF (putih) |