public void RemoveInstance(CopyLayerInstance instance) { Instances.Remove(instance); if (Instances.Count == 0) { CopyLayerManager.RemoveLayer(this); } }
public void RemoveCopyLayer(CopyLayerInstance copyLayerInstance, bool removeInstanceFromLayer = true) { //Faces[copyLayerInstance.elements] = Faces.First().Value; //DefaultCopyLayerInstance.elements.Add(copyLayerInstance.elements.First()); if (removeInstanceFromLayer) { copyLayerInstance.RemoveFromCopyLayer(); } }
// Interface Implementation // IMeshElement public void Reset() { IsInMesh = false; foreach (var f in Faces) { f.Value.parentIndex = -1; f.Value.IsFinished = false; } DefaultCopyLayerInstance = null; IsFinished = false; //CopyLayerCount = Faces.Count; //DefaultCopyLayerInstance = Faces.First().Value; }
public int AddToMesh(MeshFace face, int triIndex) { var layer = Faces[face]; MeshContainer.Instance.Vertices.Add(Position + layer.offsetPosition); layer.parentIndex = MeshContainer.Instance.Vertices.Count - 1; layer.elementIndex = triIndex; if (!IsInMesh || DefaultCopyLayerInstance == null) { MeshIndex = layer.parentIndex; DefaultCopyLayerInstance = layer; } IsInMesh = true; return(layer.parentIndex); }
/// <summary> /// Adds a new CopyLayerInstance /// </summary> /// <param name="instance"></param> public void Add(CopyLayerInstance instance) { Instances.Add(instance); }
public FloatingMeshVert(MeshVert _meshVert, Vector3 _pos, CopyLayerInstance _copyLayer) { meshVert = _meshVert; StartPosition = _pos; copyLayer = _copyLayer; }