public override void GetValueFromReferences()
 {
     if (FormType == ValueFormType.Value)
         foreach (Vector4Value val in ReferenceValues)
         {
             if (val == ReferenceValues.First.Value)
             {
                 Name = val.Name;
                 XHolder.set(val.get().X, false);
                 YHolder.set(val.get().Y, false);
                 ZHolder.set(val.get().Z, false);
                 WHolder.set(val.get().Z, false);
             }
             else
             {
                 if (XHolder.Value != val.get().X)
                     XHolder.set(true);
                 if (YHolder.Value != val.get().Y)
                     YHolder.set(true);
                 if (ZHolder.Value != val.get().Z)
                     ZHolder.set(true);
                 if (WHolder.Value != val.get().W)
                     WHolder.set(true);
             }
         }
     else
         foreach (Vector4Parameter val in ReferenceParameters)
         {
             if (val == ReferenceParameters.First.Value)
             {
                 Name = val.Name;
                 XHolder.set(val.get().X, false);
                 YHolder.set(val.get().Y, false);
                 ZHolder.set(val.get().Z, false);
                 WHolder.set(val.get().Z, false);
             }
             else
             {
                 if (XHolder.Value != val.get().X)
                     XHolder.set(true);
                 if (YHolder.Value != val.get().Y)
                     YHolder.set(true);
                 if (ZHolder.Value != val.get().Z)
                     ZHolder.set(true);
                 if (WHolder.Value != val.get().W)
                     WHolder.set(true);
             }
         }
 }
예제 #2
0
        public override void GetValueFromReferences()
        {
            if (FormType == ValueFormType.Value)
            {
                if (editType == EditType.Basic)
                {
                    foreach (Vector3Value val in ReferenceValues)
                    {
                        if (val == ReferenceValues.First.Value)
                        {
                            Name = val.Name;
                            XHolder.set(val.get().X, false);
                            YHolder.set(val.get().Y, false);
                            ZHolder.set(val.get().Z, false);
                        }
                        else
                        {
                            if (XHolder.Value != val.get().X)
                            {
                                XHolder.set(true);
                            }
                            if (YHolder.Value != val.get().Y)
                            {
                                YHolder.set(true);
                            }
                            if (ZHolder.Value != val.get().Z)
                            {
                                ZHolder.set(true);
                            }
                        }
                    }
                }
                if (editType == EditType.Scalar)
                {
                    foreach (Vector3Value val in ReferenceValues)
                    {
                        if (val == ReferenceValues.First.Value)
                        {
                            Name = val.Name;
                            XHolder.set(val.get().X, false);
                            YHolder.set(val.get().Y, false);
                            ZHolder.set(val.get().Z, false);
                        }
                        else
                        {
                            if (XHolder.Value != val.get().X)
                            {
                                XHolder.set(1);
                            }
                            if (YHolder.Value != val.get().Y)
                            {
                                YHolder.set(1);
                            }
                            if (ZHolder.Value != val.get().Z)
                            {
                                ZHolder.set(1);
                            }
                        }
                        OldValue = new Vector3(XHolder.Value, YHolder.Value, ZHolder.Value);
                    }
                }
                if (editType == EditType.Average)
                {
                    OldValue = Vector3.Zero;
                    Name     = ReferenceValues.First.Value.Name;

                    foreach (Vector3Value val in ReferenceValues)
                    {
                        OldValue += val.get();
                    }

                    OldValue /= ReferenceValues.Count;
                    XHolder.set(OldValue.X, false);
                    YHolder.set(OldValue.Y, false);
                    ZHolder.set(OldValue.Z, false);
                }
            }
            else
            {
                foreach (Vector3Parameter val in ReferenceParameters)
                {
                    if (val == ReferenceParameters.First.Value)
                    {
                        Name = val.Name;
                        XHolder.set(val.get().X, false);
                        YHolder.set(val.get().Y, false);
                        ZHolder.set(val.get().Z, false);
                    }
                    else
                    {
                        if (XHolder.Value != val.get().X)
                        {
                            XHolder.set(true);
                        }
                        if (YHolder.Value != val.get().Y)
                        {
                            YHolder.set(true);
                        }
                        if (ZHolder.Value != val.get().Z)
                        {
                            ZHolder.set(true);
                        }
                    }
                }
            }
        }