public void CopyTo(Topology.VertexEdge[] array, int arrayIndex) { for (int i = 0; i < _length; ++i) { array[arrayIndex++] = new Topology.VertexEdge(_topology, _edgeIndices[i]); } }
public bool Remove(Topology.VertexEdge item) { throw new NotSupportedException(); }
public void Insert(int index, Topology.VertexEdge item) { throw new NotSupportedException(); }
public void Add(Topology.VertexEdge item) { throw new NotSupportedException(); }
public int IndexOf(Topology.VertexEdge item) { return(Array.IndexOf(_edgeIndices, item.index)); }
public bool Contains(Topology.VertexEdge item) { return(Array.IndexOf(_edgeIndices, item.index) != -1); }
/// <inheritdoc/> public abstract T this[Topology.VertexEdge e] { get; set; }
/// <summary> /// Accesses the vertex attribute value in the array corresponding to the vertex of the given edge. /// </summary> /// <param name="e">The edge whose vertex's attribute value is to be accessed.</param> /// <returns>The vertex attribute value corresponding to the vertex of the given edge.</returns> public T this[Topology.VertexEdge e] { get { return array[e.vertex.index]; } set { array[e.vertex.index] = value; } }
/// <inheritdoc/> public override T this[Topology.VertexEdge e] { get { return constant; } set { throw new NotSupportedException("Values of a constant vertex attribute cannot be changed."); } }
/// <summary> /// Lookup the attribute value for the vertex of the edge indicated, wrapping according to the attribute's surface if necessary. /// </summary> /// <param name="e">The edge whose vertex's attribute value is desired.</param> /// <returns>The attribute value for the far vertex of the edge indicated, relative to the edge's near vertex.</returns> /// <remarks><para>To get the raw value unwrapped, see <see cref="P:MakeIt.Tile.VertexArrayAttribute`1.Item(MakeIt.Tile.Topology.Vertex)"/></para></remarks> public override Vector3 this[Topology.VertexEdge e] { get { return(surface.OffsetVertToVertAttribute(array[e.vertex.index], e.wrap)); } set { array[e.vertex.index] = surface.ReverseOffsetVertToVertAttribute(array[e.vertex.index], e.wrap); } }