Example #1
0
        /// <summary>
        /// Gets the value of a numeric parameter.
        /// <code></code>VB sample:<code>Msgbox(GetParameterValue(oDoc, "ParameterName"))</code>
        /// </summary>
        /// <param name="document">Inventor.Document</param>
        /// <param name="parameterName">Name of the parameter as a string.</param>
        /// <returns></returns>
        public static string GetParameterValue(this Document document, string parameterName)
        {
            Parameter parameter = document.GetParameter(parameterName);

            UnitsOfMeasure uom = document.UnitsOfMeasure;

            if (!ParameterExists(parameter))
            {
                return(String.Empty);
            }

            var value = parameter.Value;
            var unit  = parameter.get_Units();

            UnitsTypeEnum unitEnum;

            unitEnum = uom.GetTypeFromString(unit);

            switch (unitEnum)
            {
            case UnitsTypeEnum.kBooleanUnits:
                return((string)parameter.Value);

            case UnitsTypeEnum.kTextUnits:
                return((string)parameter.Value);

            default:
                return(uom.GetStringFromValue((double)value, unitEnum));
            }
        }
        public static string GetDocMassUnits(Document document)
        {
            UnitsOfMeasure unitsOfMeasure  = document.UnitsOfMeasure;
            string         stringFromValue = unitsOfMeasure.GetStringFromValue(0.0, unitsOfMeasure.MassUnits);

            return(stringFromValue.Split(new char[] { ' ' })[1]);
        }
        public static string GetDbVolumeUnits(Document document, bool appendSymbol = true)
        {
            UnitsOfMeasure unitsOfMeasure = document.UnitsOfMeasure;

            string stringFromValue = unitsOfMeasure.GetStringFromValue(0.0, UnitsTypeEnum.kDatabaseLengthUnits);

            string volUnit = stringFromValue.Split(new char[] { ' ' })[1];

            return(appendSymbol ? volUnit + "^3" : volUnit + " " + volUnit + " " + volUnit);
        }
Example #4
0
        /////////////////////////////////////////////////////////////
        // Use: Returns Thread Pitch as string using default units.
        //
        /////////////////////////////////////////////////////////////
        public static string GetThreadPitchStr(ThreadInfo threadInfo,
                                               Document doc)
        {
            double pitch = ThreadWorker.GetThreadPitch(threadInfo);

            UnitsOfMeasure uom = doc.UnitsOfMeasure;

            return(uom.GetStringFromValue(pitch,
                                          UnitsTypeEnum.kDefaultDisplayLengthUnits));
        }
        ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        // Use: Return string from API value
        //
        ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        public static string GetStringFromAPILength(double value)
        {
            try
            {
                UnitsOfMeasure uom = InvApplication.ActiveDocument.UnitsOfMeasure;

                string strValue = uom.GetStringFromValue(value, UnitsTypeEnum.kDefaultDisplayLengthUnits);

                return(strValue);
            }
            catch
            {
                return("*Error*");
            }
        }