public override void Parse(string[] data) { int index = 2; Id = data[index++]; Time = DateTime.Parse(data[index++]); Name = data[index++]; double x = double.Parse(data[index++]); double y = double.Parse(data[index++]); Shape = new GeoPointShape(x, y); UTC = data[index++]; }
public override string Format() { StringBuilder sb = new StringBuilder(); sb.Append("WXAIS,21,"); sb.Append(this.Id); sb.Append(","); sb.Append(this.Time.ToString()); sb.Append(","); sb.Append(this.Name); sb.Append(","); GeoPointShape gps = this.Shape as GeoPointShape; sb.Append(gps.Point.X.ToString("F6")); sb.Append(","); sb.Append(gps.Point.Y.ToString("F6")); sb.Append(","); sb.Append(this.EPFD_Type.ToString()); sb.Append(","); sb.Append(this.Measure_A.ToString()); sb.Append(","); sb.Append(this.Measure_B.ToString()); sb.Append(","); sb.Append(this.Measure_C.ToString()); sb.Append(","); sb.Append(this.Measure_D.ToString()); sb.Append(","); sb.Append(this.OffPosition.ToString()); sb.Append(","); sb.Append(this.PositionAccuracy.ToString()); sb.Append(","); sb.Append(this.RAIM_Flag.ToString()); sb.Append(","); sb.Append(this.TimeStamp.ToString()); sb.Append(","); sb.Append(this.AtoNType.ToString()); sb.Append(","); string result = sb.ToString(); return(result); }
public override string Format() { StringBuilder sb = new StringBuilder(); sb.Append("WXAIS,4,"); sb.Append(this.Id); sb.Append(","); sb.Append(this.Time.ToString()); sb.Append(","); sb.Append(this.Name); sb.Append(","); GeoPointShape gps = this.Shape as GeoPointShape; sb.Append(gps.Point.X.ToString("F6")); sb.Append(","); sb.Append(gps.Point.Y.ToString("F6")); sb.Append(","); sb.Append(this.UTC); sb.Append(","); string result = sb.ToString(); return(result); }
private List <CompactFeatureObj> updateResult(List <tagFEATURE> list) { List <CompactFeatureObj> result = new List <CompactFeatureObj>(); for (int i = 0; i < list.Count; i++) { tagFEATURE feature = list[i]; GeometryShape geoShape = null; if ((feature.PRIM == GeoPrimitiveType.Point || feature.PRIM == GeoPrimitiveType.Text) && feature.SG2D != null) { geoShape = new GeoPointShape(feature.SG2D.Points[0].X, feature.SG2D.Points[0].Y); } else if (feature.PRIM == GeoPrimitiveType.Line && feature.SG2D != null) { geoShape = new GeoLineShape(feature.SG2D); } else if (feature.PRIM == GeoPrimitiveType.Area && feature.Area != null) { geoShape = new GeoAreaShape(feature.Area); } if (geoShape != null && _locator.Rect.IntersectsWith(geoShape.Bounds)) { string name = string.Empty; string[] names = feature.GetAttribute(S57AttributeType.NOBJNM); if (names != null && names.Length > 0) { name = names[0]; } string fileName = feature.File.Header.FileName; int tempIndex = fileName.LastIndexOf('\\') + 1; CompactFeatureObj obj = new CompactFeatureObj(string.Empty, name, string.Empty, geoShape, fileName.Substring(tempIndex, fileName.LastIndexOf('.') - tempIndex), feature.OBJL.ToString()); result.Add(obj); setAttribute(feature, obj); } } return(result); }
public override void Parse(string[] data) { int index = 2; Id = data[index++]; Time = DateTime.Parse(data[index++]); Name = data[index++]; double x = double.Parse(data[index++]); double y = double.Parse(data[index++]); Shape = new GeoPointShape(x, y); EPFD_Type = Int32.Parse(data[index++]); Measure_A = Int32.Parse(data[index++]); Measure_B = Int32.Parse(data[index++]); Measure_C = Int32.Parse(data[index++]); Measure_D = Int32.Parse(data[index++]); OffPosition = Boolean.Parse(data[index++]); PositionAccuracy = Boolean.Parse(data[index++]); RAIM_Flag = Boolean.Parse(data[index++]); TimeStamp = Int32.Parse(data[index++]); AtoNType = Int32.Parse(data[index++]); }
public override void Parse(string[] data) { int index = 1; DataTime = DateTime.Parse(data[index++]); int.TryParse(data[index++], out TrackId); int.TryParse(data[index++], out Status); Name = EncodeStr.Decode(data[index++]); ShortName = data[index++]; //5 CallSign = data[index++]; int.TryParse(data[index++], out ShipType); int.TryParse(data[index++], out Length); int.TryParse(data[index++], out Width); double x = 0; double.TryParse(data[index++], out x); //10 double y = 0; double.TryParse(data[index++], out y); Shape = new GeoPointShape(x, y); double.TryParse(data[index++], out COG); double.TryParse(data[index++], out SOG); int.TryParse(data[index++], out Heading); TimeLastUpdate = DateTime.Parse(data[index++]); //15 ObjType = (ObjTypes)Enum.Parse(typeof(ObjTypes), data[index++]); int.TryParse(data[index++], out TargetType); int.TryParse(data[index++], out PilotStatus); int.TryParse(data[index++], out Rating); int.TryParse(data[index++], out LabelColorIndex); //20 int.TryParse(data[index++], out Category); int.TryParse(data[index++], out MMSI); int.TryParse(data[index++], out TransponderState); int.TryParse(data[index++], out DBTrackId); double.TryParse(data[index++], out Draught); //25 InfoTxt = EncodeStr.Decode(data[index++]); double.TryParse(data[index++], out ETA); double.TryParse(data[index++], out ETAEndPoint); double.TryParse(data[index++], out RateOfTurn); int.TryParse(data[index++], out AISNavStatus); //30 int.TryParse(data[index++], out AISRateOfTurn); int.TryParse(data[index++], out AISSOG); int.TryParse(data[index++], out AISLatitude); int.TryParse(data[index++], out AISLongitude); int.TryParse(data[index++], out AISCOG); //35 int heading = 511; if (int.TryParse(data[index++], out heading)) { AISTrueHeading = heading; } int.TryParse(data[index++], out AISETA); double.TryParse(data[index++], out AISDraught); double.TryParse(data[index++], out AISTimeOfLastUpdate); Time = DateTime.Parse(data[index++]); //40 if (index < data.Length) { this.GID = data[index++]; } if (index < data.Length) { this.FID = data[index++]; } Id = GetID(); }