@@ -34,39 +34,72 @@ pub struct Length {
34
34
}
35
35
36
36
impl Length {
37
- // Inputs, metric
37
+ // Inputs, metric, with both spellings of meter/metre
38
+
38
39
pub fn from_meters ( meters : f64 ) -> Self {
39
40
Length { meters : meters }
40
41
}
41
42
43
+ pub fn from_metres ( metres : f64 ) -> Self {
44
+ Self :: from_meters ( metres)
45
+ }
46
+
42
47
pub fn from_nanometers ( nanometers : f64 ) -> Self {
43
48
Self :: from_meters ( nanometers / METER_NANOMETER_FACTOR )
44
49
}
45
50
51
+ pub fn from_nanometres ( nanometers : f64 ) -> Self {
52
+ Self :: from_nanometers ( nanometers)
53
+ }
54
+
46
55
pub fn from_micrometers ( micrometers : f64 ) -> Self {
47
56
Self :: from_meters ( micrometers / METER_MICROMETER_FACTOR )
48
57
}
49
58
59
+ pub fn from_micrometres ( micrometers : f64 ) -> Self {
60
+ Self :: from_micrometers ( micrometers)
61
+ }
62
+
50
63
pub fn from_millimeters ( millimeters : f64 ) -> Self {
51
64
Self :: from_meters ( millimeters / METER_MILLIMETER_FACTOR )
52
65
}
53
66
67
+ pub fn from_millimetres ( millimeters : f64 ) -> Self {
68
+ Self :: from_millimeters ( millimeters)
69
+ }
70
+
54
71
pub fn from_centimeters ( centimeters : f64 ) -> Self {
55
72
Self :: from_meters ( centimeters / METER_CENTIMETER_FACTOR )
56
73
}
57
74
75
+ pub fn from_centimetres ( centimeters : f64 ) -> Self {
76
+ Self :: from_centimeters ( centimeters)
77
+ }
78
+
58
79
pub fn from_decameters ( decameters : f64 ) -> Self {
59
80
Self :: from_meters ( decameters / METER_DECAMETER_FACTOR )
60
81
}
61
82
83
+ pub fn from_decametres ( decameters : f64 ) -> Self {
84
+ Self :: from_decameters ( decameters)
85
+ }
86
+
62
87
pub fn from_hectometers ( hectometers : f64 ) -> Self {
63
88
Self :: from_meters ( hectometers / METER_HECTOMETER_FACTOR )
64
89
}
65
90
91
+ pub fn from_hectometres ( hectometers : f64 ) -> Self {
92
+ Self :: from_hectometers ( hectometers)
93
+ }
94
+
66
95
pub fn from_kilometers ( kilometers : f64 ) -> Self {
67
96
Self :: from_meters ( kilometers / METER_KILOMETER_FACTOR )
68
97
}
69
98
99
+ pub fn from_kilometres ( kilometers : f64 ) -> Self {
100
+ Self :: from_kilometers ( kilometers)
101
+ }
102
+
70
103
// Inputs, imperial
71
104
pub fn from_inches ( inches : f64 ) -> Self {
72
105
Self :: from_meters ( inches / METER_INCH_FACTOR )
@@ -93,34 +126,66 @@ impl Length {
93
126
self . meters * METER_NANOMETER_FACTOR
94
127
}
95
128
129
+ pub fn as_nanometres ( & self ) -> f64 {
130
+ self . as_nanometers ( )
131
+ }
132
+
96
133
pub fn as_micrometers ( & self ) -> f64 {
97
134
self . meters * METER_MICROMETER_FACTOR
98
135
}
99
136
137
+ pub fn as_micrometres ( & self ) -> f64 {
138
+ self . as_micrometers ( )
139
+ }
140
+
100
141
pub fn as_millimeters ( & self ) -> f64 {
101
142
self . meters * METER_MILLIMETER_FACTOR
102
143
}
103
144
145
+ pub fn as_millimetres ( & self ) -> f64 {
146
+ self . as_millimeters ( )
147
+ }
148
+
104
149
pub fn as_centimeters ( & self ) -> f64 {
105
150
self . meters * METER_CENTIMETER_FACTOR
106
151
}
107
152
153
+ pub fn as_centimetres ( & self ) -> f64 {
154
+ self . as_centimeters ( )
155
+ }
156
+
108
157
pub fn as_meters ( & self ) -> f64 {
109
158
self . meters
110
159
}
111
160
161
+ pub fn as_metres ( & self ) -> f64 {
162
+ self . as_meters ( )
163
+ }
164
+
112
165
pub fn as_decameters ( & self ) -> f64 {
113
166
self . meters * METER_DECAMETER_FACTOR
114
167
}
115
168
116
- pub fn as_hectometer ( & self ) -> f64 {
169
+ pub fn as_decametres ( & self ) -> f64 {
170
+ self . as_decameters ( )
171
+ }
172
+
173
+ pub fn as_hectometers ( & self ) -> f64 {
117
174
self . meters * METER_HECTOMETER_FACTOR
118
175
}
119
176
177
+ pub fn as_hectometres ( & self ) -> f64 {
178
+ self . as_hectometers ( )
179
+ }
180
+
120
181
pub fn as_kilometers ( & self ) -> f64 {
121
182
self . meters * METER_KILOMETER_FACTOR
122
183
}
123
184
185
+ pub fn as_kilometres ( & self ) -> f64 {
186
+ self . as_kilometers ( )
187
+ }
188
+
124
189
// Outputs, imperial
125
190
pub fn as_inches ( & self ) -> f64 {
126
191
self . meters * METER_INCH_FACTOR
0 commit comments