Esempio n. 1
0
    protected override void TranslateCallback(ModelTranslate_E _direction)
    {
        Vector3 dir = Vector3.zero;

        switch (_direction)
        {
        case ModelTranslate_E.Up:
            dir = selfcamera.transform.up;
            break;

        case ModelTranslate_E.Down:
            dir = -selfcamera.transform.up;
            break;

        case ModelTranslate_E.Left:
            dir = -selfcamera.transform.right;
            break;

        case ModelTranslate_E.Right:
            dir = selfcamera.transform.right;
            break;

        default:
            break;
        }

        transform.localPosition += dir * 0.02f;
        Vector3 v = transform.localPosition;
        //PlayerDataCenter.UpdataUserData(PlayerDataCenter.LoclaUserData.DataKey.Postion, v);
    }
    protected override void ScalerCallback(ModelTranslate_E escaler, float value)
    {
        Vector3 scaler = transform.localScale;

        switch (escaler)
        {
        case ModelTranslate_E.Scaler:
            scaler = new Vector3(value, value, value) * selforiginscaler;
            break;

        case ModelTranslate_E.ScalerX:
            scaler.x = value * selforiginscaler;
            break;

        case ModelTranslate_E.ScalerY:
            scaler.y = value * selforiginscaler;
            break;

        case ModelTranslate_E.ScalerZ:
            scaler.z = value * selforiginscaler;
            break;

        default:
            break;
        }
        transform.localScale = scaler;
    }
    QMsg CreatMsg(Model_E eventid, Model_E modleevent = Model_E.Begin, ModelTranslate_E modeltranslate = ModelTranslate_E.Begin, float valuedir = 0)
    {
        QMsg modelmsg = new ModelMsg()
        {
            EventID = (int)eventid, modelevent = modleevent, translateevent = modeltranslate, Changdir = valuedir
        };

        return(modelmsg);
    }
    /// 平移
    void OnTranslateChange(ModelTranslate_E mte)
    {
        QMsg modelmsg = new ModelMsg()
        {
            EventID = (int)Model_E.UserImport, translateevent = mte
        };

        ModelManager.Instance.SendMsg(modelmsg);
    }
    ///XYZ及等比缩放
    void OnScalerSliderChange(ModelTranslate_E mte, float endvalue)
    {
        QMsg modelmsg = new ModelMsg()
        {
            EventID = (int)Model_E.Normal, translateevent = mte, Changdir = endvalue
        };

        ModelManager.Instance.SendMsg(modelmsg);
    }
Esempio n. 6
0
    /// <summary>
    /// 根据发送来的消息回调刷新
    /// </summary>
    /// <param name="obj"></param>
    public override void HandlerEvent(QMsg obj)
    {
        ModelMsg mm = obj as ModelMsg;
        //主模型过程控制
        Model_E modelx = mm.modelevent;
        //modletranslate方式控制
        ModelTranslate_E mte = mm.translateevent;
        //传来的数据
        float value = mm.Changdir;

        //模型状态使用
        switch (modelx)
        {
        case Model_E.LoadModel:
            LoadModel(mm);
            break;

        case Model_E.Hidden:
            Hidden();
            break;

        case Model_E.Display:
            Display();
            break;

        case Model_E.SetCamera:
            selfcamera = mm.selfcamera;
            break;

        case Model_E.translate:
        case Model_E.Rotate:
        case Model_E.Scaler:
            modelcontrollmode = modelx;
            break;

        default:
            break;
        }

        //调整(位移旋转缩放)使用
        tranlatmode = mte;
        switch (mte)
        {
        case ModelTranslate_E.Up:
        case ModelTranslate_E.Down:
        case ModelTranslate_E.Left:
        case ModelTranslate_E.Right:
            TranslateCallback(mte);
            break;

        case ModelTranslate_E.Scaler:
        case ModelTranslate_E.ScalerX:
        case ModelTranslate_E.ScalerY:
        case ModelTranslate_E.ScalerZ:
            ScalerCallback(mte, value);
            break;

        case ModelTranslate_E.Rotate:
            RotateCallback(value);
            break;

        default:
            break;
        }

        //pointer使用
    }
Esempio n. 7
0
 /// <summary>
 /// 缩放控制回调
 /// </summary>
 /// <param name="escaler"></param>
 /// <param name="value"></param>
 protected virtual void ScalerCallback(ModelTranslate_E escaler, float value)
 {
 }
Esempio n. 8
0
 /// <summary>
 /// 移动控制回调
 /// </summary>
 /// <param name="_direction"></param>
 protected virtual void TranslateCallback(ModelTranslate_E _direction)
 {
 }