>>> from liblas import point
>>> p = point.Point()
>>> p.x
0.0
>>> p.x = 1.0
>>> p.x
1.0
>>> p.raw_x
1
>>> p.y
0.0
>>> p.y = 2.0
>>> p.y
2.0
>>> p.raw_y
2
>>> p.z
0.0
>>> p.z = 3.0
>>> p.z
3.0
>>> p.raw_z
3
>>> p.return_number
0
>>> p.return_number = 3
>>> p.return_number
3
>>> p.number_of_returns
0
>>> p.number_of_returns = 4
>>> p.number_of_returns
4
>>> p.flightline_edge
0
>>> p.flightline_edge = 1
>>> p.flightline_edge
1
>>> p.scan_flags
163
>>> p.classification
0
>>> p.classification = 3
>>> p.classification
3
>>> p.user_data
0
>>> p.user_data = 163
>>> p.user_data
163
>>> p.scan_angle
0
>>> p.scan_angle = 45
>>> p.scan_angle
45
>>> import datetime
>>> import math
>>> import time
>>> def get_td():
... now = datetime.datetime.now()
... td = now.utcnow() - now # my timezone is GMT-5, would be GMT-7 for California (buildbot)
... isdst = time.localtime().tm_isdst
... if isdst:
... return int(math.floor(td.seconds/3600.0))
... else:
... return int(math.floor(td.seconds/3600.0)) - 1
>>> td = datetime.timedelta(hours=get_td())
>>> p.time = datetime.datetime(2008,3,19,23,45,45,13434)
>>> delta = p.time - datetime.datetime(2008,3,19,23,45,45,13434)
>>> int(math.floor(delta.seconds/3600.0)) == get_td() or int(math.floor(delta.seconds/3600.0)) == get_td() + 1
True
>>> p.time.microsecond
13434
>>> p.intensity
0
>>> p.intensity = 120
>>> p.intensity
120
>>> c = p.color
>>> c.red
0
>>> c.red = 124
>>> c.red
124
>>> p.color = c
>>> p.color.red
124
>>> p.xml
'\n1231231203404511630Low Vegetation3falsefalsefalse12400'
#
# >>> import ctypes
# >>> data = (ctypes.c_ubyte * 256)()
# >>> data[10]
# 0
#
# >>> for i in range(256):
# ... data[i] = 2+i
#
# >>> data[10]
# 12
# >>> p.data = data
#
# # Ensure we can round trip the data
# >>> [data[i] for i in range(10)]
# [2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
# >>> [p.data[i] for i in range(10)]
# [2, 3, 4, 5, 6, 7, 8, 9, 10, 11]