public static Point3d FromStream(BinaryReader br) { var result = new Point3d(); var cnt = br.ReadInt32(); for (var i = 0; i < cnt; i++) { result.Weights.Add(br.ReadInt32(), br.ReadSingle()); } result.Position = Vector3Ex.FromStream(br); cnt = br.ReadInt32(); if (cnt != 0) { result.Indices = new List <uint>(); for (var i = 0; i < cnt; i++) { result.Indices.Add(br.ReadUInt32()); } } cnt = br.ReadInt32(); for (var i = 0; i < cnt; i++) { result.Nearests.Add(br.ReadInt32()); } result.TextureTrinagleInfo = TrinagleInfo.FromStream(br); result.ShapeTrinagleInfo = TrinagleInfo.FromStream(br); result.ProfileShapeTrinagleInfo = TrinagleInfo.FromStream(br); return(result); }
public static Vertex3d FromStream(BinaryReader br) { var result = new Vertex3d(); result.Position = Vector3Ex.FromStream(br); result.Normal = Vector3Ex.FromStream(br); result.TexCoord = new Vector2(br.ReadSingle(), br.ReadSingle()); result.Color = new Vector4(br.ReadSingle(), br.ReadSingle(), br.ReadSingle(), br.ReadSingle()); result.AutodotsTexCoord = Vector3Ex.FromStream(br); result.OriginalPosition = Vector3Ex.FromStream(br); return(result); }