public WriteableBitmap(int width, int height) { this.PixelWidth = width; this.PixelHeight = height; this.canvas = (CanvasElement)Document.GetElementById("gameCanvas"); this.context = (CanvasContext2D)this.canvas.GetContext(Rendering.Render2D); }
//------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------ public void Initialize(CanvasElement canvas, int screenX, int screenY) { this._screenX = screenX; this._screenY = screenY; /*no functions to minimize delegate creation*/ JsInputProvider that = this; canvas.AddEventListener("keydown", delegate(ElementEvent e) { that._keys[e.KeyCode] = true; }, true); canvas.AddEventListener("keyup", delegate(ElementEvent e) { that._keys[e.KeyCode] = false; }, true); canvas.AddEventListener("mousedown", delegate(ElementEvent e) { that._keys[Keys.MouseLeft] = true; }, true); canvas.AddEventListener("mouseup", delegate(ElementEvent e) { that._keys[Keys.MouseRight] = true; }, true); canvas.AddEventListener("mousemove", delegate(ElementEvent e) { /*convert to screen space*/ that._mouseX = (((float)(((MouseEvent)(Object)e).PageX - e.Target.OffsetLeft) / this._screenX) - 0.5f) * 2.0f; that._mouseY = (((float)(((MouseEvent)(Object)e).PageY - e.Target.OffsetTop) / this._screenY) - 0.5f) * 2.0f; }, true); }
public void Run() { _backgroundImageElement = Document.GetElementById("backgroundImage").As<ImageElement>(); _imageStripElement = Document.GetElementById("imageStrip").As<ImageElement>(); _tankCanvas = Document.GetElementById("fishTankCanvas").As<CanvasElement>(); _fishesCanvas = Document.GetElementById("fishesCanvas").As<CanvasElement>(); Debug.Assert(_backgroundImageElement != null); Debug.Assert(_imageStripElement != null); Debug.Assert(_tankCanvas != null); Debug.Assert(_fishesCanvas != null); _tankCanvasContext = (CanvasContext2D)_tankCanvas.GetContext(Rendering.Render2D); _fishesCanvasContext = (CanvasContext2D)_fishesCanvas.GetContext(Rendering.Render2D); _fishes = new List<Fish>(); for (int i = 0; i < FishTank.FishCount; i++) { double x = Math.Floor(Math.Random() * (_width - FishTank.FishWidth) + FishTank.FishWidth / 2); double y = Math.Floor(Math.Random() * (_height - FishTank.FishHeight) + FishTank.FishHeight / 2); double z = Math.Floor(Math.Random() * (FishTank.ZFar - FishTank.ZNear)); _fishes.Add(new Fish(this, x, y, z, _imageStripElement, _fishesCanvasContext)); } OnWindowResize(null); Window.AddEventListener("resize", OnWindowResize, false); _tickHandler = OnTick; Window.SetTimeout(_tickHandler, (int)(3600 / FramesPerSecond)); }
public static CanvasInformation Create(CanvasElement canvas, int w, int h) { if (w == 0) w = 1; if (h == 0) h = 1; canvas.Width = w; canvas.Height = h; var ctx = (CanvasRenderingContext2D)canvas.GetContext("2d"); return new CanvasInformation(ctx, jQuery.FromElement(canvas)); }
public Bitmap(int w, int h) { width = w; height = h; canvas = (CanvasElement) Document.GetElementById("canvas"); context = (CanvasRenderingContext2D) canvas.GetContext(CanvasContextId.Render2D); // "2d" context.GlobalCompositeOperation = CompositeOperation.Copy; // ### it was: CompositeOperation imagedata = context.CreateImageData(w,1); // w,h }
public static CanvasInformation Create(CanvasElement canvas, int w, int h,bool pixelated) { if (w == 0) w = 1; if (h == 0) h = 1; canvas.Width = w; canvas.Height = h; var ctx = (CanvasRenderingContext2D) canvas.GetContext("2d"); if (pixelated) { ctx.Me().webkitImageSmoothingEnabled = false; ctx.Me().mozImageSmoothingEnabled = false; ctx.Me().imageSmoothingEnabled = false; } return new CanvasInformation(ctx, jQuery.FromElement(canvas)); }
//------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------ private void InitEnvironment(CanvasElement canvas) { /*initialize the core*/ SystemCore.Environment = new Environment(); /*suported resource types*/ ResourceManager resourceManager = new ResourceManager(); resourceManager.AddLoader(new ImageLoader()); resourceManager.AddLoader(new JsonLoader()); resourceManager.AddLoader(new AudioLoader()); resourceManager.AddLoader(new ShaderLoader(((WebGLGraphics)this._engine.Graphics).Context)); SystemCore.ResourceManager = resourceManager; SystemCore.Logger = new JsLoggingProvider(); SystemCore.Timer = new Timer(); SystemCore.Input = new JsInputProvider(); ((JsInputProvider)SystemCore.Input).Initialize(canvas, 800, 600); }
public void TexImage2D(uint target, int level, uint internalformat, uint format, uint type, CanvasElement canvas) { }
public void DrawImage(CanvasElement image, double dx, double dy) { }
public void texImage2D(int target, int level, CanvasElement canvas, bool flipY) { return; }
public void TexSubImage2D(uint target, int level, int xoffset, int yoffset, uint format, uint type, CanvasElement canvas) { }
public virtual void Dispose() { _initialized = false; StopTimer(); DisposeSystems(); _resourcesLoadedLabel = null; _resourcesToLoadLabel = null; Document.RemoveEventListener("blur", _blurListener, true); Document.RemoveEventListener("focus", _focusListener, true); Document.RemoveEventListener("keydown", _keyDownListener, true); Document.RemoveEventListener("keyup", _keyUpListener, true); _canvas = null; _resourceLoaded = null; _maskedResourceLoaded = null; GameObject.Clear(); }
public void Start() { _initialized = false; _loaded = false; GameObject.Objects = new List<GameObject>(); _resourcesToLoad = 0; _resourcesLoaded = 0; _gameSystems = new List<GameSystem>(); jQuery.FromElement(Overlay).Empty(); _resourcesLoadedLabel = Document.GetElementById("LoadedResources"); _resourcesLoadedLabel.InnerHTML = _resourcesLoaded.ToString(); _resourcesToLoadLabel = Document.GetElementById("TotalResources"); _resourcesToLoadLabel.InnerHTML = _resourcesToLoad.ToString(); if (ShowWaitMessage) jQuery.Select(".WaitMessage").Show(); else jQuery.Select(".WaitMessage").Hide(); // Get reference to canvas element _canvas = (CanvasElement)jQuery.Select(".GameCanvas").GetElement(0); Document.AddEventListener("blur", _blurListener, true); Document.AddEventListener("focus", _focusListener, true); Document.AddEventListener("keydown", _keyDownListener, true); Document.AddEventListener("keyup", _keyUpListener, true); Init(); InitializeSystems(); _initialized = true; HideWaitScreen(); }
public void texImage2D(int target, int level, CanvasElement canvas, bool flipY, bool asPremultipliedAlpha) { return; }
public static int OffsetX(CanvasElement canvas, ElementEvent e) { int x = 0; MouseCanvasElement element = (MouseCanvasElement)(object)canvas; MouseEvent me = (MouseEvent)(object)e; if (element.offsetParent != null) { do { x += element.offsetLeft; } while ((element = element.offsetParent) != null); } // Add padding and border style widths to offset //x += me.stylePaddingLeft; //x += me.styleBorderLeft; return me.PageX - x; }
private static void start() { canvas = (CanvasElement)Document.GetElementById("canvas"); context = (CanvasRenderingContext2D)canvas.GetContext(CanvasContextId.Render2D); Offset = new Vector2(0, 0); Vector2 draggingPos = null; canvas.OnMousedown = @event => { int mouseX = ((dynamic)@event).pageX; int mouseY = ((dynamic)@event).pageY; draggingPos = new Vector2(mouseX, mouseY); }; canvas.OnMouseup = @event => { /* if (draggingPos == null) return; int mouseX = ((dynamic)@event).pageX; int mouseY = ((dynamic)@event).pageY; draggingPos = new Vector2(draggingPos.X - mouseX, draggingPos.Y - mouseY); Offset = new Vector2(Offset.X + draggingPos.X, Offset.Y + draggingPos.Y); draw(); */ draggingPos = null; }; Document.OnMousemove = @event => { if (draggingPos == null) return; int mouseX = ((dynamic)@event).pageX; int mouseY = ((dynamic)@event).pageY; Offset = new Vector2(Offset.X + (draggingPos.X - mouseX) * 6, Offset.Y + (draggingPos.Y - mouseY) * 6); draggingPos = new Vector2(mouseX, mouseY); Draw(); }; canvas.Width = Document.Body.ClientWidth - 100; canvas.Height = Document.Body.ClientHeight - 100; context.Save(); context.Font = "50px Arial"; context.FillText("Loading...", canvas.Width / 2, canvas.Height / 2); context.Restore(); Window.OnKeydown = @event => { if (((dynamic)@event).keyCode == 17) { drawLines = !drawLines; } Draw(); }; Window.SetTimeout(() => { Console.WriteLine("Started"); Console.Profile(); Stopwatch sw = new Stopwatch(); sw.Start(); tree = new RTree<Player>(); players = new List<Player>(); for (int j = 0; j < numberOfPlayers; j++) { var player = new Player(nextId()); player.X = rand.Next(0, gameSize); player.Y = rand.Next(0, gameSize); players.Add(player); tree.Add(new Rectangle(player.X, player.Y), player); } buildClusters(viewRadius); sw.Stop(); Console.ProfileEnd(); Console.WriteLine(string.Format("Time {0}", sw.ElapsedMilliseconds)); Console.WriteLine("Done"); Draw(); }); }
public Pattern CreatePattern(CanvasElement canvas, string repetition) { return null; }
public void texSubImage2D(int target, int level, int xoffset, int yoffset, CanvasElement canvas, bool flipY) { return; }
public void DrawImage(CanvasElement image, double sx, double sy, double sw, double sh, double dx, double dy, double dw, double dh) { }
public void Setup(CanvasElement canvas) { canvas.AddEventListener("dblclick", OnDoubleClick, false); //canvas.AddEventListener("mousemove", OnMouseMove, false); //canvas.AddEventListener("mouseup", OnMouseUp, false); //canvas.AddEventListener("pointerdown", OnPointerDown, false); canvas.AddEventListener("mousedown", OnMouseDown, false); canvas.AddEventListener("mousewheel", OnMouseWheel, false); canvas.AddEventListener("DOMMouseScroll", OnMouseWheel, false); // this is for firefox as it does not support mousewheel canvas.AddEventListener("touchstart", OnTouchStart, false); canvas.AddEventListener("touchmove", OnTouchMove, false); canvas.AddEventListener("touchend", OnTouchEnd, false); canvas.AddEventListener("gesturechange", OnGestureChange, false); canvas.AddEventListener("gesturestart", OnGestureStart, false); canvas.AddEventListener("gestureend", OnGestureEnd, false); Document.Body.AddEventListener("keydown", OnKeyDown, false); //canvas.AddEventListener("MSGestureChange", OnGestureChange, false); //canvas.AddEventListener("mouseout", OnMouseUp, false); // MS Touch code canvas.AddEventListener("pointerdown", OnPointerDown, false); canvas.AddEventListener("pointermove", OnPointerMove, false); canvas.AddEventListener("pointerup", OnPointerUp, false); // End MS touch code RenderContext.ViewCamera.Lat = StartLat; RenderContext.ViewCamera.Lng = StartLng; RenderContext.ViewCamera.Zoom = StartZoom; RenderContext.TargetCamera = RenderContext.ViewCamera.Copy(); if (RenderContext.gl == null) { foregroundCanvas = (CanvasElement)Document.CreateElement("canvas"); foregroundCanvas.Width = canvas.Width; foregroundCanvas.Height = canvas.Height; fgDevice = (CanvasContext2D)foregroundCanvas.GetContext(Rendering.Render2D); } webFolder = new Folder(); webFolder.LoadFromUrl("http://www.worldwidetelescope.org/wwtweb/catalog.aspx?X=ImageSets5", SetupComplete); WebFile webFile = new WebFile("http://www.worldwidetelescope.org/wwtweb/weblogin.aspx?user=12345678-03D2-4935-8D0F-DCE54C9113E5&Version=HTML5&webkey=AX2011Gqqu&platform=web"); webFile.Send(); }
public static int OffsetY(CanvasElement canvas, ElementEvent e) { int y = 0; MouseCanvasElement element = (MouseCanvasElement)(object)canvas; MouseEvent me = (MouseEvent)(object)e; if (element.offsetParent != null) { do { y += element.offsetTop; } while ((element = element.offsetParent) != null); } // Add padding and border style widths to offset //y += me.stylePaddingTop; //y += me.styleBorderTop; return me.PageY - y; }
private void initializeMinimap() { this.minimapCanvas = Document.GetElementById("minimapCanvas").As<CanvasElement>(); this.minimapCanvas.Width = this.game.Map.GetWidth() * Renderer.MinimapBlockSize; this.minimapCanvas.Height = this.game.Map.GetHeight() * Renderer.MinimapBlockSize; this.minimapCanvas.Style.Width = this.minimapCanvas.Width.ToString() + "px"; this.minimapCanvas.Style.Height = this.minimapCanvas.Height.ToString() + "px"; this.minimapCtx = (CanvasContext2D)this.minimapCanvas.GetContext(Rendering.Render2D); }