예제 #1
0
        internal void PopulateFromParameters(List <string> parameters, IgesReaderBinder binder, ref int index)
        {
            var charCount = IgesParameterReader.Integer(parameters, index++);

            BoxWidth  = IgesParameterReader.Double(parameters, index++);
            BoxHeight = IgesParameterReader.Double(parameters, index++);

            var fontCode = IgesParameterReader.IntegerOrDefault(parameters, index++, 1);

            if (fontCode < 0)
            {
                binder.BindEntity(-fontCode, e => TextFontDefinition = e as IgesTextFontDefinition);
                FontCode = -1;
            }
            else
            {
                FontCode = fontCode;
            }

            SlantAngle    = IgesParameterReader.Double(parameters, index++);
            RotationAngle = IgesParameterReader.Double(parameters, index++);
            MirroringAxis = (IgesTextMirroringAxis)IgesParameterReader.Integer(parameters, index++);
            RotationType  = (IgesTextRotationType)IgesParameterReader.Integer(parameters, index++);
            Location      = IgesParameterReader.Point3(parameters, ref index);
            Value         = IgesParameterReader.String(parameters, index++);
        }
예제 #2
0
        internal static new IgesNewTextString ReadParameters(List <string> parameters, IgesReaderBinder binder, ref int index)
        {
            var str = new IgesNewTextString();

            str.CharacterDisplay      = (IgesCharacterDisplay)IgesParameterReader.Integer(parameters, index++);
            str.CharacterWidth        = IgesParameterReader.Double(parameters, index++);
            str.CharacterHeight       = IgesParameterReader.Double(parameters, index++);
            str.InterCharacterSpacing = IgesParameterReader.Double(parameters, index++);
            str.InterLineSpacing      = IgesParameterReader.Double(parameters, index++);
            str.FontStyle             = (IgesFontStyle)IgesParameterReader.Integer(parameters, index++);
            str.CharacterAngle        = IgesParameterReader.Double(parameters, index++);
            str.ControlCode           = IgesParameterReader.String(parameters, index++);
            str.PopulateFromParameters(parameters, binder, ref index);
            return(str);
        }
예제 #3
0
 protected string String(List <string> values, int index)
 {
     return(IgesParameterReader.String(values, index));
 }
예제 #4
0
 internal static string String(List <string> values, int index, string defaultValue = null)
 {
     return(IgesParameterReader.String(values, index, defaultValue));
 }