'Initialize a LOC record instance.
The parameters I{latitude} and I{longitude} may be either a 4-tuple
of integers specifying (degrees, minutes, seconds, milliseconds),
or they may be floating point values specifying the number of
degrees.  The other parameters are floats.'

def __init__(self, rdclass, rdtype, latitude, longitude, altitude, size=1.0, hprec=10000.0, vprec=10.0):

    super(LOC, self).__init__(rdclass, rdtype)
    if (isinstance(latitude, int) or isinstance(latitude, long)):
        latitude = float(latitude)
    if isinstance(latitude, float):
        latitude = _float_to_tuple(latitude)
    self.latitude = latitude
    if (isinstance(longitude, int) or isinstance(longitude, long)):
        longitude = float(longitude)
    if isinstance(longitude, float):
        longitude = _float_to_tuple(longitude)
    self.longitude = longitude
    self.altitude = float(altitude)
    self.size = float(size)
    self.horizontal_precision = float(hprec)
    self.vertical_precision = float(vprec)
