// 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); } }
/// <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); } }
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); }
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); }
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); }
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(); }
void Awake() { _instance = this; }