def send_waypoint(self): wpt_boxes = [builder.get_object("new_wpt_lat_entry"),builder.get_object("new_wpt_lng_entry")] new_lat = int(float(wpt_boxes[0].get_text())*1000000) new_lng = int(float(wpt_boxes[1].get_text())*1000000) * const_lng_mult new_lat_bytes = [new_lat>>24, (new_lat>>16)&0xFF,(new_lat>>8)&0xFF,(new_lat)&0xFF] new_lng_bytes = [new_lng>>24, (new_lng>>16)&0xFF,(new_lng>>8)&0xFF,(new_lng)&0xFF] cmd_to_add = [1] for new_lat_byte in new_lat_bytes: cmd_to_add.append(new_lat_byte) for new_lng_byte in new_lng_bytes: cmd_to_add.append(new_lng_byte) next_pkt.add_cmd(cmd_to_add) dist = CoordDistance.distance_on_unit_sphere(new_lat,new_lng,data[7][-1],data[8][-1])#8,7 dist *= 6373000 print "Travelling ",dist, "m"
def update_metrics_display(): labels = [builder.get_object("pressure_label"),builder.get_object("int_temp_label"),builder.get_object("humidity_label"),builder.get_object("ext_temp_label"),builder.get_object("dp_label"),builder.get_object("mag_crs_label"),builder.get_object("height_label"),builder.get_object("qfe_label"),builder.get_object("lat_label"),builder.get_object("lng_label"),builder.get_object("hdop_label"),builder.get_object("distance_label"),builder.get_object("os_label"), builder.get_object("countup_button"),builder.get_object("wpt_cnt_label")] global data labels[0].set_text(str(data[2][-1]))#pressure labels[1].set_text(str(data[3][-1]))#MS5637 temp labels[2].set_text(str(data[5][-1]))#humidity labels[3].set_text(str(data[4][-1]))#HYT271 temperature labels[4].set_text(str(data[6][-1]))#calculated dew point labels[5].set_text(str(data[10][-1]))#magnetometer heading labels[6].set_text(str(data[11][-1]))#height labels[7].set_text(str(QFE))#QFE labels[8].set_text(str(data[7][-1]))#lat labels[9].set_text(str(data[8][-1]))#lng labels[10].set_text(str(data[9][-1]))#hdop labels[11].set_text(str(round((CoordDistance.distance_on_unit_sphere(data[7][-1],data[8][-1],const_lat,const_lng) *6373000),0))) labels[14].set_text(str(data[13][-1])) if launched: labels[13].set_label(str(round(time.time()-launch_time,1))) else: labels[13].set_label("0.0")