public MClipElement Clone(MClipsManager p_baseClipsManagerT) { MClipElement newClip = new MClipElement(p_baseClipsManagerT); newClip.imageElement = imageElement; newClip.clipRect = clipRect; newClip.imgClip = imgClip; return(newClip); }
public MClipsManager CloneReference(Form_Main form_MAT) { MClipsManager newInstance = new MClipsManager(form_MAT); for (int i = 0; i < Count(); i++) { newInstance.Add(this[i].Clone()); } return(newInstance); }
//克隆导出用的切片管理器(只保留被使用过的切片) public MClipsManager CloneForExport() { MClipsManager newInstance = new MClipsManager(form_Main); for (int i = 0; i < Count(); i++) { MClipElement clipElement = (MClipElement)this[i]; MClipElement newClip = clipElement.Clone(newInstance); newInstance.Add(newClip); } return(newInstance); }
//获取记录值_切片 private HistoryValue_Clips getHistoryValue_Clips() { HistoryValue_Clips HV_Clips = new HistoryValue_Clips(); MClipsManager manager = form_MA.form_MImgsList.MClipsManager; HV_Clips.clipsManager = manager; for (int i = 0; i < manager.Count(); i++) { MClipElement clip = manager[i]; HV_Clips.clipsData.Add(clip.getMClipData()); } HV_Clips.imgListIndex = form_MA.form_MImgsList.listBox_Images.SelectedIndex; return(HV_Clips); }
//返回是用次数 public virtual int getUsedTime() { int number = 0; MActorsManager MAM = null; MClipsManager clipsManagerM = clipsManager.form_Main.form_MAnimation.form_MImgsList.MClipsManager; Console.WriteLine("m:" + clipsManagerM.GetHashCode() + ",c:" + clipsManager.GetHashCode()); if (clipsManager.Equals(clipsManagerM)) { MAM = clipsManager.form_Main.form_MAnimation.form_MActorList.actorsManager; } else if (clipsManager.Equals(clipsManager.form_Main.animClipsManagerForExport)) { MAM = clipsManager.form_Main.animActorsManagerExport; } if (MAM == null) { return(0); } for (int i1 = 0; i1 < MAM.Count(); i1++) { for (int i2 = 0; i2 < MAM[i1].Count(); i2++) { for (int i3 = 0; i3 < MAM[i1][i2].Count(); i3++) { for (int i4 = 0; i4 < MAM[i1][i2][i3].Count(); i4++) { for (int i5 = 0; i5 < MAM[i1][i2][i3][i4].Count(); i5++) { for (int i6 = 0; i6 < MAM[i1][i2][i3][i4][i5].Count(); i6++) { MFrameUnit unit = MAM[i1][i2][i3][i4][i5][i6]; if (unit is MFrameUnit_Bitmap) { MFrameUnit_Bitmap unitBitmap = (MFrameUnit_Bitmap)unit; if (unitBitmap.clipElement != null && unitBitmap.clipElement.Equals(this)) { number++; } } } } } } } } return(number); }
//合并切片资源 public void combine(MClipsManager src_Manager) { for (int i = 0; i < src_Manager.Count(); i++) { MClipElement srcElement = src_Manager[i]; MClipElement newElement = srcElement.Clone(this); //检查重复 for (int j = 0; j < this.Count(); j++) { MClipElement localClip = this[j]; if (localClip.equalsClip(newElement)) { newElement = localClip; break; } } if (!this.Contains(newElement)) { this.Add(newElement); } //转移引用 src_Manager.replaceHandler(newElement, srcElement); } }
public MClipElement(MClipsManager clipManagerT) { clipsManager = clipManagerT; }
public void SetParent(MParentNode parent) { clipsManager = (MClipsManager)parent; }