/// <summary> /// Removes the specified value. /// </summary> /// <param name="value">Value.</param> public void Remove(ShapeRecord value) { if (List.Contains(value)) { List.Remove(value as object); } }
/// <summary> /// Writes to a binary writer. /// </summary> /// <param name="writer">Writer.</param> public void WriteTo(BufferedBinaryWriter writer) { writer.SynchBits(); writer.WriteUBits(ShapeWithStyle.NumFillBits, 4); writer.WriteUBits(ShapeWithStyle.NumLineBits, 4); ShapeRecord lastShape = this.GetLastOne(); if (lastShape != null && !(lastShape is EndShapeRecord)) { this.Add(new EndShapeRecord()); } IEnumerator shapes = this.GetEnumerator(); while (shapes.MoveNext()) { ((ShapeRecord)shapes.Current).WriteTo(writer); } }
/// <summary> /// Gets the size of. /// </summary> /// <returns>Size of this object.</returns> public int GetSizeOf() { int res = 8; IEnumerator shapes = this.GetEnumerator(); while (shapes.MoveNext()) { res += ((ShapeRecord)shapes.Current).GetBitSizeOf(res); } ShapeRecord lastShape = this.GetLastOne(); if (lastShape != null && !(lastShape is EndShapeRecord)) { EndShapeRecord end = new EndShapeRecord(); res += end.GetBitSizeOf(res); } return(Convert.ToInt32(Math.Ceiling((double)res / 8.0))); }
/// <summary> /// Adds the specified value. /// </summary> /// <param name="value">Value.</param> /// <returns></returns> public ShapeRecord Add(ShapeRecord value) { List.Add(value as object); return value; }
/// <summary> /// Creates a new <see cref="ShapeRecordCollection"/> instance. /// </summary> /// <param name="shapes">Shapes.</param> public ShapeRecordCollection(ShapeRecord[] shapes) { if (shapes != null) AddRange(shapes); }
/// <summary> /// Removes the specified value. /// </summary> /// <param name="value">Value.</param> public void Remove(ShapeRecord value) { if (List.Contains(value)) List.Remove(value as object); }
/// <summary> /// Inserts the specified index. /// </summary> /// <param name="index">Index.</param> /// <param name="value">Value.</param> public void Insert(int index, ShapeRecord value) { List.Insert(index, value as object); }
/// <summary> /// Get the index of. /// </summary> /// <param name="value">Value.</param> /// <returns></returns> public int IndexOf(ShapeRecord value) { return List.IndexOf(value); }
/// <summary> /// Containses the specified value. /// </summary> /// <param name="value">Value.</param> /// <returns></returns> public bool Contains(ShapeRecord value) { return List.Contains(value as object); }
/// <summary> /// Adds the range. /// </summary> /// <param name="values">Values.</param> public void AddRange(ShapeRecord[] values) { foreach(ShapeRecord ip in values) Add(ip); }
/// <summary> /// Get the index of. /// </summary> /// <param name="value">Value.</param> /// <returns></returns> public int IndexOf(ShapeRecord value) { return(List.IndexOf(value)); }
/// <summary> /// Containses the specified value. /// </summary> /// <param name="value">Value.</param> /// <returns></returns> public bool Contains(ShapeRecord value) { return(List.Contains(value as object)); }
/// <summary> /// Inserts the specified index. /// </summary> /// <param name="index">Index.</param> /// <param name="value">Value.</param> public void Insert(int index, ShapeRecord value) { List.Insert(index, value as object); }
/// <summary> /// Adds the specified value. /// </summary> /// <param name="value">Value.</param> /// <returns></returns> public ShapeRecord Add(ShapeRecord value) { List.Add(value as object); return(value); }