• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

C# SharedObjects类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C#中SharedObjects的典型用法代码示例。如果您正苦于以下问题:C# SharedObjects类的具体用法?C# SharedObjects怎么用?C# SharedObjects使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



SharedObjects类属于命名空间,在下文中一共展示了SharedObjects类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。

示例1: StageValues

        public StageValues(SharedObjects shared)
        {
            this.shared = shared;
            partSet = new PartSet(partHash);

            InitializeSuffixes();
        }
开发者ID:KSP-KOS,项目名称:KOS,代码行数:7,代码来源:StageValues.cs


示例2: Execute

 public override void Execute(SharedObjects shared)
 {
     double argument = GetDouble(PopValueAssert(shared));
     AssertArgBottomAndConsume(shared);
     double result = Math.Log(argument);
     ReturnValue = result;
 }
开发者ID:KSP-KOS,项目名称:KOS,代码行数:7,代码来源:Math.cs


示例3: Execute

 public override void Execute(SharedObjects shared)
 {
     double degrees = GetDouble(shared.Cpu.PopValue());
     double radians = DegreesToRadians(degrees);
     double result = Math.Cos(radians);
     shared.Cpu.PushStack(result);
 }
开发者ID:WazWaz,项目名称:KOS,代码行数:7,代码来源:Trigonometry.cs


示例4: OrbitInfo

 public OrbitInfo(Orbitable orb, SharedObjects sharedObj)
 {
     orbit = orb.Orbit;
     shared = sharedObj;
     name = orb.GetName();
     InitializeSuffixes();
 }
开发者ID:Whitecaribou,项目名称:KOS,代码行数:7,代码来源:OrbitInfo.cs


示例5: Construct

 public static PartValue Construct(global::Part part, SharedObjects shared)
 {
     foreach (PartModule module in part.Modules)
     {
         ModuleEngines mEng = module as ModuleEngines;
         if (mEng != null)
             return new EngineValue(part, new ModuleEngineAdapter(mEng), shared);
         ModuleEnginesFX mEngFX = module as ModuleEnginesFX;
         if (mEngFX != null)
             return new EngineValue(part, new ModuleEngineAdapter(mEngFX), shared);
         ModuleDockingNode mDock = module as ModuleDockingNode;
         if (mDock != null)
             return new DockingPortValue(mDock, shared);
         ModuleEnviroSensor mSense = module as ModuleEnviroSensor;
         if (mSense != null)
             return new SensorValue(part, mSense, shared);
         var gimbalModule  = module as ModuleGimbal;
         if (gimbalModule != null)
             return new GimbalValue(gimbalModule,shared);
         
     }
     
     // Fallback if none of the above: then just a normal part:
     return new PartValue(part, shared);
 }
开发者ID:Whitecaribou,项目名称:KOS,代码行数:25,代码来源:PartValueFactory.cs


示例6: AddTo

        public override void AddTo(SharedObjects shared)
        {
            Shared = shared;

            if (Shared.Vessel == null)
            {
                SafeHouse.Logger.LogWarning("FlightControlManager.AddTo Skipped: shared.Vessel== null");
                return;
            }

            if (Shared.Vessel.rootPart == null)
            {
                SafeHouse.Logger.LogWarning("FlightControlManager.AddTo Skipped: shared.Vessel.rootPart == null");
                return;
            }

            SafeHouse.Logger.Log("FlightControlManager.AddTo " + Shared.Vessel.id);

            currentVessel = shared.Vessel;
            currentVessel.OnPreAutopilotUpdate += OnFlyByWire;

            AddNewFlightParam("throttle", Shared);
            AddNewFlightParam("steering", Shared);
            AddNewFlightParam("wheelthrottle", Shared);
            AddNewFlightParam("wheelsteering", Shared);

            shared.BindingMgr.AddSetter("SASMODE", value => SelectAutopilotMode((string)value));
            shared.BindingMgr.AddGetter("SASMODE", () => currentVessel.Autopilot.Mode.ToString().ToUpper());
        }
开发者ID:space-is-hard,项目名称:KOS,代码行数:29,代码来源:FlightControlManager.cs


示例7: Execute

        public override void Execute(SharedObjects shared)
        {
            string listType = shared.Cpu.PopValue().ToString();
            ListValue list = new ListValue();

            switch (listType)
            {
                case "bodies":
                    foreach (var body in FlightGlobals.fetch.bodies)
                    {
                        list.Add(new BodyTarget(body, shared.Vessel));
                    }
                    break;
                case "targets":
                    foreach (var vessel in FlightGlobals.Vessels)
                    {
                        if (vessel == shared.Vessel) continue;
                        list.Add(new VesselTarget(vessel, shared.Vessel));
                    }
                    break;
                case "resources":
                case "parts":
                case "engines":
                case "sensors":
                case "elements":
                    list = VesselUtils.PartList(shared.Vessel, listType);
                    break;
            }

            shared.Cpu.PushStack(list);
        }
开发者ID:WazWaz,项目名称:KOS,代码行数:31,代码来源:BuildList.cs


示例8: Execute

 public override void Execute(SharedObjects shared)
 {
     string bodyName = PopValueAssert(shared).ToString();
     AssertArgBottomAndConsume(shared);
     var result = new BodyTarget(bodyName, shared);
     ReturnValue = result;
 }
开发者ID:space-is-hard,项目名称:KOS,代码行数:7,代码来源:Suffixed.cs


示例9: Construct

        public static PartModuleFields Construct(PartModule mod, SharedObjects shared)
        {
            var moduleGimbal = mod as ModuleGimbal;
            if (moduleGimbal != null)
                return new GimbalFields(moduleGimbal, shared);

            var processor = mod as kOSProcessor;

            if (processor != null) {
                return new kOSProcessorFields(processor, shared);
            }

            if (mod.moduleName.Equals(RemoteTechAntennaModuleFields.RTAntennaModule)) {
                return new RemoteTechAntennaModuleFields(mod, shared);
            }

            var scienceExperimentFields = ScienceExperimentFieldsFactory.Construct(mod, shared);

            if (scienceExperimentFields != null)
            {
                return scienceExperimentFields;
            }

            return new PartModuleFields(mod, shared);
        }
开发者ID:CalebJ2,项目名称:KOS,代码行数:25,代码来源:PartModuleFieldsFactory.cs


示例10: GeoCoordinates

 /// <summary>
 ///   Build a GeoCoordinates from any arbitrary lat/long pair of doubles.
 /// </summary>
 /// <param name="sharedObj">to know the current CPU's running vessel</param>
 /// <param name="lat">latitude</param>
 /// <param name="lng">longitude</param>
 public GeoCoordinates(SharedObjects sharedObj, double lat, double lng)
 {
     Lat = lat;
     Lng = lng;
     Shared = sharedObj;
     Body = Shared.Vessel.GetOrbit().referenceBody;
 }
开发者ID:EbbiDos,项目名称:KOS,代码行数:13,代码来源:GeoCoordinates.cs


示例11: DeepCopy

        public static SteeringManager DeepCopy(SteeringManager oldInstance, SharedObjects shared)
        {
            SteeringManager instance = SteeringManagerProvider.GetInstance(shared);
            instance.ShowAngularVectors = oldInstance.ShowAngularVectors;
            instance.ShowFacingVectors = oldInstance.ShowFacingVectors;
            instance.ShowRCSVectors = oldInstance.ShowRCSVectors;
            instance.ShowThrustVectors = oldInstance.ShowThrustVectors;
            instance.ShowSteeringStats = oldInstance.ShowSteeringStats;
            instance.WriteCSVFiles = oldInstance.WriteCSVFiles;
            instance.MaxStoppingTime = oldInstance.MaxStoppingTime;

            instance.pitchPI.Ts = oldInstance.pitchPI.Ts;
            instance.yawPI.Ts = oldInstance.yawPI.Ts;
            instance.rollPI.Ts = oldInstance.rollPI.Ts;
            instance.pitchPI.Loop = PIDLoop.DeepCopy(oldInstance.pitchPI.Loop);
            instance.yawPI.Loop = PIDLoop.DeepCopy(oldInstance.yawPI.Loop);
            instance.rollPI.Loop = PIDLoop.DeepCopy(oldInstance.rollPI.Loop);

            instance.pitchRatePI = PIDLoop.DeepCopy(oldInstance.pitchRatePI);
            instance.yawRatePI = PIDLoop.DeepCopy(oldInstance.yawRatePI);
            instance.rollRatePI = PIDLoop.DeepCopy(oldInstance.rollRatePI);

            instance.PitchTorqueAdjust = oldInstance.PitchTorqueAdjust;
            instance.PitchTorqueFactor = oldInstance.PitchTorqueFactor;
            instance.RollTorqueAdjust = oldInstance.RollTorqueAdjust;
            instance.RollTorqueFactor = oldInstance.RollTorqueFactor;
            instance.YawTorqueAdjust = oldInstance.YawTorqueAdjust;
            instance.YawTorqueFactor = oldInstance.YawTorqueFactor;
            return instance;
        }
开发者ID:Whitecaribou,项目名称:KOS,代码行数:30,代码来源:SteeringManager.cs


示例12: Execute

 public override void Execute(SharedObjects shared)
 {
     double ang2 = GetDouble(shared.Cpu.PopValue());
     double ang1 = GetDouble(shared.Cpu.PopValue());
     double result = kOS.Utilities.Utils.DegreeFix( ang2 - ang1, -180 );
     shared.Cpu.PushStack(result);
 }
开发者ID:EbbiDos,项目名称:KOS,代码行数:7,代码来源:Trigonometry.cs


示例13: MessageQueueStructure

        public MessageQueueStructure(MessageQueue messageQueue, SharedObjects sharedObjects)
        {
            this.messageQueue = messageQueue;
            this.sharedObjects = sharedObjects;

            InitializeSuffixes();
        }
开发者ID:KSP-KOS,项目名称:KOS,代码行数:7,代码来源:MessageQueueStructure.cs


示例14: EngineValue

        public EngineValue(global::Part part, MultiModeEngine engine, SharedObjects sharedObj)
            : base(part, sharedObj)
        {
            MMengine = engine;

            var moduleEngines = part.Modules.GetModules<ModuleEngines>();
            if (moduleEngines.Count == 2)
            {
                var modEngine1 = moduleEngines.Where(e => e.engineID == MMengine.primaryEngineID).FirstOrDefault();
                if (modEngine1 != null)
                    engine1 = new ModuleEngineAdapter(modEngine1);
                else
                    throw new KOSException("Attempted to build a MultiModeEngine with no engine matching Primary ID");
                var modEngine2 = moduleEngines.Where(e => e.engineID == MMengine.secondaryEngineID).FirstOrDefault();
                if (modEngine2 != null)
                    engine2 = new ModuleEngineAdapter(modEngine2);
                else
                    throw new KOSException("Attempted to build a MultiModeEngine with no engine matching Secondary ID");
            }
            else
            {
                throw new KOSException(string.Format("Attempted to build a MultiModeEngine with {0} engine modules defined instead of 2", moduleEngines.Count));
            }

            MultiMode = true;

            findGimbal();

            EngineInitializeSuffixes();
        }
开发者ID:CalebJ2,项目名称:KOS,代码行数:30,代码来源:EngineValue.cs


示例15: Execute

        public override void Execute(SharedObjects shared)
        {
            var list = new ListValue();

            string alarmTypes = PopValueAssert(shared).ToString();
            AssertArgBottomAndConsume(shared);

            if (!KACWrapper.APIReady)
            {
                ReturnValue = list;
                throw new KOSUnavailableAddonException("listAlarms()", "Kerbal Alarm Clock");
            }

            //Get the list of alarms from the KAC Object
            KACWrapper.KACAPI.KACAlarmList alarms = KACWrapper.KAC.Alarms;

            foreach (KACWrapper.KACAPI.KACAlarm alarm in alarms)
            {
                // if its not my alarm or a general alarm, ignore it
                if (!string.IsNullOrEmpty(alarm.VesselID) && alarm.VesselID != shared.Vessel.id.ToString())
                {
                    continue;
                }
                
                if (alarmTypes.ToUpperInvariant() == "ALL" || alarm.AlarmTime.ToString() == alarmTypes)
                    list.Add(new KACAlarmWrapper(alarm));
            }
            ReturnValue = list;
        }
开发者ID:Whitecaribou,项目名称:KOS,代码行数:29,代码来源:KACFunctions.cs


示例16: PartList

        public static ListValue PartList(this IShipconstruct vessel, string partType, SharedObjects sharedObj)
        {
            var list = new ListValue();
            var partList = vessel.Parts.ToList();

            switch (partType.ToUpper())
            {
                case "RESOURCES":
                    list = AggregateResourceValue.PartsToList(partList, sharedObj);
                    break;

                case "PARTS":
                    list = PartValueFactory.Construct(partList, sharedObj);
                    break;

                case "ENGINES":
                    list = EngineValue.PartsToList(partList, sharedObj);
                    break;

                case "SENSORS":
                    list = SensorValue.PartsToList(partList, sharedObj);
                    break;

                case "ELEMENTS":
                    list = ElementValue.PartsToList(partList, sharedObj);
                    break;

                case "DOCKINGPORTS":
                    list = DockingPortValue.PartsToList(partList, sharedObj);
                    break;
            }
            return list;
        }
开发者ID:Whitecaribou,项目名称:KOS,代码行数:33,代码来源:VesselUtils.cs


示例17: IRServoWrapper

 public IRServoWrapper(IRWrapper.IServo init, SharedObjects shared)
 {
     servo = init;
     this.shared = shared;
     this.partValue = GetPart();
     InitializeSuffixes();
 }
开发者ID:KSP-KOS,项目名称:KOS,代码行数:7,代码来源:IRServoWrapper.cs


示例18: AddTo

        public override void AddTo(SharedObjects shared)
        {
            _shared = shared;

            _shared.BindingMgr.AddGetter("LOADDISTANCE", cpu => Vessel.loadDistance );
            _shared.BindingMgr.AddSetter("LOADDISTANCE", delegate(CPU cpu, object val)
                {
                    var distance = (float) val;
                    Vessel.loadDistance = distance;
                    Vessel.unloadDistance = distance - 250;
                });
            _shared.BindingMgr.AddGetter("WARP", cpu => TimeWarp.fetch.current_rate_index);
            _shared.BindingMgr.AddSetter("WARP", delegate(CPU cpu, object val)
                {
                    int newRate;
                    if (int.TryParse(val.ToString(), out newRate))
                    {
                        TimeWarp.SetRate(newRate, false);
                    }
                });

            foreach (var body in FlightGlobals.fetch.bodies)
            {
                var cBody = body;
                _shared.BindingMgr.AddGetter(body.name, cpu => new BodyTarget(cBody, _shared.Vessel));
            }
        }
开发者ID:ElasticRaven,项目名称:KOS,代码行数:27,代码来源:BindingsUniverse.cs


示例19: VesselShortcutGetter

 public object VesselShortcutGetter(SharedObjects shared, string name)
 {
     ISuffixResult suffix = new VesselTarget(shared).GetSuffix(name);
     if (! suffix.HasValue)
         suffix.Invoke(shared.Cpu);
     return suffix.Value;
 }
开发者ID:CalebJ2,项目名称:KOS,代码行数:7,代码来源:FlightStats.cs


示例20: Execute

 public override void Execute(SharedObjects shared)
 {
     if (shared.Cpu != null)
     {
         shared.Cpu.RunProgram(Program);
     }
 }
开发者ID:KSP-KOS,项目名称:KOS,代码行数:7,代码来源:RunCommand.cs



注:本文中的SharedObjects类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C# SharedPackageRepository类代码示例发布时间:2022-05-24
下一篇:
C# SharedGameObject类代码示例发布时间:2022-05-24
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap