public void Expand(ICompoundPrimitive2D primitive) { foreach (Primitive2D p in primitive.GetPrimitives()) { if (p is Vector2D) { Expand(p as Vector2D); } } }
private void MoveCompoundPrimitive(ICompoundPrimitive2D primitive, Vector2D delta) { foreach (Primitive2D p in primitive.GetPrimitives()) { if (p is Vector2D) { if (primitives.IndexOf(p) == -1) { ((Vector2D)p).Move(delta); } } else if (p is ICompoundPrimitive2D) { MoveCompoundPrimitive((ICompoundPrimitive2D)p, delta); } } }
public Rectangle2D(ICompoundPrimitive2D v) : this(new Vector2D(double.MaxValue), new Vector2D(double.MinValue)) { v.GetPrimitives(); }