예제 #1
0
 /// <summary>
 /// Sets the units presently specified for the model.
 /// </summary>
 /// <param name="forceUnits">The force units.</param>
 /// <param name="lengthUnits">The length units.</param>
 /// <param name="temperatureUnits">The temperature units.</param>
 public void SetPresentUnits(eForce forceUnits,
                             eLength lengthUnits,
                             eTemperature temperatureUnits)
 {
     _apiModel.SetPresentUnits(forceUnits, lengthUnits, temperatureUnits);
     UnitsForcePresent       = forceUnits;
     UnitsLengthPresent      = lengthUnits;
     UnitsTemperaturePresent = temperatureUnits;
 }
예제 #2
0
        /// <summary>
        /// Sets the units presently specified for the model.
        /// </summary>
        /// <returns></returns>
        public void SetPresentUnits(eForce forceUnits,
                                    eLength lengthUnits,
                                    eTemperature temperatureUnits)
        {
            CSiProgram.eForce       csiForceUnits       = CSiProgram.eForce.NotApplicable;
            CSiProgram.eLength      csiLengthUnits      = CSiProgram.eLength.NotApplicable;
            CSiProgram.eTemperature csiTemperatureUnits = CSiProgram.eTemperature.NotApplicable;

            _callCode = _sapModel.SetPresentUnits_2(csiForceUnits, csiLengthUnits, csiTemperatureUnits);
            if (throwCurrentApiException(_callCode))
            {
                throw new CSiException();
            }
        }
예제 #3
0
        /***************************************************/

        public double DatabaseLengthUnitFactor()
        {
            eForce       force  = 0;
            eLength      length = 0;
            eTemperature temp   = 0;

            m_model.GetDatabaseUnits_2(ref force, ref length, ref temp);

            double factor = 1;

            switch (length)
            {
            case eLength.NotApplicable:
                Engine.Base.Compute.RecordWarning("Unknow NotApplicable unit, assumed to be meter.");
                factor = 1;
                break;

            case eLength.inch:
                factor = factor.ToInch();
                break;

            case eLength.ft:
                factor = factor.ToFoot();
                break;

            case eLength.micron:
                factor = factor.ToMicrometre();
                break;

            case eLength.mm:
                factor = factor.ToMillimetre();
                break;

            case eLength.cm:
                factor = factor.ToCentimetre();
                break;

            case eLength.m:
                factor = 1;
                break;

            default:
                break;
            }

            return(factor);
        }
예제 #4
0
        /// <summary>
        /// Returns the units presently specified for the model.
        /// </summary>
        /// <returns></returns>
        public void GetPresentUnits(ref eForce forceUnits,
                                    ref eLength lengthUnits,
                                    ref eTemperature temperatureUnits)
        {
            CSiProgram.eForce       csiForceUnits       = CSiProgram.eForce.NotApplicable;
            CSiProgram.eLength      csiLengthUnits      = CSiProgram.eLength.NotApplicable;
            CSiProgram.eTemperature csiTemperatureUnits = CSiProgram.eTemperature.NotApplicable;

            _callCode = _sapModel.GetPresentUnits_2(ref csiForceUnits, ref csiLengthUnits, ref csiTemperatureUnits);
            if (throwCurrentApiException(_callCode))
            {
                throw new CSiException();
            }

            forceUnits       = EnumLibrary.Convert(csiForceUnits, forceUnits);
            lengthUnits      = EnumLibrary.Convert(csiLengthUnits, lengthUnits);
            temperatureUnits = EnumLibrary.Convert(csiTemperatureUnits, temperatureUnits);
        }
예제 #5
0
        /// <summary>
        /// Returns the database units for the model.
        /// All data is internally stored in the model in these units and converted to the present units as needed.
        /// </summary>
        /// <returns></returns>
        public void GetDatabaseUnits(out eForce forceUnits,
                                     out eLength lengthUnits,
                                     out eTemperature temperatureUnits)
        {
            forceUnits       = 0;
            lengthUnits      = 0;
            temperatureUnits = 0;

            CSiProgram.eForce       csiForceUnits       = CSiProgram.eForce.NotApplicable;
            CSiProgram.eLength      csiLengthUnits      = CSiProgram.eLength.NotApplicable;
            CSiProgram.eTemperature csiTemperatureUnits = CSiProgram.eTemperature.NotApplicable;

            _callCode = _sapModel.GetDatabaseUnits_2(ref csiForceUnits, ref csiLengthUnits, ref csiTemperatureUnits);
            if (throwCurrentApiException(_callCode))
            {
                throw new CSiException(API_DEFAULT_ERROR_CODE);
            }

            forceUnits       = EnumLibrary.Convert(csiForceUnits, forceUnits);
            lengthUnits      = EnumLibrary.Convert(csiLengthUnits, lengthUnits);
            temperatureUnits = EnumLibrary.Convert(csiTemperatureUnits, temperatureUnits);
        }
예제 #6
0
 public void GetPresentUnits(ref eForce forceUnits,
                             ref eLength lengthUnits,
                             ref eTemperature temperatureUnits)
 {
     Assert.IsTrue(false);
 }
예제 #7
0
 public void SetPresentUnits(eForce forceUnits,
                             eLength lengthUnits,
                             eTemperature temperatureUnits)
 {
 }
예제 #8
0
 // eLength
 internal static CSiProgram.eLength ToCSi(eLength enumValue)
 {
     return((CSiProgram.eLength)enumValue);
 }