public GMapMarkerPhoto(MAVLink.mavlink_camera_feedback_t mark, bool shotBellowMinInterval = false) : base(new PointLatLng(mark.lat / 1e7, mark.lng / 1e7)) { local = mark; this.shotBellowMinInterval = shotBellowMinInterval; Offset = new Point(-localcache1.Width / 2, -localcache1.Height / 2); Size = localcache1.Size; Alt = mark.alt_msl; ToolTipMode = MarkerTooltipMode.OnMouseOver; Roll = local.roll - rolltrim; Pitch = local.pitch - pitchtrim; Yaw = local.yaw - yawtrim; ToolTipText = "Photo" + "\nAlt: " + mark.alt_msl + "\nNo: " + mark.img_idx + "\nRoll: " + Roll.ToString("0.00"); Tag = mark.time_usec; var footprint = ImageProjection.calc(new PointLatLngAlt(Position.Lat, Position.Lng, Alt), Roll, Pitch, Yaw, hfov, vfov); footprintpoly = new GMapPolygon(footprint.ConvertAll(x => x.Point()), "FP" + mark.time_usec); footprintpoly.Fill = Brushes.Transparent; footprintpoly.Stroke = Pens.Crimson; }
public GMapMarkerPhoto(MAVLink.mavlink_camera_feedback_t mark, bool shotBellowMinInterval = false) : base(new PointLatLng(mark.lat / 1e7, mark.lng / 1e7)) { local = mark; this.shotBellowMinInterval = shotBellowMinInterval; Offset = new Point(-16, -16); Size = localcache1.Size; Alt = mark.alt_msl; ToolTipMode = MarkerTooltipMode.OnMouseOver; ToolTipText = "Photo" + "\nAlt: " + mark.alt_msl + "\nNo: " + mark.img_idx; Tag = mark.time_usec; var footprint = ImageProjection.calc(new PointLatLngAlt(Position.Lat, Position.Lng, Alt), local.roll - rolltrim, local.pitch - pitchtrim, local.yaw - yawtrim, hfov, vfov); footprintpoly = new GMapPolygon(footprint.ConvertAll(x => x.Point()), "FP" + mark.time_usec); footprintpoly.Fill = Brushes.Transparent; }