Ejemplo n.º 1
0
        private void UpdateVisuals()
        {
            if (PreviousSliderAxis != sliderAxis)
            {
                //UpdateSliderHandleOrientation();
                UpdateSliderOrientation();

                PreviousSliderAxis = sliderAxis;
            }
        }
Ejemplo n.º 2
0
        //////////////////////////////////////////////////////////

        public PhysXSliderJoint(Body body1, Body body2)
            : base(body1, body2, new SliderAxis())
        {
            axis       = (SliderAxis)Axis;
            axis.joint = this;
        }
Ejemplo n.º 3
0
		//

		public ODESliderJoint( Body body1, Body body2 )
			: base( body1, body2, new SliderAxis() )
		{
			axis = (SliderAxis)Axis;
			axis.joint = this;
		}
Ejemplo n.º 4
0
        private void OnGUI()
        {
            PrepareStyles();
            UpdatePickerCoordinates();

            EditorGUI.BeginChangeCheck();
            EditorGUI.BeginChangeCheck();
            colourModel = (Colour.Model)EditorGUILayout.Popup("Colour Space", (int)colourModel, System.Enum.GetNames(typeof(Colour.Model)));
            sliderAxis = (SliderAxis)EditorGUILayout.Popup("Slider Axis", (int)sliderAxis, System.Enum.GetNames(typeof(SliderAxis)));
            workingSpace = (Colour.RGBSpace)EditorGUILayout.Popup("Working Colour Space", (int)workingSpace, System.Enum.GetNames(typeof(Colour.RGBSpace)));
            if (EditorGUI.EndChangeCheck())
            {
                Double3 newPickFrac = GetPickerCoords(currentColourXYZ, colourModel, workingSpace);
                Double3 pick = newPickFrac * maxValue;
                pickerCoords = new Int4(Mathf.RoundToInt((float)pick.x), Mathf.RoundToInt((float)pick.y), Mathf.RoundToInt((float)pick.z), pickerCoords.w);
            }
            limitingSpace = (Colour.RGBSpace)EditorGUILayout.Popup("Limiting Colour Space", (int)limitingSpace, System.Enum.GetNames(typeof(Colour.RGBSpace)));

            if (EditorGUI.EndChangeCheck())
            {
                pickerOutOfDate = sliderOutOfDate = true;
            }

            EditorGUILayout.Space();
            EditorGUILayout.ColorField(currentColourRGB);

            minSize = maxSize = new Vector2(textureSize + 60, textureSize + 280);

            UpdateTextures();

            GUI.DrawTexture(pickerRect, pickerTexture, ScaleMode.StretchToFill);
            GUI.DrawTexture(sliderRect, sliderTexture, ScaleMode.StretchToFill);
            for (int i = 0; i < altSliders; ++i)
                GUI.DrawTexture(sliderGroupRect[i], sliderGroupTexture[i], ScaleMode.StretchToFill);

            int circleSize = 8;
            int halfCircleSize = 4;

            if (Event.current.type == EventType.Repaint)
            {
                pickerBox.Draw(pickerRect, GUIContent.none, 0);
                pickerBox.Draw(sliderRect, GUIContent.none, 0);
                pickerCircle.Draw(new Rect(pickerCoords.x + 10 - halfCircleSize, ((textureSize - 1) - (pickerCoords.y)) + 120 - halfCircleSize, circleSize, circleSize), GUIContent.none, 0);
                sliderVertArrow.Draw(new Rect(textureSize + 18, (textureSize - 1) - (pickerCoords.z) + 117, 34, 8), GUIContent.none, 0);
                for (int i = 0; i < altSliders; ++i)
                {
                    sliderHorizArrow.Draw(new Rect(pickerCoords[i] + 7, sliderGroupRect[i].yMin - 4, 16, 28), GUIContent.none, 0);
                    pickerBox.Draw(sliderGroupRect[i], GUIContent.none, 0);
                }
            }

            Double4 pickerPosFraction = pickerCoords / maxValue;

            if (pickerOutOfDate == true || sliderOutOfDate == true)
            {
                Double4 arrangement = GetPickerArrangement(sliderAxis, pickerPosFraction);
                Colour pickedColour = GetWorkingSpaceColour(colourModel, workingSpace, arrangement);

                if (Colour.IsInsideGamut(pickedColour, limitingSpace))
                {
                    currentColourXYZ = pickedColour;
                    currentColourRGB = (Color)Colour.To_RGB(pickedColour, workingSpace);
                }
                else
                {
                    currentColourXYZ = new Colour(Double3.zero);
                    currentColourRGB = Color.black;
                }
            }

            currentColourRGB.a = (float)pickerPosFraction.w;

            Repaint();

            pickerOutOfDate = sliderOutOfDate = false;
        }
Ejemplo n.º 5
0
 private Double4 GetPickerArrangement(SliderAxis currentAxis, Double4 v)
 {
     return GetPickerArrangement(currentAxis, v.x, v.y, v.z, v.w);
 }
Ejemplo n.º 6
0
        private Double4 GetPickerArrangement(SliderAxis currentAxis, double x, double y, double z, double w)
        {
            Double4 arrangement = new Double4();
            arrangement.w = w;
            switch (currentAxis)
            {
                case SliderAxis.X:
                    arrangement.x = z;
                    arrangement.y = x;
                    arrangement.z = y;
                    break;

                case SliderAxis.Y:
                    arrangement.x = x;
                    arrangement.y = z;
                    arrangement.z = y;
                    break;

                case SliderAxis.Z:
                    arrangement.x = x;
                    arrangement.y = y;
                    arrangement.z = z;
                    break;
            }
            return arrangement;
        }