Bagian aktif Syntax
8. Parameters
Status dokumen: Normative
Section parameters mendefinisikan kontrak input dokumen yang dapat diubah pengguna.
Catatan penting:
parametersadalah deklarasi input- ia menjelaskan nama, tipe, default, dan batasan input
- ia berbeda dari
paramspada instancecomponent paramsadalah nilai input aktual yang dikirim ke satu instance component tertentu
8.1 Basic Syntax
parameters:
width:
type: length
default: 100mm
8.2 Fields
type
Tipe parameter.
Wajib ditentukan.
default
Nilai bawaan parameter.
Opsional tetapi direkomendasikan.
8.2.1 Shorthand Syntax
Untuk kemudahan penulisan, RelGeo mendukung sintaks shorthand di mana nilai parameter atau konstanta dapat ditulis langsung tanpa pembungkus objek.
Format Standar:
parameters:
lebar:
type: length
default: 100mm
Format Shorthand:
parameters:
lebar: 100mm
[!NOTE] Format shorthand secara otomatis memperlakukan nilai sebagai tipe data yang sesuai dengan nilainya (angka, string, boolean, atau panjang dengan unit). Fitur tambahan seperti
min,max, ataudescriptiontetap membutuhkan format standar.
8.2.2 Parameters vs Params
Pemisahan istilah yang dipakai RelGeo:
parametersKontrak input yang dideklarasikan pada root document atau definisi component.paramsNilai input aktual untuk satu instance component.
Contoh:
components:
boltHole:
parameters:
diameter:
type: length
default: 6mm
objects:
h1:
type: component
use: boltHole
params:
diameter: 8mm
Maknanya:
parameterspadaboltHolemendefinisikan input yang sahparamspadah1memberi nilai aktual untuk instance itu- jika satu field tidak diisi di
params, default dariparameterstetap berlaku
8.3 Scalar Parameters
parameters:
width:
type: length
default: 100mm
count:
type: number
default: 4
angle:
type: angle
default: 45deg
8.4 Point Parameters
parameters:
startPoint:
type: point
default: [10mm, 20mm]
8.5 Array Parameters
parameters:
mountingPoints:
type: array
items: point
8.6 Object Parameters
parameters:
bolt:
type: object
properties:
diameter: length
spacing: length
count: number
default:
diameter: 6mm
spacing: 20mm
count: 4