コード例 #1
0
//		private static IFactory AddSignalGroup(IFactory ifactory, XNode xNode)
//		{
//			ifactory = (new AgentFactory()) as IFactory;
//			//添加信号灯规则
//			xNode.AcceptAsynAgent(ifactory.Build(null, AgentType.SignalLightAgent));
//
//			//信号灯赋值
//			ifactory = new StaticFactory();
//			SignalLight sl = ifactory.Build(null, EntityType.SignalLight) as SignalLight;
//
//			foreach (XNode item in iroadNet.XNodes)
//			{
//				foreach (Way roadEdge in item.Ways)
//				{
//					roadEdge.GetReverse().ModifySignalGroup(sl, LaneType.Straight);
//				}
//			}
//			return ifactory;
//		}

        /// <summary>
        /// 仿真的每个时间步骤,重新绘制道路网。
        /// </summary>
        public static void RepaintNetWork(object sender, MouseEventArgs e)
        {
            IService isPainter = PainterManager.GetService(PaintServiceType.Way, SimController.Canvas);

            isPainter.IsRunning = true;
            foreach (var item in SimController.ISimCtx.RoadNet.Ways)
            {
                if (bIsExit == true || bIsPause == true)
                {
                    break;
                }
                isPainter.Perform(item);
            }
            isPainter = PainterManager.GetService(PaintServiceType.XNode, SimController.Canvas);

            isPainter.IsRunning = true;
            foreach (var item in SimController.ISimCtx.RoadNet.XNodes)
            {
                if (bIsExit == true || bIsPause == true)
                {
                    break;
                }
                isPainter.Perform(item);
            }
        }
コード例 #2
0
        /// <summary>
        /// 添加数据记录服务
        /// </summary>
        /// <param name="frMain"></param>
        /// <param name="irn"></param>
        private static void RegisterServices()
        {
            ISimContext isc = SimContext.GetInstance();

            IService isDataRecorder = new DataRecordService(isc);

            isDataRecorder.IsRunning = true;

            IService IPainter = PainterManager.GetService(PaintServiceType.Way, SimController.Canvas);

            IPainter.IsRunning = true;
            foreach (var way in SimController.ISimCtx.RoadNet.Ways)
            {
                foreach (var lane in way.Lanes)
                {
                    lane.AddService(isDataRecorder);
                }

                way.AddService(IPainter);
            }

            IPainter           = PainterManager.GetService(PaintServiceType.XNode, SimController.Canvas);
            IPainter.IsRunning = true;
            foreach (var xnode in SimController.ISimCtx.RoadNet.XNodes)
            {
                xnode.AddService(isDataRecorder);

                xnode.AddService(IPainter);
            }
        }
コード例 #3
0
        private void Initialize()
        {
            var screenSize = Screen.PrimaryScreen.Bounds.Size;

            this.Size        = screenSize;
            this.WindowState = FormWindowState.Maximized;

            controlPanel.BackColor = Color.White;
            canvas.Size            = new Size(screenSize.Width, screenSize.Height - Setting.ToolBarHeight);
            canvas.Location        = new Point(0, Setting.ToolBarHeight);
            canvas.BackColor       = Color.White;

            canvas.Image = new Bitmap(canvas.Width, canvas.Height);

            _bitmap         = new DirectBitmap(canvas.Width, canvas.Height);
            _painterManager = new PainterManager(_bitmap);

            MainWindowSetting.CanvasSize = canvas.Size;

            controlPanel.painterManager = _painterManager;
            controlPanel.BackColor      = Color.LightGray;
            controlPanel.Size           = new Size(screenSize.Width, Setting.ToolBarHeight);
            controlPanel.Location       = new Point(0, 0);
            controlPanel.mainWindow     = this;

            _actions        = new Dictionary <Keys, bool>();
            _mousePositions = new HashSet <Point>();

            _painterManager.IsLeftMouseButtonPressed = false;

            //assing penLineTool for debugging purpose
            _painterManager.SetTool(PenLineManager.Tool);
        }
コード例 #4
0
ファイル: ChickTest.cs プロジェクト: studentutu/_WZK
    private float _limitTime = 1f / 24f; //时间限制
    // Use this for initialization
    void Start()
    {
        _painterManager = _painterManager = GameObject.FindObjectOfType <PainterManager>();
        _painterManager._currentMaterial.mainTexture = _dirtyTexture;
        _painterManager.SetBrushColor(Color.white);
        _painterManager._uvIndex = 2;
        GameObject obj = GameObject.Find("小鸡/xiaoji").gameObject;

        obj.GetComponent <SkinnedMeshRenderer>().material.SetTexture("_DirtyTex", _painterManager._currentRenderTexture);
    }
コード例 #5
0
    void Start()
    {
        _painterManager = GameObject.FindObjectOfType <PainterManager>();
        _painterManager.SetBrushColor(Color.green);
        GameObject obj = GameObject.Find("直升机").gameObject;

        MeshRenderer[] mrs = obj.GetComponentsInChildren <MeshRenderer>();
        _painterManager._materialList[0].mainTexture = _dirtyTexture;
        _painterManager._materialList[2].SetTexture("_MainTex1", _texture);
        for (int i = 0; i < mrs.Length; i++)
        {
            mrs[i].gameObject.AddComponent <MeshCollider>();
            mrs[i].material.SetTexture("_MainTex2", _painterManager._renderTextureList[0]);
            mrs[i].material.SetTexture("_MaskTex3", _painterManager._renderTextureList[1]);
        }
        //obj.GetComponent<SkinnedMeshRenderer>().material.SetTexture("_DirtyTex", _painterManager._currentRenderTexture);
    }
コード例 #6
0
    void Start()
    {
        Instacne      = this;
        hitScreenData = GetComponent <P3dHitScreen>();
        //hitScreenData.enabled = false;
        allTextures = new List <Texture>();
        for (int i = 1; i <= numOfTextures; i++)
        {
            allTextures.Add(Resources.Load("Textures/texture0" + i) as Texture);

            GameObject GO = Instantiate(textureButtonPrefab, textureParent);
            GO.GetComponent <RawImage>().texture = Resources.Load("Textures/old/texture0" + i) as Texture;
            TextureHolderScript THS = GO.GetComponent <TextureHolderScript>();
            THS.heldTexture = allTextures[i - 1];
        }

        hasErased = false;

        ThickStrongNoShape();
    }
コード例 #7
0
 void Awake()
 {
     _instance = this;
 }