///<summary>random обектууд үүсгэнэ</summary> public static List <GameObject> RndGos(Vector3 a, Vector3 b, List <GameObject> goPfs, int n, RotType rt = RotType.Def, Quaternion rot = default(Quaternion), Transform parTf = null) { List <GameObject> res = new List <GameObject>(); for (int i = 0; i < n; i++) { res.Add(RndGo(a, b, goPfs, rt, rot, parTf)); } return(res); }
///<summary>random обект үүсгэнэ</summary> public static GameObject RndGo(Vector3 pos, List <GameObject> goPfs, RotType rt = RotType.Def, Quaternion rot = default(Quaternion), Transform parTf = null) { GameObject goPf = Rnd.List <GameObject>(goPfs); if (rt == RotType.Def) { rot = goPf.transform.rotation; } else if (rt == RotType.Rnd) { rot = Q.Euler(0, Rnd.Ang, 0); } return(MonoBehaviour.Instantiate(goPf, pos, rot, parTf)); }
public static void Rot90(Mat matImage, RotType rotflag) { //1=CW, 2=CCW, 3=180 if (rotflag == RotType.CW) { CvInvoke.Transpose(matImage, matImage); CvInvoke.Flip(matImage, matImage, Emgu.CV.CvEnum.FlipType.Horizontal); //transpose+flip(1)=CW } else if (rotflag == RotType.CCW) { CvInvoke.Transpose(matImage, matImage); CvInvoke.Flip(matImage, matImage, Emgu.CV.CvEnum.FlipType.None); //transpose+flip(0)=CCW } else if (rotflag == RotType.R180) { CvInvoke.Flip(matImage, matImage, Emgu.CV.CvEnum.FlipType.Vertical); //flip(-1)=180 } }
///<summary>random обектууд давхцахгүйгаар үүсгэнэ</summary> public static List <GameObject> RndGos(Vector3 a, Vector3 b, List <GameObject> gos, List <GameObject> goPfs, int n, float dis, RotType rt = RotType.Def, Quaternion rot = default(Quaternion), Transform parTf = null) { List <GameObject> res = new List <GameObject>(); List <Vector3> pnts = new List <Vector3>(); if (gos.NotNull() && gos.Count > 0) { gos.ForEach(x => pnts.Add(x.transform.position)); } for (int i = 0; i < 100000 && pnts.Count < n; i++) { Vector3 rnd = Rnd.Pos(a, b); if (pnts.FindIndex(0, pnts.Count, x => Vector3.Distance(x, rnd) < dis) < 0) { pnts.Add(rnd); res.Add(RndGo(Rnd.Pos(a, b), goPfs, rt, rot, parTf)); } } return(res); }
private void DoPathEditing() { GUILayout.BeginVertical(); // BEGIN path editing GUILayout.Label( string.Format("Simple camera path [{0} keys]", path.Count)); GUILayout.BeginHorizontal(); // BEGIN name field GUILayout.Label("Name:"); path.Name = GUILayout.TextField(path.Name); GUILayout.EndHorizontal(); // END name field DoPlaybackControls(); DoKeysList(); DoUnderListControls(); if (StateHandler.developerMode) { GUILayout.BeginHorizontal(); // BEGIN rotation choice GUILayout.Label("Rotation type:"); var rotTypes = new RotType[] { RotType.Slerp, RotType.Squad, RotType.Component }; foreach (var rotType in rotTypes) { if (GUILayout.Toggle(path.RotType == rotType, "")) { path.RotType = rotType; } GUILayout.Label(rotType.ToString()); } GUILayout.EndHorizontal(); // END rotation choice } GUILayout.EndVertical(); // END path editing }
///<summary>random обектууд давхцахгүйгаар үүсгэнэ</summary> public static List <GameObject> RndGos(Vector3 a, Vector3 b, List <GameObject> goPfs, int n, float dis, RotType rt = RotType.Def, Quaternion rot = default(Quaternion), Transform parTf = null) { return(RndGos(a, b, null, goPfs, n, dis, rt, rot, parTf)); }
///<summary>random обект үүсгэнэ [a, b]</summary> public static GameObject RndGo(Vector3 a, Vector3 b, List <GameObject> goPfs, RotType rt = RotType.Def, Quaternion rot = default(Quaternion), Transform parTf = null) { return(RndGo(Rnd.Pos(a, b), goPfs, rt, rot, parTf)); }