def toNvector(self, **Nvector_datum_kwds): # PYCHOK Datums.WGS84 '''Convert this cartesian to L{Nvector} components, I{including height}. @kwarg Nvector_datum_kwds: Optional L{Nvector}, B{C{datum}} and other keyword arguments, ignored if B{C{Nvector=None}}. Use B{C{Nvector=...}} to override this L{Nvector} class or specify B{C{Nvector=None}}. @return: The C{n-vector} components (L{Nvector}) or a L{Vector4Tuple}C{(x, y, z, h)} if B{C{Nvector=None}}. @raise TypeError: Invalid B{C{Nvector}}, B{C{datum}} or other B{C{Nvector_datum_kwds}}. @example: >>> from ellipsoidalNvector import LatLon >>> c = Cartesian(3980581, 97, 4966825) >>> n = c.toNvector() # (0.62282, 0.000002, 0.78237, +0.24) ''' kwds = _xkwds(Nvector_datum_kwds, Nvector=Nvector, datum=self.datum) return CartesianEllipsoidalBase.toNvector(self, **kwds)
def toLatLon(self, **kwds): # PYCHOK LatLon=LatLon, datum=None '''Convert this cartesian point to an C{Nvector}-based geodetic point. @keyword kwds: Optional, additional B{C{LatLon}} keyword arguments, ignored if C{B{LatLon}=None}. Specify C{LatLon=...} to override this L{LatLon} class or set C{B{LatLon}=None}. @return: The B{C{LatLon}} point (L{LatLon}) or when C{B{LatLon}=None}, an L{Ecef9Tuple}C{(x, y, z, lat, lon, height, C, M, datum)} with C{C} and C{M} if available. @raise TypeError: Invalid B{C{LatLon}} or B{C{kwds}}. ''' kwds = _2kwds(kwds, LatLon=LatLon, datum=self.datum) return CartesianEllipsoidalBase.toLatLon(self, **kwds)
def toLatLon(self, **LatLon_datum_kwds): # PYCHOK LatLon=LatLon, datum=None '''Convert this cartesian point to a C{Karney}-based geodetic point. @kwarg LatLon_datum_kwds: Optional L{LatLon}, B{C{datum}} and other keyword arguments, ignored if B{C{LatLon=None}}. Use B{C{LatLon=...}} to override this L{LatLon} class or specify B{C{LatLon=None}}. @return: The geodetic point (L{LatLon}) or if B{C{LatLon}} is C{None}, an L{Ecef9Tuple}C{(x, y, z, lat, lon, height, C, M, datum)} with C{C} and C{M} if available. @raise TypeError: Invalid B{C{LatLon}}, B{C{datum}} or other B{C{LatLon_datum_kwds}}. ''' kwds = _xkwds(LatLon_datum_kwds, LatLon=LatLon, datum=self.datum) return CartesianEllipsoidalBase.toLatLon(self, **kwds)
def toNvector(self, **kwds): # PYCHOK Datums.WGS84 '''Convert this cartesian to L{Nvector} components, I{including height}. @keyword kwds: Optional, additional B{C{Nvector}} keyword arguments, ignored if C{B{Nvector}=None}. Specify C{Nvector=...} to override this L{Nvector} class or set C{B{Nvector}=None}. @return: The B{C{Nvector}} components (L{Nvector}) or a L{Vector4Tuple}C{(x, y, z, h)} if C{B{Nvector}=None}. @raise TypeError: Invalid B{C{Nvector}} or B{C{kwds}}. @example: >>> from ellipsoidalNvector import LatLon >>> c = Cartesian(3980581, 97, 4966825) >>> n = c.toNvector() # (0.62282, 0.000002, 0.78237, +0.24) ''' kwds = _2kwds(kwds, Nvector=Nvector, datum=self.datum) return CartesianEllipsoidalBase.toNvector(self, **kwds)