def _generate_env_properties(self): env_props = bpymorse.get_properties(self.env._bpy_object) longitude = env_props.get('longitude') geod_latitude = env_props.get('latitude') altitude = env_props.get('altitude') if 'angle_against_north' in env_props: angle = env_props.get('angle_against_north') - pi / 2 else: angle = 0.0 try: self.coord_conv = CoordinateConverter(geod_latitude, longitude, altitude, angle) except: self.coord_conv = CoordinateConverter(geod_latitude, longitude, altitude) geoc = self.coord_conv.ecef_to_geocentric( self.coord_conv.ltp_to_ecef( self.coord_conv.blender_to_ltp(numpy.matrix([0.0, 0.0, 0.0])))) geoc[0, 0] = degrees(geoc[0, 0]) geoc[0, 1] = degrees(geoc[0, 1]) geoc[0, 2] -= self.coord_conv.A self.properties['env'] = { 'longitude': geoc[0, 0], 'latitude': geoc[0, 1], 'altitude': geoc[0, 2] }