Beispiel #1
0
        public override void OnInspectorGUI()
        {
            FollowPath cp = (FollowPath)target;

            EditorGUI.BeginChangeCheck();

            EConUtil.DrawActiveLine(cp);

            //constraint target
            cp.Spline = (BaseSplineBehaviour)EditorGUILayout.ObjectField("Target Spline", cp.Spline, typeof(BaseSplineBehaviour), true);

            EUtil.DrawSplitter();

            EUtil.PushGUIEnable(cp.IsActiveConstraint && cp.Spline);
            {
                EUtil.PushLabelWidth(100f);
                cp.Offset = EditorGUILayout.Slider(new GUIContent("Offset", "t parameter for the spline"), cp.Offset, 0, 1f);

                //axis and offset
                cp.FollowCurve = EditorGUILayout.Toggle(new GUIContent("Follow Curve", "owner's rotation will follow the spline"), cp.FollowCurve);
                if (cp.FollowCurve)
                {
                    cp.ForwardDir = (EAxisD)EConUtil.DrawEnumBtns(AllAxis, AllAxisStr, cp.ForwardDir, "Forward Axis", "the axis of owner, which will be taken as the forward direction when follow the spline");
                    cp.UpDir      = (EAxisD)EConUtil.DrawEnumBtns(AllAxis, AllAxisStr, cp.UpDir, "Up Axis", "the axis of owner, which will be taken as the up direction when follow the spline");

                    cp.UpDir = ConUtil.EnsureAxisNotColinear(cp.ForwardDir, cp.UpDir);

                    GUILayout.Space(5f);
                }
                EUtil.PopLabelWidth();

                // influence
                cp.Influence = EUtil.ProgressBar(cp.Influence, 0, 1f, "Influence: {0:F2}");
            }
            EUtil.PopGUIEnable();

            if (EditorGUI.EndChangeCheck())
            {
                EditorUtility.SetDirty(cp); //so ConstraintStack.Update can be called in edit-mode
            }
        }
        private bool _CheckManualSetJointList(CCDSolverMB cp)
        {
            var lst = cp.jointList;

            for (int i = 0; i < lst.Count; ++i)
            {
                if (lst[i] == null)
                {
                    EUtil.ShowNotification("Joint List has null entry!");
                    return(false);
                }
            }

            if (lst.Count > 0 && lst[lst.Count - 1] != cp.transform)
            {
                EUtil.ShowNotification("Joint List's last entry must be 'this' transform");
                return(false);
            }

            return(true);
        }
 public static void DrawActiveLine(BaseConstraint cp)
 {
     EUtil.PushLabelWidth(50f);
     EUtil.PushFieldWidth(30f);
     EditorGUILayout.BeginHorizontal();
     {
         cp.IsActiveConstraint = EditorGUILayout.Toggle(new GUIContent("Active", "whether this constraint is active"), cp.IsActiveConstraint);
         GUILayout.FlexibleSpace();
         if (cp.HasGizmos)
         {
             cp.ShowGizmos = EditorGUILayout.Toggle(new GUIContent("Gizmos", "whether display gizmos for this constraint"), cp.ShowGizmos);
         }
         else
         {
             cp.ShowGizmos = false;
         }
     }
     EditorGUILayout.EndHorizontal();
     EUtil.PopFieldWidth();
     EUtil.PopLabelWidth();
 }
        public static Enum DrawEnumBtns(Enum[] es, string[] strs, Enum cur, string label, string tips, float labelWidth = 80f)
        {
            EditorGUILayout.BeginHorizontal();
            {
                GUILayout.Label(new GUIContent(label, tips), GUILayout.Width(labelWidth));

                for (int i = 0; i < es.Length; ++i)
                {
                    Color c = (es[i].Equals(cur) ? kSelectedBtnColor : Color.white);
                    EUtil.PushBackgroundColor(c);
                    if (GUILayout.Button(strs[i], EditorStyles.toolbarButton))
                    {
                        return(es[i]);
                    }
                    EUtil.PopBackgroundColor();
                }
            }
            EditorGUILayout.EndHorizontal();

            return(cur);
        }
        public void OnSceneGUI()
        {
            AngleConstraintMB mb = (AngleConstraintMB)target;

            if (mb == null)
            {
                return;
            }

            Transform j       = mb.transform;
            Transform jparent = j.parent;
            Transform jchild  = mb.nextJoint;

            if (jchild == null)
            {
                return;
            }

            var oldColor = Handles.color;

            float szMul = EUtil.GetHandleSize(j.position, 3f) * ms_markerSize;

            Vector3 worldRotAxis  = Misc.TransformDirection(jparent, mb.rotAxis).normalized;
            Vector3 worldPrimAxis = Misc.TransformDirection(jparent, mb.primAxis).normalized;

            float   minLimit     = mb.minLimit;
            float   maxLimit     = mb.maxLimit;
            Vector3 worldFromVec = Quaternion.AngleAxis(minLimit, worldRotAxis) * worldPrimAxis;

            Handles.color = ms_arcColor;
            Handles.DrawSolidArc(j.position, worldRotAxis, worldFromVec,
                                 maxLimit - minLimit, szMul);

            Handles.color = Color.red;
            Handles.DrawAAPolyLine(5f, j.position, j.position + worldRotAxis * szMul);  //rot axis
            Handles.color = Color.green;
            Handles.DrawAAPolyLine(5f, j.position, j.position + worldPrimAxis * szMul); //start dir

            Handles.color = oldColor;
        }
        public override void OnInspectorGUI()
        {
            CopyTransform cp = (CopyTransform)target;

            EditorGUI.BeginChangeCheck();

            EConUtil.DrawActiveLine(cp);

            //constraint target
            cp.Target = (Transform)EditorGUILayout.ObjectField("Target Obj", cp.Target, typeof(Transform), true);
            if (cp.Target && !ConstraintEditorUtil.IsTargetHasAllUniformScaleInHierarchy(cp.Target))
            {
                ConstraintEditorUtil.NonUniformScaleWarning(cp.Target);
            }

            EUtil.DrawSplitter();

            EUtil.PushGUIEnable(cp.IsActiveConstraint && cp.Target);
            {
                m_foldoutSpace = EditorGUILayout.Foldout(m_foldoutSpace, "Space Mapping");
                if (m_foldoutSpace)
                {
                    // target space
                    cp.TargetSpace = (ESpace)EditorGUILayout.EnumPopup("Target Space", cp.TargetSpace);

                    // owner space
                    cp.OwnerSpace = (ESpace)EditorGUILayout.EnumPopup("Owner Space", cp.OwnerSpace);
                    GUILayout.Space(5f);
                }

                // influence
                cp.Influence = EUtil.ProgressBar(cp.Influence, 0, 1f, "Influence: {0:F2}");
            }
            EUtil.PopGUIEnable();

            if (EditorGUI.EndChangeCheck())
            {
                EditorUtility.SetDirty(cp); //so ConstraintStack.Update can be called in edit-mode
            }
        }
Beispiel #7
0
        public static List <EUsuario> listarUsuario(EUsuario objE)
        {
            List <EUsuario> lista = new List <EUsuario>();

            using (SqlConnection cn = new SqlConnection(DConexion.Get_Connection(DConexion.DataBase.CnRumpSql)))
            {
                SqlCommand cmd = new SqlCommand("usp_mnt_usuario", cn);
                cmd.Parameters.AddWithValue("@email", objE.EMAIL);
                cmd.Parameters.AddWithValue("@opcion", 1);
                cmd.CommandType = CommandType.StoredProcedure;
                cn.Open();
                SqlDataReader dr = cmd.ExecuteReader();
                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        EUsuario mItem = new EUsuario();
                        //mItem.ID = dr.IsDBNull(dr.GetOrdinal("id")) ? 0 : dr.GetDecimal(dr.GetOrdinal("id"));
                        mItem.ID_ENCRIP = EUtil.getEncriptar((dr.IsDBNull(dr.GetOrdinal("id")) ? 0 : dr.GetDecimal(dr.GetOrdinal("id"))).ToString());
                        mItem.ACTIVO    = dr.IsDBNull(dr.GetOrdinal("activo")) ? 0 : dr.GetInt16(dr.GetOrdinal("activo"));
                        mItem.EMAIL     = dr.IsDBNull(dr.GetOrdinal("email")) ? string.Empty : dr.GetString(dr.GetOrdinal("email"));
                        mItem.PASSWORD  = dr.IsDBNull(dr.GetOrdinal("password")) ? string.Empty : dr.GetString(dr.GetOrdinal("password"));
                        mItem.PERFIL_ID = dr.IsDBNull(dr.GetOrdinal("usuario_perfil_id")) ? 0 : dr.GetDecimal(dr.GetOrdinal("usuario_perfil_id"));
                        mItem.NOMBRE    = dr.IsDBNull(dr.GetOrdinal("nombre")) ? string.Empty : dr.GetString(dr.GetOrdinal("nombre"));
                        mItem.APELLIDO  = dr.IsDBNull(dr.GetOrdinal("apellido")) ? string.Empty : dr.GetString(dr.GetOrdinal("apellido"));
                        mItem.SEXO      = dr.IsDBNull(dr.GetOrdinal("sexo")) ? string.Empty : dr.GetString(dr.GetOrdinal("sexo"));
                        mItem.FOTO      = dr.IsDBNull(dr.GetOrdinal("foto")) ? string.Empty : dr.GetString(dr.GetOrdinal("foto"));

                        mItem.USUARIO_PERFIL = new EUsuarioPerfil()
                        {
                            ID     = dr.IsDBNull(dr.GetOrdinal("usuario_perfil_id")) ? 0 : dr.GetDecimal(dr.GetOrdinal("usuario_perfil_id")),
                            PERFIL = dr.IsDBNull(dr.GetOrdinal("perfil")) ? string.Empty : dr.GetString(dr.GetOrdinal("perfil"))
                        };

                        lista.Add(mItem);
                    }
                }
            }
            return(lista);
        }
Beispiel #8
0
        public static object ActualizarCuentaWM(EUsuario objE)
        {
            ERespuestaJson objRespuesta = new ERespuestaJson();

            try
            {
                if (HttpContext.Current.Session["userRump"] == null)
                {
                    objRespuesta.Error("Su sesión ha expirado, por favor vuelva a iniciar sesión");
                    return(objRespuesta);
                }

                EUsuario eUsuario = (EUsuario)HttpContext.Current.Session["userRump"];

                objE.ID_ENCRIP = EUtil.getEncriptar(eUsuario.ID.ToString());

                string objResultado = "";

                if (NUsuario.ActualizarBasicoUsuario(objE) > 0)
                {
                    objResultado = objE.ID_ENCRIP;
                }

                if (objResultado == "")
                {
                    objRespuesta.Error("No se pudo actualizar.");
                }
                else
                {
                    objRespuesta.Resultado = objResultado;
                    objRespuesta.Success("Se guardó la información correctamente");
                }
            }
            catch (Exception ex)
            {
                objRespuesta.Error(String.IsNullOrEmpty(ex.Message) ? ex.InnerException.Message : ex.Message);
            }
            return(objRespuesta);
        }
Beispiel #9
0
        private void _DelPoint(CatmullRomCentripetal spline)
        {
            if (spline.PointCount <= 2)
            {
                EUtil.ShowNotification("The spline needs at least 2 points");
                return;
            }
            if (spline.Cycle && spline.PointCount <= 4)
            {
                EUtil.ShowNotification("Cannot delete any points to maintain cycle");
                return;
            }
            if (m_curPtIdx < 0)
            {
                return;
            }

            MUndo.RecordObject(target, "del point");
            MUndo.RecordObject(this, "del point");
            spline.RemovePoint(m_curPtIdx);
            m_curPtIdx = Mathf.Min(spline.PointCount - 1, m_curPtIdx);
        }
Beispiel #10
0
        public static int ActualizarSolicitud(ESolicitud objE)
        {
            using (SqlConnection cn = new SqlConnection(DConexion.Get_Connection(DConexion.DataBase.CnRumpSql)))
            {
                SqlCommand cmd = new SqlCommand("usp_mnt_solicitud", cn);
                cmd.Parameters.AddWithValue("@id", EUtil.getDesencriptar(objE.ID_ENCRIP));
                cmd.Parameters.AddWithValue("@nom_rep", objE.NOM_REP);
                cmd.Parameters.AddWithValue("@ape_rep", objE.APE_REP);
                cmd.Parameters.AddWithValue("@tel_rep", objE.TEL_REP);
                cmd.Parameters.AddWithValue("@dni_rep", objE.DNI_REP);
                cmd.Parameters.AddWithValue("@direccion", objE.DIRECCION);
                cmd.Parameters.AddWithValue("@referencia", objE.REFERENCIA);
                cmd.Parameters.AddWithValue("@geografia_id", objE.GEOGRAFIA_ID);
                cmd.Parameters.AddWithValue("@comentario", objE.COMENTARIO);

                cmd.Parameters.AddWithValue("@usuario", objE.USUARIO);
                cmd.Parameters.AddWithValue("@opcion", 4);
                cmd.CommandType = CommandType.StoredProcedure;
                cn.Open();
                return(cmd.ExecuteNonQuery());
            }
        }
        private static void _GUI_CAT()
        {
            if (!m_hasCAT)
            {
                _URLBtn();
                return;
            }

            EditorGUI.BeginChangeCheck();

            m_IKConMarkerSize           = EditorGUILayout.FloatField("IK constraint marker size", m_IKConMarkerSize);
            m_IKAngleConstraintArcColor = EditorGUILayout.ColorField("IK angle constraint arc color", m_IKAngleConstraintArcColor);
            m_IKConeConstraintColor     = EditorGUILayout.ColorField("IK cone contraint color", m_IKConeConstraintColor);
            m_IKBoneLinkColor           = EditorGUILayout.ColorField("IK bone link color", m_IKBoneLinkColor);
            m_showInitInfos             = EditorGUILayout.Toggle("Show Init Infos in editor", m_showInitInfos);

            if (EditorGUI.EndChangeCheck())
            {
                _SavePrefs();
                EUtil.RepaintSceneView();
            }
        }
        private void _ShortCut_EditMode(Event e)
        {
            if (e.rawType == EventType.MouseUp)
            {
                if (e.button == 1)
                {
                    m_bRightBtnIsDown = false;
                }
            }

            if (e.type == EventType.MouseDown)
            {
                if (e.button == 1)
                {
                    m_bRightBtnIsDown = true;
                }
            }

            if (e.type == EventType.KeyUp && !m_bRightBtnIsDown)
            {
                switch (e.keyCode)
                {
                case KeyCode.W:
                {
                    m_EditTool = EditTool.Move;
                    EUtil.RepaintSceneView();
                }
                break;

                case KeyCode.E:
                {
                    m_EditTool = EditTool.Rotate;
                    EUtil.RepaintSceneView();
                }
                break;
                }
            }
        }
Beispiel #13
0
    /// <summary>
    /// [HACK TRICK]
    /// update every loop,
    /// current in-edit clip, clip's rootTr
    /// </summary>
    private void _UpdateInternalInfo()
    {
        AnimationClip curClip = null;
        Transform     rootTr  = null;

        m_AnimationWindowState = EUtil.GetUnityAnimationWindowState(m_UAW);
        if (m_AnimationWindowState != null)
        {
            curClip = RCall.GetField("UnityEditorInternal.AnimationWindowState",
                                     "m_ActiveAnimationClip", m_AnimationWindowState) as AnimationClip;

#if U5
            GameObject rootGO = RCall.GetProp("UnityEditorInternal.AnimationWindowState",
                                              "activeRootGameObject", m_AnimationWindowState) as GameObject;
#else
            GameObject rootGO = RCall.GetField("UnityEditorInternal.AnimationWindowState",
                                               "m_RootGameObject", m_AnimationWindowState) as GameObject;
#endif
            if (rootGO != null)
            {
                rootTr = rootGO.transform;
            }
        }
        else
        {
            curClip = null;
            rootTr  = null;
        }

        if (curClip != m_CurClip)
        {
            _OnCurrentClipChange(m_CurClip, curClip);
        }
        if (rootTr != m_ClipRoot)
        {
            _OnRootTransformChange(m_ClipRoot, rootTr);
        }
    }
            // public method

            #endregion "public method"

            #region "private method"
            // private method

            private void _DrawShapeKeyData(ShapeKeyMorphSO morph, int keyIdx)
            {
                ShapeKeyDataDiff keyData = morph.GetShapeKeyDataDiff(keyIdx);

                EditorGUILayout.BeginHorizontal();
                {
                    EditorGUILayout.LabelField("Weight:", GUILayout.Width(50f));

                    float newWeight = keyData.weight;
                    if (EUtil.FloatField("weight" + keyIdx, ref newWeight)) //only true when use enter to confirm
                    {
                        morph.SetShapeKeyWeight(keyIdx, newWeight);         //this will ensure all keys are sorted
                    }

                    if (EUtil.Button(EditorRes.texSample, "Sample current mesh status as shape key", EditorRes.styleBtnMorphProc, GUILayout.Width(20f)))
                    {
                        morph.SetMeshCurrentDataToShapeKey(keyIdx);
                    }
                    if (EUtil.Button(EditorRes.texApplyToMesh, "Apply this shape key to mesh", EditorRes.styleBtnMorphProc, GUILayout.Width(20f)))
                    {
                        Undo.RecordObject(m_MorphProc, "MorphProc Inspector");
                        m_MorphProc.ResetToBasisShape();
                        m_MorphProc.ApplyOnlyMorphAt(m_MorphIdx, keyData.weight);
                    }
                    if (EUtil.Button(EditorRes.texDelete, "Delete this shape key from this morph", EditorRes.styleBtnMorphProc, GUILayout.Width(20f)))
                    {
                        if (morph.ShapeKeyCnt == 1)
                        {
                            EditorUtility.DisplayDialog("Only one shape key", "Cannot delete shape key when there's no others", "Got it");
                        }
                        else
                        {
                            morph.DelShapeKeyDataDiff(keyIdx);
                        }
                    }
                }
                EditorGUILayout.EndHorizontal();
            }
        void OnGUI()
        {
            m_SMR = EditorGUILayout.ObjectField(m_SMR, typeof(SkinnedMeshRenderer), true) as SkinnedMeshRenderer;

            bool bValid = (m_SMR != null);

            GUIUtil.PushGUIEnable(bValid);
            if (EUtil.Button(m_bShowing ? "Stop!" : "Run!", Color.white))
            {
                m_bShowing = !m_bShowing;
                if (m_bShowing)
                {
                    SceneView.onSceneGUIDelegate += this.OnSceneGUI;
                }
                else
                {
                    SceneView.onSceneGUIDelegate -= this.OnSceneGUI;
                }

                SceneView.lastActiveSceneView.Repaint();
            }
            GUIUtil.PopGUIEnable();
        }
Beispiel #16
0
        public static int ActualizarEvento(EEvento objE)
        {
            using (SqlConnection cn = new SqlConnection(DConexion.Get_Connection(DConexion.DataBase.CnRumpSql)))
            {
                SqlCommand cmd = new SqlCommand("usp_mnt_evento", cn);

                cmd.Parameters.AddWithValue("@id", EUtil.getDesencriptar(objE.ID_ENCRIP));
                cmd.Parameters.AddWithValue("@evento_tipo_id", objE.EVENTO_TIPO_ID);
                cmd.Parameters.AddWithValue("@mascota_id", EUtil.getDesencriptar(objE.MASCOTA_ID_ENCRIP));
                cmd.Parameters.AddWithValue("@evento_periodo_id", objE.EVENTO_PERIODO_ID);
                cmd.Parameters.AddWithValue("@titulo", objE.TITULO);
                cmd.Parameters.AddWithValue("@detalle", objE.DETALLE);
                cmd.Parameters.AddWithValue("@fecha_inicio", objE.FECHA_INICIO);
                cmd.Parameters.AddWithValue("@fecha_fin", objE.FECHA_FIN);
                cmd.Parameters.AddWithValue("@estado", objE.ESTADO);

                cmd.Parameters.AddWithValue("@opcion", 4);
                cmd.CommandType = CommandType.StoredProcedure;
                /////////
                cn.Open();
                return(cmd.ExecuteNonQuery());
            }
        }
Beispiel #17
0
        public static ECita obtenerCita(ECita objE)
        {
            ECita mItem = new ECita();

            using (SqlConnection cn = new SqlConnection(DConexion.Get_Connection(DConexion.DataBase.CnRumpSql)))
            {
                SqlCommand cmd = new SqlCommand("usp_mnt_cita_medica", cn);
                cmd.Parameters.AddWithValue("@id", EUtil.getDesencriptar(objE.ID_ENCRIP));
                cmd.Parameters.AddWithValue("@opcion", 3);
                cmd.CommandType = CommandType.StoredProcedure;
                cn.Open();
                SqlDataReader dr = cmd.ExecuteReader();
                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        mItem.ID_ENCRIP             = EUtil.getEncriptar((dr.IsDBNull(dr.GetOrdinal("id")) ? 0 : dr.GetDecimal(dr.GetOrdinal("id"))).ToString());
                        mItem.CLINICA_ID            = dr.IsDBNull(dr.GetOrdinal("clinica_id")) ? 0 : dr.GetDecimal(dr.GetOrdinal("clinica_id"));
                        mItem.MEDICO_ID             = dr.IsDBNull(dr.GetOrdinal("medico_id")) ? 0 : dr.GetDecimal(dr.GetOrdinal("medico_id"));
                        mItem.MOTIVO                = dr.IsDBNull(dr.GetOrdinal("motivo")) ? string.Empty : dr.GetString(dr.GetOrdinal("motivo"));
                        mItem.vPARAM1               = dr.IsDBNull(dr.GetOrdinal("nombre")) ? string.Empty : dr.GetString(dr.GetOrdinal("nombre"));
                        mItem.vPARAM2               = dr.IsDBNull(dr.GetOrdinal("foto")) ? string.Empty : dr.GetString(dr.GetOrdinal("foto"));
                        mItem.TIPO                  = dr.IsDBNull(dr.GetOrdinal("tipo")) ? string.Empty : dr.GetString(dr.GetOrdinal("tipo"));
                        mItem.FECHA_ATENCION_MEDICA = dr.IsDBNull(dr.GetOrdinal("fecha_atencion_medica")) ? DateTime.MinValue : dr.GetDateTime(dr.GetOrdinal("fecha_atencion_medica"));
                        mItem.PESO                  = dr.IsDBNull(dr.GetOrdinal("peso")) ? string.Empty : dr.GetString(dr.GetOrdinal("peso"));
                        mItem.TEMPERATURA           = dr.IsDBNull(dr.GetOrdinal("temperatura")) ? string.Empty : dr.GetString(dr.GetOrdinal("temperatura"));
                        mItem.SINTOMAS              = dr.IsDBNull(dr.GetOrdinal("sintomas")) ? string.Empty : dr.GetString(dr.GetOrdinal("sintomas"));
                        mItem.DIAGNOSTICO           = dr.IsDBNull(dr.GetOrdinal("diagnostico")) ? string.Empty : dr.GetString(dr.GetOrdinal("diagnostico"));
                        mItem.TRATAMIENTO           = dr.IsDBNull(dr.GetOrdinal("tratamiento")) ? string.Empty : dr.GetString(dr.GetOrdinal("tratamiento"));
                        mItem.ANTECEDENTES          = dr.IsDBNull(dr.GetOrdinal("antecedentes")) ? string.Empty : dr.GetString(dr.GetOrdinal("antecedentes"));
                        mItem.FORMULA               = dr.IsDBNull(dr.GetOrdinal("formula")) ? string.Empty : dr.GetString(dr.GetOrdinal("formula"));
                        mItem.OBSERVACIONES         = dr.IsDBNull(dr.GetOrdinal("observaciones")) ? string.Empty : dr.GetString(dr.GetOrdinal("observaciones"));
                    }
                }
            }
            return(mItem);
        }
Beispiel #18
0
 void OnDisable()
 {
     EUtil.GetSceneView().renderMode = DrawCameraMode.Textured;
 }
Beispiel #19
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Page.IsPostBack == false)
            {
                if (Session["UserRump"] == null)
                {
                    Response.Redirect("~/InicioSesion");
                }
                if (Session["solicitudPedido"] == null)
                {
                    Response.Redirect("~/Sistema#!/page/mantenimiento/mascota");
                }
            }

            ESolicitud objPedido = new ESolicitud();

            objPedido = (ESolicitud)HttpContext.Current.Session["solicitudPedido"];

            //get params form
            float payAmount = (objPedido == null ? 0 : (float)objPedido.TOTAL);//Request.Form["transaction_amount"];
            var   tokencard = Request.Form["token"];
            var   payMethod = Request.Form["payment_method_id"];
            var   docType   = Request["docType"];
            var   docNumber = Request["docNumber"];

            var installmt = 1;//Request.Form["installments"];***********cuotas

            if (tokencard != null && payMethod != null && payAmount != 0)
            {
                if (payMethod == "")
                {
                    ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Alerta", "No se pudo indentificar la tarjeta", true);
                }

                //ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Alerta", "(1) payAmount::" + payAmount + " tokencard::" + tokencard + " payMethod::" + payMethod + " docType::" + docType + " docNumber::" + docNumber, true);
                //NMascota.log_error("(1) payAmount::" + payAmount + " tokencard::" + tokencard + " payMethod::" + payMethod + " docType::" + docType + " docNumber::" + docNumber, "pago");

                var p_email = Request.Form["email"];

                //ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Alerta", "(2) p_email::" + p_email + " objPedido::" + objPedido.ID.ToString(), true);
                //NMascota.log_error("(2) p_email::" + p_email + " objPedido::" + objPedido.ID.ToString(), "pago");

                var rp_payment = response_pay_mp(payMethod, payAmount, p_email, objPedido.ID.ToString(), tokencard, installmt, docType, docNumber);

                if (rp_payment != null)
                {
                    PaymentStatus rp_respose = processPaymentResponse(rp_payment, objPedido.ID, p_email);

                    if (rp_respose == MercadoPago.Common.PaymentStatus.approved || rp_respose == MercadoPago.Common.PaymentStatus.authorized)
                    {
                        Response.Redirect("~/pago_exitoso.aspx?vtoken=" + EUtil.getEncriptar(objPedido.ID.ToString()), true);
                    }
                    else if (rp_respose == MercadoPago.Common.PaymentStatus.cancelled)
                    {
                        Response.Redirect("~/pago_error.aspx?vTipo=" + EUtil.getEncriptar("cancelled"), true);
                    }
                    else if (rp_respose == MercadoPago.Common.PaymentStatus.rejected)
                    {
                        Response.Redirect("~/pago_error.aspx?vTipo=" + EUtil.getEncriptar("rejected"), true);
                    }
                    else if (rp_respose == MercadoPago.Common.PaymentStatus.in_process)
                    {
                        Response.Redirect("~/pago_error.aspx?vTipo=" + EUtil.getEncriptar("in_process"), false);
                    }
                }
                else
                {
                    ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Alerta", "alert('El pago no se realizó, volver a intentar.')", true);
                }
            }
        }
Beispiel #20
0
    // public method

    #endregion "public method"

    #region "private method"
    // private method

    private void _ConvertAnim(string newClipAssetPath)
    {
        // 0. prepare
        if (!m_Animator.isHuman)
        {
            Dbg.LogWarn("MuscleClipConverterEditor._ConvertAnim: Need to change to Humanoid rig first!");
            return;
        }

        m_SMR = m_Animator.GetComponentInChildren <SkinnedMeshRenderer>();
        if (m_SMR == null)
        {
            Dbg.LogWarn("MuscleClipConverterEditor._ConvertAnim: failed to find SMR under {0}", m_Animator.name);
            return;
        }

        m_Animator.Update(0);
#if !U5
        var ainfos = m_Animator.GetCurrentAnimationClipState(0); //only effect after Update is called
#else
        var ainfos = m_Animator.GetCurrentAnimatorClipInfo(0);   //only effect after Update is called
#endif
        AnimationClip         clip        = ainfos[0].clip;
        AnimationClipSettings clipSetting = AnimationUtility.GetAnimationClipSettings(clip);

        //{//debug
        //    var bindings = AnimationUtility.GetCurveBindings(clip);
        //    foreach( var b in bindings)
        //    {
        //        Dbg.Log("path: {0}, prop: {1}", b.path, b.propertyName);
        //    }
        //}

        Transform animatorTr = m_Animator.transform;
        Transform hipsBone   = null;
        CurveDict curveDict  = new CurveDict();

        float SAMPLE_RATE = clip.frameRate;
        float clipLen     = clip.length;

        Matrix4x4 animatorInitW2LMat = animatorTr.worldToLocalMatrix;
        Matrix4x4 hipsInitW2LMat     = Matrix4x4.identity;

        List <Transform> boneLst = new List <Transform>();
        for (HumanBodyBones boneIdx = 0; boneIdx < HumanBodyBones.LastBone; ++boneIdx)
        {
            Transform tr = m_Animator.GetBoneTransform(boneIdx);
            //Dbg.Log("Map: {0}->{1}", boneIdx, tr);
            if (tr != null)
            {
                boneLst.Add(tr);
                if (boneIdx == HumanBodyBones.Hips)
                {
                    hipsBone       = tr;
                    hipsInitW2LMat = hipsBone.parent.worldToLocalMatrix;
                    //clipSetting.level = -hipsBone.localPosition.y; // set Y offset
                    clipSetting.keepOriginalPositionY = false; //use RootNode position
                }
            }
        }
        Transform[] bones = boneLst.ToArray();

        // init curves for each bone
        for (int idx = 0; idx < bones.Length; ++idx)
        {
            Transform oneBone = bones[idx];
            string    trPath  = AnimationUtility.CalculateTransformPath(oneBone, animatorTr);

            var curves = new _Curves();
            curves.relPath = trPath;

            curveDict.Add(oneBone, curves);
        }

        // init rootmotion curve
        {
            var curves = new _Curves();
            curveDict.Add(animatorTr, curves);
        }

        AnimatorStateInfo curStateInfo = m_Animator.GetCurrentAnimatorStateInfo(0);
        float             nt           = curStateInfo.normalizedTime;
        m_Animator.Update(-nt * clipLen); //revert to 0 time

        {                                 // 1. bake animation info into curve on all bones transform
            float time      = 0f;
            float deltaTime = 1f / (SAMPLE_RATE);
            for (;
                 time <= clipLen || Mathf.Approximately(time, clipLen);
                 )
            {
                //Dbg.Log("nt = {0}", m_Animator.GetCurrentAnimatorStateInfo(0).normalizedTime);

                // bone
                for (int idx = 0; idx < bones.Length; ++idx)
                {
                    Transform oneBone = bones[idx];
                    _Curves   curves  = curveDict[oneBone];

                    if (oneBone == hipsBone)
                    {
                        continue; //skip the HipsBone. This is to add rootMotion matrix on hips, so Legacy is right
                    }
                    Vector3    pos = oneBone.localPosition;
                    Quaternion rot = oneBone.localRotation;

                    curves.X.AddKey(time, rot.x);
                    curves.Y.AddKey(time, rot.y);
                    curves.Z.AddKey(time, rot.z);
                    curves.W.AddKey(time, rot.w);

                    curves.PX.AddKey(time, pos.x);
                    curves.PY.AddKey(time, pos.y);
                    curves.PZ.AddKey(time, pos.z);
                }

                // root motion process
                {
                    { //on Animator transform
                        Vector3 pos = /*animatorTr.localPosition*/ animatorTr.position;
                        Vector3 fwd = animatorTr.forward;
                        Vector3 up  = animatorTr.up;

                        _Curves rootMotionCurves = curveDict[animatorTr];
                        Vector3 lpos             = animatorInitW2LMat.MultiplyPoint(pos);
                        Vector3 lfwd             = animatorInitW2LMat.MultiplyVector(fwd);
                        Vector3 lup = animatorInitW2LMat.MultiplyVector(up);

                        Quaternion rot = Quaternion.LookRotation(lfwd, lup);

                        rootMotionCurves.X.AddKey(time, rot.x);
                        rootMotionCurves.Y.AddKey(time, rot.y);
                        rootMotionCurves.Z.AddKey(time, rot.z);
                        rootMotionCurves.W.AddKey(time, rot.w);

                        rootMotionCurves.PX.AddKey(time, lpos.x);
                        rootMotionCurves.PY.AddKey(time, lpos.y);
                        rootMotionCurves.PZ.AddKey(time, lpos.z);
                    }

                    { //on hips transform
                        if (hipsBone != null)
                        {
                            Vector3 pos = hipsBone.position;
                            Vector3 fwd = hipsBone.forward;
                            Vector3 up  = hipsBone.up;

                            _Curves hipsCurves = curveDict[hipsBone];
                            Vector3 lpos       = hipsInitW2LMat.MultiplyPoint(pos);
                            Vector3 lfwd       = hipsInitW2LMat.MultiplyVector(fwd);
                            Vector3 lup        = hipsInitW2LMat.MultiplyVector(up);

                            //Dbg.Log("time: {0}, lpos: {1}", time, lpos.ToString("F2"));

                            Quaternion rot = Quaternion.LookRotation(lfwd, lup);

                            hipsCurves.X.AddKey(time, rot.x);
                            hipsCurves.Y.AddKey(time, rot.y);
                            hipsCurves.Z.AddKey(time, rot.z);
                            hipsCurves.W.AddKey(time, rot.w);

                            hipsCurves.PX.AddKey(time, lpos.x);
                            hipsCurves.PY.AddKey(time, lpos.y);
                            hipsCurves.PZ.AddKey(time, lpos.z);
                        }
                    }
                }

                if (!Mathf.Approximately(time + deltaTime, clipLen))
                {
                    m_Animator.Update(deltaTime);
                    time += deltaTime;
                }
                else
                {
                    m_Animator.Update(deltaTime - 0.005f); //keep it in the range, if go beyond, something bad could happen
                    time += deltaTime - 0.005f;
                }
            }
        } //end of 1.


        { // 2. set animation clip and store in AssetDatabase
            AnimationClip newClip = new AnimationClip();
            newClip.frameRate   = SAMPLE_RATE;
            newClip.localBounds = clip.localBounds;

            // set bone curves
            for (var ie = curveDict.GetEnumerator(); ie.MoveNext();)
            {
                var curves = ie.Current.Value;
                if (ie.Current.Key == animatorTr)
                { //root motion
                    newClip.SetCurve(curves.relPath, typeof(Animator), "MotionT.x", curves.PX);
                    newClip.SetCurve(curves.relPath, typeof(Animator), "MotionT.y", curves.PY);
                    newClip.SetCurve(curves.relPath, typeof(Animator), "MotionT.z", curves.PZ);

                    newClip.SetCurve(curves.relPath, typeof(Animator), "MotionQ.x", curves.X);
                    newClip.SetCurve(curves.relPath, typeof(Animator), "MotionQ.y", curves.Y);
                    newClip.SetCurve(curves.relPath, typeof(Animator), "MotionQ.z", curves.Z);
                    newClip.SetCurve(curves.relPath, typeof(Animator), "MotionQ.w", curves.W);
                }
                else
                {
                    newClip.SetCurve(curves.relPath, typeof(Transform), "localRotation.x", curves.X);
                    newClip.SetCurve(curves.relPath, typeof(Transform), "localRotation.y", curves.Y);
                    newClip.SetCurve(curves.relPath, typeof(Transform), "localRotation.z", curves.Z);
                    newClip.SetCurve(curves.relPath, typeof(Transform), "localRotation.w", curves.W);

                    newClip.SetCurve(curves.relPath, typeof(Transform), "localPosition.x", curves.PX);
                    newClip.SetCurve(curves.relPath, typeof(Transform), "localPosition.y", curves.PY);
                    newClip.SetCurve(curves.relPath, typeof(Transform), "localPosition.z", curves.PZ);
                }
            }

            // 2.1 copy the unmapped curves to new clip( not mapped by Muscle clip )
            _CopyOtherCurves(newClip, clip);

            // some setting work
            newClip.EnsureQuaternionContinuity();

#if !U5
            AnimationUtility.SetAnimationType(newClip, m_AnimType);
            RCall.CallMtd("UnityEditor.AnimationUtility", "SetAnimationClipSettings", null, newClip, clipSetting);
#else
            if (m_AnimType == ModelImporterAnimationType.Legacy)
            {
                newClip.legacy = true;
            }
            AnimationUtility.SetAnimationClipSettings(newClip, clipSetting);
#endif

            EUtil.SaveAnimClip(newClip, newClipAssetPath);

            EUtil.ShowNotification("Converted to: " + m_AnimType +
                                   (hipsBone != null ? ("\nroot=" + AnimationUtility.CalculateTransformPath(hipsBone, animatorTr)) : ""),
                                   3f
                                   );
        } //end of 2.

        // 3. clean job
        curveDict = null;
        AssetDatabase.SaveAssets();

        Dbg.Log("Converted: {0}", newClipAssetPath);
    }
        public override void OnInspectorGUI()
        {
            ConstraintStack cstack = (ConstraintStack)target;

            serializedObject.Update();

            GUILayout.Space(3f);

            // constraints
            for (int i = 0; i < cstack.constraintCount; ++i)
            {
                BaseConstraint c = cstack.Get(i);
                if (!c)
                { //remove broken reference
                    cstack.RemoveAt(i);
                    --i;
                    continue;
                }

                // draw constraint & buttons
                EditorGUILayout.BeginHorizontal();
                {
                    Color btnColor = c.IsActiveConstraint ? Color.white : Color.red;
                    EUtil.PushBackgroundColor(btnColor);
                    var  content = new GUIContent(c.GetType().Name, "Click to fold other components");
                    Rect rc      = GUILayoutUtility.GetRect(content, EditorStyles.toolbarButton);
                    if (GUI.Button(rc, content, EditorStyles.toolbarButton))
                    {
                        _FoldComponents(cstack);
                        var wnd = EditorEditorWindow.OpenWindowWithActivatorRect(c, rc);
                        EUtil.SetEditorWindowTitle(wnd, content.text);
                    }
                    EditorGUI.ProgressBar(rc, c.Influence, content.text);
                    EUtil.PopBackgroundColor();

                    if (GUILayout.Button(new GUIContent(c.IsActiveConstraint ? EConUtil.activeBtn : EConUtil.inactiveBtn, "Toggle constraint active state"), EditorStyles.toolbarButton, GUILayout.Height(20), GUILayout.Width(20)))
                    {
                        c.IsActiveConstraint = !c.IsActiveConstraint;
                        EditorUtility.SetDirty(cstack);
                    }

                    EUtil.PushGUIEnable(i != 0);
                    if (GUILayout.Button(new GUIContent(EConUtil.upBtn, "move up"), EditorStyles.toolbarButton, GUILayout.Height(20), GUILayout.Width(20)))
                    {
                        cstack.Swap(i, i - 1);
                        EditorUtility.SetDirty(cstack);
                        //ComponentUtility.MoveComponentUp(c);
                    }
                    EUtil.PopGUIEnable();

                    EUtil.PushGUIEnable(i != cstack.constraintCount - 1);
                    if (GUILayout.Button(new GUIContent(EConUtil.downBtn, "move down"), EditorStyles.toolbarButton, GUILayout.Height(20), GUILayout.Width(20)))
                    {
                        cstack.Swap(i, i + 1);
                        EditorUtility.SetDirty(cstack);
                        //ComponentUtility.MoveComponentDown(c);
                    }
                    EUtil.PopGUIEnable();

                    if (GUILayout.Button(new GUIContent(EConUtil.deleteBtn, "delete the constraint from stack"), EditorStyles.toolbarButton, GUILayout.Height(20), GUILayout.Width(20)))
                    {
                        MUndo.RecordObject(cstack, "Remove Constraint");
                        cstack.RemoveAt(i);
                        EditorUtility.SetDirty(cstack);
                        _FoldComponents(cstack);
                        EditorGUIUtility.ExitGUI();
                    }
                }
                EditorGUILayout.EndHorizontal();
            } //for(int i=0; i<cstack.constraintCount; ++i)

            GUILayout.Space(2f);

            EditorGUI.BeginChangeCheck();
            int newOrder = EditorGUILayout.IntField(new GUIContent("Exec Order", "used to help decide evaluation order, the smaller the earlier"), cstack.ExecOrder);

            if (EditorGUI.EndChangeCheck())
            {
                cstack.ExecOrder = newOrder;
            }

            { //new constraint window
                EUtil.DrawSplitter(new Color(1, 1, 1, 0.3f));

                EditorGUILayout.BeginHorizontal();
                GUILayout.Space(15f);
                var  content = new GUIContent("Add Constraint", "Add new constraint into current stack");
                Rect btnRc   = GUILayoutUtility.GetRect(content, GUI.skin.button);
                if (GUI.Button(btnRc, content))
                {
                    var  wnd   = ScriptableObject.CreateInstance <ConstraintsWindow>();
                    Rect wndRc = EUtil.GetRectByActivatorRect(wnd.position, btnRc);
                    wnd.position = wndRc;
                    wnd.SetConstraintStack(cstack);
                    wnd.ShowPopup();
                    wnd.Focus();
                }
                GUILayout.Space(15f);
                EditorGUILayout.EndHorizontal();
            }


            if (Pref.ShowInitInfos)
            {
                EditorGUILayout.PropertyField(m_spInitInfo, true);
            }



            serializedObject.ApplyModifiedProperties();
        }
Beispiel #22
0
        public static void OpenWindow()
        {
            var wnd = EditorWindow.GetWindow(typeof(AnimationBaker));

            EUtil.SetEditorWindowTitle(wnd, "AnimationBaker");
        }
Beispiel #23
0
 public void Draw()
 {
     Graphics.DrawMesh(m_Mesh, Matrix4x4.identity, m_Mat, m_Layer,
                       EUtil.GetSceneView().camera, 0,
                       m_matProps, false, false);
 }
        public static void OpenWindow()
        {
            var wnd = GetWindow(typeof(EDataInspector));

            EUtil.SetEditorWindowTitle(wnd, "EData");
        }
        public override void OnInspectorGUI()
        {
            MaintainVolume cp = (MaintainVolume)target;

            EditorGUI.BeginChangeCheck();

            EConUtil.DrawActiveLine(cp);

            EUtil.DrawSplitter();

            EUtil.PushGUIEnable(cp.IsActiveConstraint);
            {
                // base volume
                cp.BaseVolume = EditorGUILayout.FloatField(new GUIContent("Base", "the base value of volume, the product of xyz component of scale"), cp.BaseVolume);
                cp.BaseVolume = Mathf.Max(cp.BaseVolume, 0.01f);

                //affect X/Y/Z
                m_foldoutAxis = EditorGUILayout.Foldout(m_foldoutAxis, "Axis");
                if (m_foldoutAxis)
                {
                    EAxis eAffect = cp.FreeAxis;

                    EditorGUILayout.BeginHorizontal();
                    {
                        EUtil.PushBackgroundColor(eAffect == EAxis.X ? EConUtil.kSelectedBtnColor : Color.white);
                        if (GUILayout.Button(new GUIContent("X", "X axis as main axis"), EditorStyles.toolbarButton))
                        {
                            eAffect = EAxis.X;
                        }
                        EUtil.PopBackgroundColor();

                        EUtil.PushBackgroundColor(eAffect == EAxis.Y ? EConUtil.kSelectedBtnColor : Color.white);
                        if (GUILayout.Button(new GUIContent("Y", "Y axis as main axis"), EditorStyles.toolbarButton))
                        {
                            eAffect = EAxis.Y;
                        }
                        EUtil.PopBackgroundColor();

                        EUtil.PushBackgroundColor(eAffect == EAxis.Z ? EConUtil.kSelectedBtnColor : Color.white);
                        if (GUILayout.Button(new GUIContent("Z", "Z axis as main axis"), EditorStyles.toolbarButton))
                        {
                            eAffect = EAxis.Z;
                        }
                        EUtil.PopBackgroundColor();
                    }
                    EditorGUILayout.EndHorizontal();

                    cp.FreeAxis = eAffect;

                    GUILayout.Space(5f);
                }

                // vol mul
                cp.VolMul = EditorGUILayout.FloatField(new GUIContent("Multiplier", "extra multiplier on base volume"), cp.VolMul);

                // space
                m_foldoutSpace = EditorGUILayout.Foldout(m_foldoutSpace, "Space Mapping");
                if (m_foldoutSpace)
                {
                    // owner space
                    cp.OwnerSpace = (ESpace)EditorGUILayout.EnumPopup("Owner Space", cp.OwnerSpace);
                    GUILayout.Space(5f);
                }

                // influence
                cp.Influence = EUtil.ProgressBar(cp.Influence, 0, 1f, "Influence: {0:F2}");
            }
            EUtil.PopGUIEnable();

            if (EditorGUI.EndChangeCheck())
            {
                EditorUtility.SetDirty(cp); //so ConstraintStack.Update can be called in edit-mode
            }
        }
        public override void OnInspectorGUI()
        {
            TransformMapping cp = (TransformMapping)target;

            EditorGUI.BeginChangeCheck();

            EConUtil.DrawActiveLine(cp);

            //constraint target
            cp.Target = (Transform)EditorGUILayout.ObjectField("Target Obj", cp.Target, typeof(Transform), true);
            if (cp.Target && !ConstraintEditorUtil.IsTargetHasAllUniformScaleInHierarchy(cp.Target))
            {
                ConstraintEditorUtil.NonUniformScaleWarning(cp.Target);
            }

            EUtil.DrawSplitter();

            EUtil.PushGUIEnable(cp.IsActiveConstraint && cp.Target);
            {
                //mapping
                m_foldoutMapping = EditorGUILayout.Foldout(m_foldoutMapping, "Mapping");
                if (m_foldoutMapping)
                {
                    //source (from target)
                    ETransformData eSrcType = cp.SrcDataType;
                    EConUtil.DrawChooseTransformData(ref eSrcType, "Src data type", "which data of transform of target is taken as source");
                    cp.SrcDataType = eSrcType;

                    //destination (to owner)
                    ETransformData eDstType = cp.DstDataType;
                    EConUtil.DrawChooseTransformData(ref eDstType, "Dst data type", "which data of transform of target is taken as source");
                    cp.DstDataType = eDstType;

                    // XYZ mapping
                    GUILayout.Label("Source to Destination Mapping:");
                    for (int i = 0; i < 3; ++i)
                    {
                        EditorGUILayout.BeginHorizontal();
                        cp.Mapping[i] = (EAxis)EditorGUILayout.EnumPopup(cp.Mapping[i]);
                        GUILayout.Label(" >> " + (char)('X' + i));
                        EditorGUILayout.EndHorizontal();
                    }

                    // extrapolate
                    cp.Extrapolate = EditorGUILayout.Toggle(new GUIContent("Extrapolate", "will extend the range outside specified range"), cp.Extrapolate);

                    GUILayout.Space(5f);
                }

                //source data range
                m_foldoutSrcRange = EditorGUILayout.Foldout(m_foldoutSrcRange, "Source Range");
                if (m_foldoutSrcRange)
                {
                    Vector3 srcFrom = cp.SrcFrom;
                    Vector3 srcTo   = cp.SrcTo;
                    EConUtil.DrawAxisRange(ref srcFrom, ref srcTo);
                    cp.SrcFrom = srcFrom;
                    cp.SrcTo   = srcTo;
                    GUILayout.Space(5f);
                }

                //dest data range
                m_foldoutDstRange = EditorGUILayout.Foldout(m_foldoutDstRange, "Destination Range");
                if (m_foldoutDstRange)
                {
                    Vector3 dstFrom = cp.DstFrom;
                    Vector3 dstTo   = cp.DstTo;
                    EConUtil.DrawAxisRange(ref dstFrom, ref dstTo);
                    cp.DstFrom = dstFrom;
                    cp.DstTo   = dstTo;
                    GUILayout.Space(5f);
                }

                // space mapping
                m_foldoutSpace = EditorGUILayout.Foldout(m_foldoutSpace, "Space Mapping");
                if (m_foldoutSpace)
                {
                    // target space
                    cp.TargetSpace = (ESpace)EditorGUILayout.EnumPopup("Target Space", cp.TargetSpace);

                    // owner space
                    cp.OwnerSpace = (ESpace)EditorGUILayout.EnumPopup("Owner Space", cp.OwnerSpace);
                    GUILayout.Space(5f);
                }

                // influence
                cp.Influence = EUtil.ProgressBar(cp.Influence, 0, 1f, "Influence: {0:F2}");
            }
            EUtil.PopGUIEnable();

            if (EditorGUI.EndChangeCheck())
            {
                EditorUtility.SetDirty(cp); //so ConstraintStack.Update can be called in edit-mode
            }
        }
Beispiel #27
0
        void OnGUI()
        {
            EditorGUILayout.LabelField("Set the Roots:");
            for (int i = 0; i < m_Roots.Count; ++i)
            {
                EditorGUILayout.BeginHorizontal();
                {
                    EditorGUI.BeginChangeCheck();
                    var root = (Transform)EditorGUILayout.ObjectField(m_Roots[i], typeof(Transform), true);
                    if (EditorGUI.EndChangeCheck())
                    {
                        m_Roots[i] = root;
                    }
                    if (EUtil.Button("-", "delete entry", Color.red, GUILayout.Width(20f)))
                    {
                        m_Roots.RemoveAt(i);
                        GUIUtility.ExitGUI();
                    }
                }
                EditorGUILayout.EndHorizontal();
            }

            EditorGUILayout.BeginHorizontal();
            {
                GUILayout.Space(40f);
                if (GUILayout.Button("Add Root Entry"))
                {
                    m_Roots.Add(null);
                }
                GUILayout.Space(40f);
            }
            EditorGUILayout.EndHorizontal();

            GUILayout.Space(5f);

            if (GUILayout.Button(m_baking ? "Baking" : "Not Baking", EditorStyles.toolbarButton))
            {
                m_baking = !m_baking;

                if (m_baking)
                {
                    m_Trs.Clear();
                    foreach (var oneRoot in m_Roots)
                    {
                        for (var ie = oneRoot.GetRecurEnumerator(); ie.MoveNext();)
                        {
                            m_Trs.Add(ie.Current);
                        }
                    }

                    m_TrsArr = m_Trs.ToArray();
                    m_uaw    = EUtil.GetUnityAnimationWindow();
                    if (null == m_uaw)
                    {
                        m_baking = false;
                    }
                }
            }

            if (!m_baking)
            {
                EditorWindow uaw = (EditorWindow)EUtil.GetUnityAnimationWindow();
                if (uaw == null)
                {
                    EditorGUIUtility.ExitGUI();
                }
                object uawstate = EUtil.GetUnityAnimationWindowState(uaw);
                if (uawstate == null)
                {
                    EditorGUIUtility.ExitGUI();
                }
                var clip = RCall.GetField("UnityEditorInternal.AnimationWindowState",
                                          "m_ActiveAnimationClip", uawstate) as AnimationClip;
                if (clip == null)
                {
                    EditorGUIUtility.ExitGUI();
                }

                GUILayout.Space(5f);

                if (GUILayout.Button(new GUIContent("Compress Angles", "Only use this method on a clips full of keyframes"), EditorStyles.toolbarButton))
                {
                    _NormalizeRotationsInClip(uawstate, clip);
                }
            }
        }
Beispiel #28
0
        public override void OnInspectorGUI()
        {
            if (targets.Length > 1)
            {
                EditorGUILayout.HelpBox("Cannot edit multiple spline together", MessageType.Info, true);
                ms_isMultiEdit = true;
                return;
            }
            else
            {
                ms_isMultiEdit = false;
            }

            CatmullRomCentripetalBehaviour behaviour = (CatmullRomCentripetalBehaviour)target;
            CatmullRomCentripetal          spline    = (CatmullRomCentripetal)behaviour.Spline;

            GUILayout.Space(5f);
            EditorGUILayout.BeginHorizontal();
            {
                if (GUILayout.Button(new GUIContent("Add Point", "hotkey: I"), EditorStyles.toolbarButton))
                {
                    _AddPoint(spline);
                }
                if (GUILayout.Button(new GUIContent("Del Point", "hotkey: X"), EditorStyles.toolbarButton))
                {
                    _DelPoint(spline);
                }
                if (GUILayout.Button(spline.Cycle ? "Break Cycle" : "Make Cycle", EditorStyles.toolbarButton))
                {
                    _ToggleCycle(spline);
                }
            }
            EditorGUILayout.EndHorizontal();
            GUILayout.Space(5f);

            if (m_curPtIdx >= 0)
            {
                EditorGUILayout.BeginHorizontal();
                {
                    MUndo.RecordObject(this, "change current point");
                    GUILayout.Label("Current Point");
                    if (GUILayout.Button("<<"))
                    {
                        m_curPtIdx = Mathf.Max(0, m_curPtIdx - 1);
                    }

                    EditorGUI.BeginChangeCheck();
                    m_curPtIdx = EditorGUILayout.IntField(m_curPtIdx);
                    if (EditorGUI.EndChangeCheck())
                    {
                        m_curPtIdx = Mathf.Clamp(m_curPtIdx, 0, spline.PointCount);
                    }

                    GUILayout.Label(" / " + (spline.PointCount - 1));
                    if (GUILayout.Button(">>"))
                    {
                        m_curPtIdx = Mathf.Min(m_curPtIdx + 1, spline.PointCount - 1);
                    }
                }
                EditorGUILayout.EndHorizontal();

                MUndo.RecordObject(target, "modify control point");
                EUtil.PushLabelWidth(80f);
                spline[m_curPtIdx] = EUtil.DrawV3P(new GUIContent("Position"), spline[m_curPtIdx]);
                spline.SetTilt(m_curPtIdx, EditorGUILayout.FloatField("Tilt", spline.GetTilt(m_curPtIdx)));
                EUtil.PopLabelWidth();
            }

            ms_foldoutSettings = EditorGUILayout.Foldout(ms_foldoutSettings, "Settings");
            if (ms_foldoutSettings)
            {
                MUndo.RecordObject(this, "change setting");
                spline.Resolution = EditorGUILayout.IntField("Point/Seg", spline.Resolution);
                spline.TwistMtd   = (ETwistMethod)EditorGUILayout.EnumPopup(new GUIContent("Twist Method", "Decide how to calculate the base-up direction before applying tilt"), spline.TwistMtd);
                ms_drawArrow      = EditorGUILayout.Toggle("Draw Arrow", ms_drawArrow);
                ms_drawUp         = EditorGUILayout.Toggle("Draw Up", ms_drawUp);
                ms_arrowLineLen   = EditorGUILayout.FloatField("Arrow LineLen", ms_arrowLineLen);

                ms_drawPts = EditorGUILayout.Toggle("Draw points", ms_drawPts);
                ms_ptSize  = EditorGUILayout.FloatField("Point size", ms_ptSize);

                ms_lookAtDist = EditorGUILayout.FloatField(new GUIContent("LookAt dist", "the distance from camera to target point when camera in follow mode"), ms_lookAtDist);
            }

            ms_foldoutTSlider = EditorGUILayout.Foldout(ms_foldoutTSlider, "T slider");
            if (ms_foldoutTSlider)
            {
                EditorGUI.BeginChangeCheck();
                EUtil.PushLabelWidth(20f);
                m_tSlider = EditorGUILayout.Slider("T", m_tSlider, 0, 1f);
                EUtil.PopLabelWidth();
                if (EditorGUI.EndChangeCheck())
                {
                    //Transform tr = behaviour.transform;
                    EUtil.SceneViewLookAt(
                        behaviour.GetTransformedPosition(m_tSlider),
                        Quaternion.LookRotation(behaviour.GetTransformedTangent(m_tSlider), behaviour.GetTransformedUp(m_tSlider)),
                        ms_lookAtDist);
                }
            }

            if (GUI.changed)
            {
                EUtil.RepaintSceneView();
            }
        }
Beispiel #29
0
        public static List <EEvento> listarEvento(EEvento objE)
        {
            List <EEvento> lista = new List <EEvento>();

            using (SqlConnection cn = new SqlConnection(DConexion.Get_Connection(DConexion.DataBase.CnRumpSql)))
            {
                SqlCommand cmd = new SqlCommand("usp_mnt_evento", cn);
                cmd.Parameters.AddWithValue("@evento_tipo_id", objE.EVENTO_TIPO_ID);
                cmd.Parameters.AddWithValue("@mascota_id", (objE.MASCOTA_ID_ENCRIP == "" ? 0 : Convert.ToInt32(EUtil.getDesencriptar(objE.MASCOTA_ID_ENCRIP))));
                cmd.Parameters.AddWithValue("@usuario_id", objE.USUARIO_ID);
                cmd.Parameters.AddWithValue("@opcion", 1);
                cmd.CommandType = CommandType.StoredProcedure;
                cn.Open();
                SqlDataReader dr = cmd.ExecuteReader();
                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        EEvento mItem = new EEvento();
                        //mItem.ID = dr.IsDBNull(dr.GetOrdinal("id")) ? 0 : dr.GetDecimal(dr.GetOrdinal("id"));
                        mItem.ID_ENCRIP         = EUtil.getEncriptar((dr.IsDBNull(dr.GetOrdinal("id")) ? 0 : dr.GetDecimal(dr.GetOrdinal("id"))).ToString());
                        mItem.EVENTO_TIPO_ID    = dr.IsDBNull(dr.GetOrdinal("EVENTO_TIPO_ID")) ? 0 : dr.GetDecimal(dr.GetOrdinal("EVENTO_TIPO_ID"));
                        mItem.TIPO              = dr.IsDBNull(dr.GetOrdinal("TIPO")) ? string.Empty : dr.GetString(dr.GetOrdinal("TIPO"));
                        mItem.MASCOTA_ID        = dr.IsDBNull(dr.GetOrdinal("MASCOTA_ID")) ? 0 : dr.GetDecimal(dr.GetOrdinal("MASCOTA_ID"));
                        mItem.MASCOTA_ID_ENCRIP = EUtil.getEncriptar(mItem.MASCOTA_ID.ToString());
                        mItem.MASCOTA           = dr.IsDBNull(dr.GetOrdinal("MASCOTA")) ? string.Empty : dr.GetString(dr.GetOrdinal("MASCOTA"));
                        mItem.TITULO            = dr.IsDBNull(dr.GetOrdinal("TITULO")) ? string.Empty : dr.GetString(dr.GetOrdinal("TITULO"));
                        mItem.FECHA_INICIO      = dr.IsDBNull(dr.GetOrdinal("FECHA_INICIO")) ? DateTime.MinValue : dr.GetDateTime(dr.GetOrdinal("FECHA_INICIO"));
                        mItem.FECHA_FIN         = dr.IsDBNull(dr.GetOrdinal("FECHA_FIN")) ? DateTime.MinValue : dr.GetDateTime(dr.GetOrdinal("FECHA_FIN"));
                        lista.Add(mItem);
                    }
                }
            }
            return(lista);
        }
Beispiel #30
0
    void OnGUI()
    {
        if (EditorApplication.isPlayingOrWillChangePlaymode)
        {
            return;
        }

        bool bIsCutScene = m_evtGoRoot != null;

        EUtil.PushGUIColor(bIsCutScene ? Color.green : Color.red);
        EditorGUILayout.LabelField(string.Format("AnimClip Root: {0}",
                                                 (m_ClipRoot == null ? "null" : m_ClipRoot.name)
                                                 ));
        EUtil.PopGUIColor();


        Color  c;
        String msg;

        if (bIsCutScene)
        {
            if (EUtil.Button("Sync AnimEvents with EventGO", Color.green))
            {
                _MatchEventGOAndAnimEvent();
            }

            if (EUtil.Button("Remove Animation/Animator on decendants", Color.yellow))
            {
                _RemoveAnimCompsOnDecendants();
            }

            if (EUtil.Button("Fix Duplicate Transform Path", Color.white))
            {
                _FixDuplicateTransformPath();
            }

            c   = m_bShowMark4SelectedCurves ? Color.green : Color.red;
            msg = m_bShowMark4SelectedCurves ? "Hide Marks for Selected Curves" : "Show Marks for Selected Curves";
            if (EUtil.Button(msg, c))
            {
                m_bShowMark4SelectedCurves = !m_bShowMark4SelectedCurves;
                SceneView.RepaintAll();
            }
        }
        else
        {
            if (EUtil.Button("New CCRoot", Color.green))
            {
                GameObject newCCRoot = new GameObject();
                newCCRoot.name = "NewCCRoot";
                newCCRoot.AddComponent <CutsceneController>();
                var anim = newCCRoot.AddComponent <Animation>();
                anim.playAutomatically = false;

                Misc.ForceGetGO(EventGOS, newCCRoot);
                Selection.activeGameObject = newCCRoot;
            }

            c   = m_bShowMark4SelectedCurves ? Color.green : Color.red;
            msg = m_bShowMark4SelectedCurves ? "Hide Marks for Selected Curves" : "Show Marks for Selected Curves";
            if (EUtil.Button(msg, c))
            {
                m_bShowMark4SelectedCurves = !m_bShowMark4SelectedCurves;
                SceneView.RepaintAll();
            }
        }
    }