SEToolbox.Models.GenerateFloatingObjectModel.SetMassVolume C# (CSharp) Method

SetMassVolume() private method

private SetMassVolume ( ) : void
return void
        private void SetMassVolume()
        {
            if (StockItem == null)
            {
                Mass = null;
                Volume = null;
            }
            else
            {
                if (StockItem.TypeId == SpaceEngineersTypes.Ore ||
                    StockItem.TypeId == SpaceEngineersTypes.Ingot)
                {
                    IsDecimal = true;
                    IsUnique = IsInt = false;
                    if (DecimalUnits.HasValue)
                    {
                        Mass = (double)DecimalUnits * StockItem.Mass;
                        Volume = (double)DecimalUnits * StockItem.Volume;
                    }
                    else
                    {
                        Mass = null;
                        Volume = null;
                    }
                }
                else if (StockItem.TypeId == SpaceEngineersTypes.Component ||
                    StockItem.TypeId == SpaceEngineersTypes.AmmoMagazine)
                {
                    IsInt = true;
                    IsUnique = IsDecimal = false;
                    if (Units.HasValue)
                    {
                        Mass = Units.Value * StockItem.Mass;
                        Volume = Units.Value * StockItem.Volume;
                    }
                    else
                    {
                        Mass = null;
                        Volume = null;
                    }
                }
                else if (StockItem.TypeId == SpaceEngineersTypes.PhysicalGunObject)
                {
                    IsUnique = true;
                    IsInt = IsDecimal = false;
                    Mass = UniqueUnits * StockItem.Mass;
                    Volume = UniqueUnits * StockItem.Volume;
                }
                else if (StockItem.TypeId == SpaceEngineersTypes.OxygenContainerObject)
                {
                    IsUnique = true;
                    IsInt = IsDecimal = false;
                    Mass = UniqueUnits * StockItem.Mass;
                    Volume = UniqueUnits * StockItem.Volume;
                }
                else
                {
                    // Assume any new objects are whole objects that cannot be stacked (for safety).
                    IsUnique = true;
                    IsInt = IsDecimal = false;
                    Mass = UniqueUnits * StockItem.Mass;
                    Volume = UniqueUnits * StockItem.Volume;
                }
            }
        }