ActionScript 3.0 :: Creating A Large Grid Matrix Of Clicable Object
Nov 7, 2009
I am working on a project where I need an interactive matrix of 500x500 clickable elements. I thought this would be an easy task in actionscript3 but boy was I wrong. I was able to create a matrix where each element was a Sprite object with attached Mouse click event. But here the performance problems begin. FlashPlayer10 can handle up to 100x100 matrix, but when I increase my matrix I start getting script timeout in browser player... Here is how my "unfinished" matrix looks like.So how should I approach this problem? I was hoping flash will be able to handle so many elements, but I guess I was wrong. I want to have a pan control to pan around for objects off screen and of course zoom in/out control.It's true I'm not very professional in Flahs and actionscript but a friend who is told me this would be no problem implementing in AS3? I need this in flash as the thing needs to be hosted on website.
I am working on a project where I need an interactive matrix of 500x500 clickable lements. I thought this would be an easy task in actionscript3 but boy was I wrong. was able to create a matrix where each element was a Sprite object with attached Mouse click event. But here the performance problems begin. FlashPlayer10 can handle up to 100x100 matrix, but when I increase my matrix I start getting script timeout in browser player... Here is how my "unfinished" matrix looks like.
So how should I approach this problem? I was hoping flash will be able to handle so many elements, but I guess I was wrong. I want to have a pan control to pan around for objects off screen and of course zoom in/out control.It's true I'm not very professional in Flahs and actionscript but a friend who is told me this would be no problem implementing in AS3? I need this in flash as the thing needs to be hosted on website (unless there is a better tool for doing something like this...).
I'm trying to code the snap to grid functionality. The dragged object should snap to the grid if the distance between the object bounds and a grid line is less than 5px. I found a way to do it if the object's rotation is 0 but it doesn't work if I rotate the object. I need a different approach. Can you point me into the right direction with the algorythm or any source code?
I'm really new to flash, with my background mainly in C++ and Java. But what I'm wanting to do is create a 5x5 button matrix to make a game.I've tried using the visual style of drawing the button and what not, but I really don't like it. I'd like to have like an array of button of object where I can track things like click count for each object. Is this possible with action script?
I want to create a bunch of squares appear in a grid-like fashion but not row by row. I'd like more of a diagonal effect.
Here's the code I have so far:
[code]...
So this sort of works in the sense of it creates a vertical row and a horizontal row. But I need it to actually kind of 'wipe' diagonally across the page.
I have a 20x20 matrix set up in Excel that I'd like to recreate in Flash. Essentially the values are either 0 or a calculated formula of -Fo or 1+2(Fo).
My question is with a matrix of this size, is there an efficient way to create and populate it besides hard coding the address for each data cell? Can I make this using a loop?
I've attached a snippet of what the Excel sheet looks like. Notice the data trend.
Most often, questions are asked about how to scale a DisplayObject, and the answer is usually to use a Matrix.
My question is, how to you GET the scale of a Matrix (scaleX and scaleY)?
There's a Matrix.scale method to set the scaleX and scaleY, but it doesn't return a value, and no other properties exist to read it back.
The reason I ask, I'm using object burried deep down into a Display list, and each may be transformed. So I use the child object's sprite.transform.concatenatedMatrix getter, but am stuck at this point on how to read the scale from it.
i want to assign a transform matrix to an object, but i want to assign the values myself (as in, no 'rotate, scale etc'), but for example, set a matrix like
[Code]...
which if applied, would have no effect, but would be valid (actually not exactly that matrix, but you get the idea). i want to set the values of the matrix and the object should be affected by those values that i set by myself, no scale rotate or any predefined operations. how can i set my own matrix?
I have a question concerning the use of the matrix objecThe following code works well to rotate the sprite from its center if its x and y properties don't change.However, if I drag and drop the clip somewhere else after having rotated it, and then add a new rotation, it keeps rotating from the previous rotation point. Even if I add point =new oint(myspr.x+myspr.width/2, myspr.y+myspr.height/2); in a function that is called at the end of the drag and drop, the rotation point remains the same.So,how to update the position of the matrix rotation point if the x and the y of the clip change on the scene after a rotation?
Code: var myspr=new Sprite();myspr.x=100;myspr.y=100;addChild (myspr);var point:Point=new Point(myspr.x+myspr.width/2, myspr.y+myspr.height/2);rotateAroundCenter(myspr,45);
Has anyone here ever developed a function (or general library of relevant functions) that will allow one to find the inverse of a matrix? I've searched the forum archives, as well as the internet more generally, but haven't found anything. If anyone has some leads, I hope you'll pass them along.
If I don't hear anything within the next few days, I might try to develop something on my own, but I'd hate to do so if someone has already done the dirty work.
A solution to this problem would be very useful for 3-D work or anyone doing mathematical programming more generally.
Background: Sorry for the complex title, but can't think of a better way to describe this. So I have an image which is constantly moving and rotating (using matrix rotation around a specific point) on the stage. Problem: So I'm looking for a way that, when the user presses a button, a smaller image (exactly the same as the original one, only 3 times smaller) to position itself so that the smaller image's location is proportional to the the larger one's location. This means that the exact point of the larger image where it is rotating should be the corresponding part of the smaller image, thereby causing a kind of zoom out effect.
The truth is, I'm finding it even difficult to match just the x and y positions so they correspond, ignoring rotation, assuming the position is relative to the rotation point. Even this would be useful.
I found the function: rotateAroundExternalPoint(m:Matrix, x:Number, y:Number, angleDegrees:Number) to rotate an object around an external point. The top of the object will always point at the center point which is exactly what I want.
It works fine but its possible to rotate it in an oval instead of in a perfect circle...I think it should be something with the angleDegrees Parameter but im not sure what to do with it. I also tried to set up an own matrix but I failed. Any right direction to orbit an object in an oval, and where the top of the object always point at the rotation center?
I've been working on an FXG Editor, and I'm using the the senocular transform tool to move, rotate, scale and skew an object.
Is it possible to detect if the the Display object has been skewed just from inspecting the matrix of that DisplayObject? even if said object has been move, scaled and rotated as well.
I want to only serialize the matrix of an object to FXG if has been skewed and not if it has just been rotated, moved, or scaled.
my problem is that if i scale, rotate or translate a display object using its transform.matrix i am not getting the value in the display object but the transform is happening like displayObject.scaleX or displayObject.scaleY etc. i get this new transform value using the dislayobject? as i am using a matrix transform manager which actually changing the transform matrix of the display object.
There's not that I can't do this, I just want the best way on how to. I want to create a grid in as3 and draggable items that snap to the grid. I guess you all know what I mean. The best way seems to create small boxes like explained in URL... Then add an addeventlistener to it that when the draggable item hits it, the x and y need to be set. Or is there an easier way?
I would like to create a simple 2D interactive grid. The user should be able to increase and decrease the number of axis (both X and Y simultaneously) that compose the grid, and also the scale of the grid itself (Zoom in and Out).
If this goes well enough, I would like to be able to plot graphical content on the grid that visually changes as the grid itself changes. They should, in some way, be linked to one another and correspondingly affected by the same two parameters. This, however, would be a second step. I am more concerned with the base grid model at this point.
I would like to create a simple 2D interactive grid. The user should be able to increase and decrease the number of axis (both X and Y simultaneously) that compose the grid, and also the scale of the grid itself (Zoom in and Out).
If this goes well enough, I would like to be able to plot graphical content on the grid that visually changes as the grid itself changes. They should, in some way, be linked to one another and correspondingly affected by the same two parameters. This, however, would be a second step. I am more concerned with the base grid model at this point.
I'm trying to create a grid of instances of (74x56) clips, and each one of the created instances must be named and numbered in an order so that it goes from left to right, top to bottom. I have been trying this with attachMovie and duplicateMovie, but unable to figure all out. can someone give me a hint?
I'm having problems creating a grid that will change individual movieclips' frame when rolled over when the mouse is down. My script seems to be acting erratically, when I push buttons, all of the mcs change even though the code to change them is onRollOver.Click on the "Create Your Own Map" button in the bottom left.Then you should be able to use the buttons in the bottom right to select the new color/value of the grid items.Here is the code I am using to do this:
I'm trying to create a grid of hexagons by using nested for loops. I picked up this code trawling the forums but this creates a diamond shaped pattern of hexes rather than neat rows that interlock together. I want to create one row in the first place, increment the x and y placing coords so as the next row is offset as appropriate to lock it into place under row above.
This is the code I'm using, which is clearly not doing the trick.
spacing = 35; spacing2 = 35; for (x = 0; x < 10; x++){
So I'm making a game that uses blocks... I want to create an initial grid of blocks on the screen inside a grid container. as you move the grid container around, more blocks would be added dynamically to the grid... either to the left, right, or bottom.
how to create a xml photo gallery but somehow all of them doesn�t discuss what i need to know. [code].....Especially i am interested in howto structure the xml for such an portfolio / gallery grid and having custom tweening for the thumbs to transition in and transition out, handling the click event for x thumb and loading the "big" content to a new container. Adding preview/next button functionallity to the Thumbnail Grid and for each "big" content and so on.
I just want to create a grid, this is the script: MovieClip.prototype.drawRect = function(w, h) { this.beginFill(0x006699, 100); this.moveTo(0, 0); this.lineTo(0+w, 0); this.lineTo(0+w, 0+h); this.lineTo(0, 0+h); [Code] .....
I'm trying to make an application with flash builder that performs operations on square matrices. I take in the size of he matrix (n) but now, I am having difficulty figuring out how to generate an n by n grid of text inputs where the user can enter the matrix element values.
I made a pact that I'll use only AS3 from now on but.. The tweening class is confusing me. Take a look at this: [URL]. Finding code that will make the earth move down into center of canvas and simultaneously grow larger?
I have a MovieClip that when the update(); function is called, it checks the cells (on a grid) around it to see if there is an object there. If so it updates it's image to reflect that.
How i'm doing it now is something like 40 if/else/else if statements..
I'm trying to make a game that looks low-resolution, and thus I'm upscaling everything by 2x. However, the game is to have a custom cursor, and it ruins the illusion if the cursor follows your mouse every pixel. I want the cursor to follow your mouse, but to snap to every two pixels so as to not ruin the illusion of low resolution.