Obyek Pengukuran¶
Modul django.contrib.gis.measure
megandung obyek-obyek yang mengizinkan untuk gambaran nyaman dari jarak dan unit kawasan dari pengukuran. [1] Khususnya, itu menerapkan dua obyek, Distance
dan Area
-- kedua dari yang mungkin mengakses melalui nama lain kenyamanan D
dan A
, masing-masing.
Contoh¶
Distance
objects may be instantiated using a keyword argument indicating the
context of the units. In the example below, two different distance objects are
instantiated in units of kilometers (km
) and miles (mi
):
>>> from django.contrib.gis.measure import D, Distance
>>> d1 = Distance(km=5)
>>> print(d1)
5.0 km
>>> d2 = D(mi=5) # `D` is an alias for `Distance`
>>> print(d2)
5.0 mi
For conversions, access the preferred unit attribute to get a converted distance quantity:
>>> print(d1.mi) # Converting 5 kilometers to miles
3.10685596119
>>> print(d2.km) # Converting 5 miles to kilometers
8.04672
Moreover, arithmetic operations may be performed between the distance objects:
>>> print(d1 + d2) # Adding 5 miles to 5 kilometers
13.04672 km
>>> print(d2 - d1) # Subtracting 5 kilometers from 5 miles
1.89314403881 mi
Two Distance
objects multiplied together will yield an Area
object, which uses squared units of measure:
>>> a = d1 * d2 # Returns an Area object.
>>> print(a)
40.2336 sq_km
To determine what the attribute abbreviation of a unit is, the unit_attname
class method may be used:
>>> print(Distance.unit_attname("US Survey Foot"))
survey_ft
>>> print(Distance.unit_attname("centimeter"))
cm
Satuan Didukung¶
Satuan Atribut | Nama penuh atau nama lain |
---|---|
km |
Kilometer |
mi |
Mil |
m |
Meter |
yd |
Yard |
ft |
Kaki (Internasional) |
survey_ft |
Kaki Amerika Serikat, penelitian kaki Amerika Serikat |
inci |
Inci |
cm |
Sentimeter |
mm |
Milimeter |
um |
Mikrometer |
british_ft |
Kaki Inggris (Sears 1922) |
british_yd |
Yard Inggris (Sears 1922) |
british_chain_sears |
British chain (Sears 1922) |
indian_yd |
Yard India, Yard (India) |
sears_yd |
Yard (Sears) |
clarke_ft |
Kaki Clarke |
chain |
Chain |
chain_benoit |
Chain (Benoit) |
chain_sears |
Chain (Sears) |
british_chain_benoit |
British chain (Benoit 1895 B) |
british_chain_sears_truncated |
British chain (Sears 1922 truncated) |
gold_coast_ft |
Gold Coast foot |
link |
Tautan |
link_benoit |
Link (Benoit) |
link_sears |
Link (Sears) |
clarke_link |
Tautan Clarke |
fathom |
Fathom |
rod |
Rod |
furlong |
Furlong, Furrow Long |
nm |
Nautical Mile |
nm_uk |
Nautical Mile (UK) |
german_m |
German legal metre |
API pengukuran¶
Distance
¶
-
class
Distance
(**kwargs)[sumber]¶ To initialize a distance object, pass in a keyword corresponding to the desired unit attribute name set with desired value. For example, the following creates a distance object representing 5 miles:
>>> dist = Distance(mi=5)
-
__getattr__
(unit_att)¶
Returns the distance value in units corresponding to the given unit attribute. For example:
>>> print(dist.km) 8.04672
-
classmethod
unit_attname
(unit_name)¶
Returns the distance unit attribute name for the given full unit name. For example:
>>> Distance.unit_attname("Mile") 'mi'
-
Area
¶
-
class
Area
(**kwargs)[sumber]¶ To initialize an area object, pass in a keyword corresponding to the desired unit attribute name set with desired value. For example, the following creates an area object representing 5 square miles:
>>> a = Area(sq_mi=5)
-
__getattr__
(unit_att)¶
Returns the area value in units corresponding to the given unit attribute. For example:
>>> print(a.sq_km) 12.949940551680001
-
classmethod
unit_attname
(unit_name)¶
Returns the area unit attribute name for the given full unit name. For example:
>>> Area.unit_attname("Kilometer") 'sq_km'
-
Catatan kaki
[1] | Robert Coup adalah penulis awal dari ukuran obyek-obyek, dan terinspirasi oleh pekerjaan Brian Beck dalam geopy dan pekerjaan PhD Geoff Biggs pada dimensi satuan untuk robotik. |