public void Delete() { if (timeline.Count < 1) { return; } if (selId == -1) { selId = timeline [timeline.Count - 1].id; framesIdCount = selId; SetScroll(); } Frame f = timeline.Find(x => x.id == selId); timeline.Remove(f); SetLastFramesMonitor(); FrameBtn fb = thumbs.Find(x => x.id == selId); fb.SetSprite(null); /*FrameBtn[] btns = btnContainer.GetComponentsInChildren<FrameBtn> (); * foreach(FrameBtn fb in thumbs){ * if (fb.id == selId) * Destroy (fb.gameObject); * }*/ selId = -1; }
public void SaveFrame(WebCamTexture webTex) { if (framesIdCount >= Data.Instance.configData.config.maxFrames) { return; } int size = webTex.height - Data.Instance.configData.config.cropHeightPx; currentFrame = new Texture2D(size, size); int x0 = (int)(webTex.width * 0.5f - size * 0.5); int y0 = (int)(webTex.height * 0.5f - size * 0.5); currentFrame.SetPixels(webTex.GetPixels(x0, y0, currentFrame.width, currentFrame.height)); currentFrame.Apply(); timeline.Add(new Frame(currentFrame, framesIdCount)); FrameBtn fb = thumbs.Find(x => x.id == framesIdCount); Sprite sprite = Sprite.Create(currentFrame, new Rect(0, 0, currentFrame.width, currentFrame.height), Vector2.zero); fb.SetSprite(sprite); /*GameObject btn = Instantiate (frameBtn, btnContainer.transform); * RectTransform btnFt = frameBtn.transform as RectTransform; * if (framesIdCount * btnFt.sizeDelta.x > Screen.width*0.5f) { * RectTransform rt = btnContainer.transform as RectTransform; * rt.sizeDelta = new Vector2 (rt.sizeDelta.x + btnFt.sizeDelta.x, rt.sizeDelta.y); * } * * FrameBtn fb = btn.GetComponent<FrameBtn> (); * //Sprite sprite = new Sprite (); * Sprite sprite = Sprite.Create (currentFrame, new Rect (0, 0, currentFrame.width, currentFrame.height), Vector2.zero); * fb.Create (sprite, framesIdCount);*/ framesIdCount++; SetScroll(); SetLastFramesMonitor(); }