AI-generated Key Takeaways
-
Number.toUint32()
casts a given Earth Engine Number to an unsigned 32-bit integer. -
The method handles out-of-range values by clamping them to the minimum (0) or maximum (4294967295) value of a uint32.
-
Casting floating point numbers to uint32 using this method results in loss of decimal precision.
-
The output of the function is an Earth Engine Number object representing the unsigned 32-bit integer.
Usage | Returns |
---|---|
Number.toUint32() | Number |
Argument | Type | Details |
---|---|---|
this: input | Number | The input value. |
Examples
Code Editor (JavaScript)
// Cast a number to unsigned 32-bit integer: [0, 4294967295]. var number = ee.Number(100); print('Number:', number); var uint32Number = number.toUint32(); print('Number cast to uint32:', uint32Number); /** * Casting numbers to uint32 that are outside of its range and precision can * modify the resulting value, note the behavior of the following scenarios. */ // A floating point number cast to uint32 loses decimal precision. var float = ee.Number(1.7); print('Floating point value:', float); var floatToUint32 = float.toUint32(); print('Floating point value cast to uint32:', floatToUint32); // A number greater than uint32 range max cast to uint32 becomes uint32 range max. var UINT32_MAX = 4294967295; var outOfRangeHi = ee.Number(UINT32_MAX + 12345); print('Greater than uint32 max:', outOfRangeHi); var outOfRangeHiToUint32 = outOfRangeHi.toUint32(); print('Greater than uint32 max cast to uint32 becomes uint32 max:', outOfRangeHiToUint32); // A number greater than uint32 range min cast to uint32 becomes uint32 range min. var UINT32_MIN = 0; var outOfRangeLo = ee.Number(UINT32_MIN - 12345); print('Less than uint32 min:', outOfRangeLo); var outOfRangeLoToUint32 = outOfRangeLo.toUint32(); print('Less than uint32 min cast to uint32 becomes uint32 min:', outOfRangeLoToUint32);
import ee import geemap.core as geemap
Colab (Python)
# Cast a number to unsigned 32-bit integer: [0, 4294967295]. number = ee.Number(100) print('Number:', number.getInfo()) uint32_number = number.toUint32() print('Number cast to uint32:', uint32_number.getInfo()) """Casting numbers to uint32 that are outside of its range and precision can modify the resulting value, note the behavior of the following scenarios. """ # A floating point number cast to uint32 loses decimal precision. float_number = ee.Number(1.7); print('Floating point value:', float_number.getInfo()) float_to_uint32 = float_number.toUint32(); print('Floating point value cast to uint32:', float_to_uint32.getInfo()) # A number greater than uint32 range max cast to uint32 # becomes uint32 range max. UINT32_MAX = 4294967295 out_of_range_hi = ee.Number(UINT32_MAX + 12345) print('Greater than uint32 max:', out_of_range_hi.getInfo()) out_of_range_hi_to_uint32 = out_of_range_hi.toUint32() print('Greater than uint32 max cast to uint32 becomes uint32 max:', out_of_range_hi_to_uint32.getInfo()) # A number greater than uint32 range min cast to uint32 # becomes uint32 range min. UINT32_MIN = 0 out_of_range_lo = ee.Number(UINT32_MIN - 12345) print('Less than uint32 min:', out_of_range_lo.getInfo()) out_of_range_lo_to_uint32 = out_of_range_lo.toUint32() print('Less than uint32 min cast to uint32 becomes uint32 min:', out_of_range_lo_to_uint32.getInfo())