상속: CssPrimitiveValue
    public void TestGradValue()
    {
        angle = new CssPrimitiveAngleValue("100grad", false);
                Assert.AreEqual(100, angle.GetFloatValue(CssPrimitiveType.Grad));
                Assert.AreEqual(90, angle.GetFloatValue(CssPrimitiveType.Deg));
                Assert.AreEqual(Math.PI / 2, angle.GetFloatValue(CssPrimitiveType.Rad));

                angle = new CssPrimitiveAngleValue("600grad", false);
                Assert.AreEqual(200, angle.GetFloatValue(CssPrimitiveType.Grad));
    }
예제 #2
0
        /// <summary>
        /// Creates a SvgAngle value
        /// </summary>
        /// <param name="s">The string to parse for the angle value</param>
        /// <param name="defaultValue">The default value for the angle.</param>
        /// <param name="readOnly">Specifies if the value should be read-only</param>
        public SvgAngle(string baseVal, string defaultValue, bool readOnly)
        {
            baseVal = baseVal.Trim();
            if(baseVal.Length == 0) baseVal = defaultValue;

            baseVal = SvgNumber.ScientificToDec(baseVal);

            cssAngle = new CssPrimitiveAngleValue(baseVal, readOnly);

            this.readOnly = readOnly;
        }
    public void TestRadValue()
    {
        angle = new CssPrimitiveAngleValue("1rad", false);
                Assert.AreEqual(1, angle.GetFloatValue(CssPrimitiveType.Rad));
                Assert.AreEqual(1 * 180 / Math.PI, angle.GetFloatValue(CssPrimitiveType.Deg));
                Assert.AreEqual(1 * 200 / Math.PI, angle.GetFloatValue(CssPrimitiveType.Grad));

                angle = new CssPrimitiveAngleValue("-2rad", false);
                Assert.AreEqual(2*Math.PI - 2, angle.GetFloatValue(CssPrimitiveType.Rad));

                angle = new CssPrimitiveAngleValue("8rad", false);
                Assert.AreEqual(8%(2*Math.PI), angle.GetFloatValue(CssPrimitiveType.Rad));
    }
    public void TestDegValue()
    {
        angle = new CssPrimitiveAngleValue("90deg", false);
                Assert.AreEqual(90, angle.GetFloatValue(CssPrimitiveType.Deg));
                Assert.AreEqual(100, angle.GetFloatValue(CssPrimitiveType.Grad));
                Assert.AreEqual(Math.PI/2, angle.GetFloatValue(CssPrimitiveType.Rad));

                angle = new CssPrimitiveAngleValue("47", false);
                Assert.AreEqual(47, angle.GetFloatValue(CssPrimitiveType.Deg));

                angle = new CssPrimitiveAngleValue("385deg", false);
                Assert.AreEqual(25, angle.GetFloatValue(CssPrimitiveType.Deg));

                angle = new CssPrimitiveAngleValue("-90deg", false);
                Assert.AreEqual(270, angle.GetFloatValue(CssPrimitiveType.Deg));
    }