Professional :: Find A Child's Location In Parent's Coordinate Space
Jul 21, 2010
I've created a map of Montana counties. Each county is a seperate MC withing the larger parent clip (allcnt_mc). When a county is clicked on, I'd like to center that county on the stage and zoom to its extent. The challenging part has been telling the parent (allcnt_mc) where to tween to. Since each individual county is a child of the parent, they have their own coordinate space referencing that of the parent.
Is there a way I can query the location (x,y) of a child in the parent's coordinate space? With this number, I could calculate the distanct between the parent's current reg. point and that of the child, indicating the distance that the parent would have to move to be centered on the stage. I was trying to use localToGlobal but could not figure out how to use it.
I have 3 square. smallest square s3 is inside s2. s2 is in side s1. each is 10px larger [code]how can I find the coordinate of child in its parent's coordinate system?
I expected the trace command at the end of this code to return 0, but it returns 100. Does anyone know why mc's y coordinate value is not updated after adding it a child?[code]...
I got a Parent Sprite, let's name it SpriteP, which holds inside it two other Sprites. Sprite1 and Sprite2.[code]Sprite2 is a rectangle. When I rotate it, of course, the height of its parent, SpriteP, GROWS. But I would expect that height to go back to what it should be when I'm removing Sprite2!And it does! If I remove Sprite2 while NOT being rotated, the height of the parent drops back to normal, 200.
i am slightly confused about the parent and child relationship. lets assume we have several different instances, what would be difference of adding them all as children of the stage and creating a parent-child hierarchy between them(other than the access path).
I got a Parent Sprite, let's name it SpriteP, which holds inside it two other Sprites. Sprite1 and Sprite2.
When Sprite2 is NOT rotated:
Code: trace(SpriteP.width + ' ' + SpriteP.height); //100 250. SpriteP.removeChild(Sprite2) trace(SpriteP.width + ' ' + SpriteP.height); //100 200. -> works, 200 is good. When Sprite2 is rotated at 90:
[Code].....
And it does! If I remove Sprite2 while NOT being rotated, the height of the parent drops back to normal, 200. But if I rotate Sprite2, the Parent won't update its bounds.
i have a darkBlueRect rectangle sprite and a copy of the same sprite with a larger scale and a lighter color - lightBlueRect.i'm attempting to shift the location of the lightBlueRect according to the mouse.x location when the mouse is moving over the darkBlueRect. this way if the mouse is on the right of the darkBlueRect than the location of the scaled up lightBlueRect will be on the opposite side and shifted towards the left proportionate to the mouse position and scale. in addition, the lightBlueRect must appear "locked" to the darkBlueRect so lightBlueRect.x must never be more than darkBlueRect.x and lightBlueRect.x + lightBlueRect.width must never be less than darkBlueRect.x + darkBlueRect.width.
[code]All clips are squared.Ok, on the PlayerPlane, there are little soldiers, which have hotkeys. The effect I'm trying to create is I want to position the GameStage so that the currently selected soldier appears in the center of the GameClicker clip.The GameStage is movable by the player (to scan other areas of the map)by holding the CTRL key, so it's easy to kinda lose track of where your players are.I have tried using localTo Global and globalToLocal techniques, but I think I'm lost on the actual math of getting the GameStage to move the correct distance so that the selected soldier is centered to the GameClicker.[code]
I'm currently working on a project where I want to incorporate "find a location" functionality using the user's zip code. Basically, the user needs to be able to type in their zip code and once they hit the submit button, they are then taken to a page where it lists all locations available. Mind you, the website is ALL Flash. Currently, it's in ActionScript 2.0, but I could (at least with these pages) convert to ActionScript 3.0 if needed.
I've been working on an interactive map of the counties in Montana. When a user clicks on a county, I'd like the map to zoom to the county's extent and center it on the stage. Every county is a child of a larger container (the state, names allcnt_mc). I've set things up in my function so that when you click on a county POINT variables with all the numbers you need are created. I just cannot get the desired effect and I think I am missing something basic in regards to the geometry of my stage. Can anyone see something I am missing? I set this up so that the parent is tweened to a new location equal to stage center minus the called child's x,y distance from stage center. Essentially, this should center the child over the stage center, no?
function tweenparent(e:MouseEvent):void{ //create vars for x,y cordinates of clicked county (child) var calledx:Number=allcnt_mc[xmlData.row.NAME[e.currentTarget.ivar]].x;
Alright, so I've been struggling with this one since last night. When I create a new object (a new unit), and draw it to the screen (Flash does all the work there), the point at which it's first placed is considered its origin. That is, getX and getY will return the distance from that point... Why is that? Or how can I stop this?
Imagine the following setup. The main swf loads a child swf.In AS2 i would simply use _parent or _root to call the desired function. How can that be done in AS3?Can this still be done? Can I call a function on the main swf from the loaded one? How about the other way around, this time, from main to loaded swf?
the final coordinate of the child would be x=200, y=200. But, is there anyway that that i cant addChild with only respect to the coordinate of iamchild?
I got a "preloader" that creates an movieclip and loads an SWF. Now in the loaded SWF i want a close button to go back to the "preloader". The preloader isn't an actuall preloader but some sort of mainclip.Now i tried this:removeChild(MovieClip(e.currentTarget).parent.pare nt.parent)But i get error:ArgumentError: Error #2025: The supplied DisplayObject must be a child of the caller.at flash.display::DisplayObjectContainer/removeChild()at MethodInfo-6()
if I add a clip to the stage as a child and remove the parent and set the parent equal to null, does the child get collected and removed from memory? What if the child has an image loaded into it as its child?
In my application I'm loading a series of png images as overlays that can be tinted for customizing in this app. When I trace my memory, the basic app idles at 64,000 k. The exact second I load those overlay images it goes up to 205,000k. If I remove those clips and "clear" the stage I should go back down to 64,000 k if everything is removed and collected correctly, right? It's not, it's hanging at 215,000 k. Are my images being cached and that is the reason for the memory staying up? If so, how do I prevent that. Or upon removing the parent of the image how can I un-cache the image.
If a user switches between models and loads several different items then the application actually crashes the Flash environment because of too much memory usage. It also does the same to browsers.
I have a parent swf which loads many child swfs (though only one is displayed at a time). My intention was to use the loaded SWFs document class to retrieve an array of objects to be assigned a tab index, combine this with the parent's own array of objects and apply sequential tab indices to them all. But what happens is actually that the parent's objects are assigned an index, but the external swf is unaffected. In fact, the external swf retains its automatic tab indexing, when I would expect that having set a value for InteractiveObject.tabIndex, automatic tab indexing would be disabled.
I've seen similar tales elsewhere. Most posts I've read are wanting to load an external swf, give it focus and loop through those objects, then close the swf and return to looping through the parent. However I would like loop through all objects as one. including manipulating the focus manager(s), and basically fiddling with every tab-related property I know.
trying to on mouse over set the parent of the moused over text field to the highest depth child of its parent i tried both of these: [code] private function
In Flex/Actionscript.When writing an on mouseMove event on a Canvas control for example, how could I check to see what control if any is under the mouse pointer at a particular coordinate?
I created a simple button that displays an error messeage: "error opening 'url" when I test the movie, but does play and opens in browser after publishing. However, it won't open in the browser in a different location. I pasted the html code in a web page but it doesn't work there nor opens in the browser in a differnet location from where it was originally published and saved. Why is that?
I have an issue where removechild won't infact remove a child. I think its something to do with my dropTarget.parent issues. The concept of the code is that you drag a source onto a destination. When you drop the source onto the destination you will get a text field that says "Hello" or "Goodbye". The objective i want to achive is that once i drop a source onto the destination, removechild will remove any previouse textfields added. This is proving difficult.
I am trying to make a calculator where a user can select from a list of items. If a user clicks say "ITEM1", it should add the item to a "CONTAINER_MC". The problem i have is all my data is set inside an array containing names and prices like the code below.
Here is a working script to drag drop a ball from the stage into another target mc:
ball.addEventListener(MouseEvent.MOUSE_DOWN, pickUp); stage.addEventListener(MouseEvent.MOUSE_UP, dropIt); function pickUp(event:MouseEvent):void{ [code]...
It works well but I'm new to AS3 and I am having difficulty amending this script to drag the ball out of a parent mc (instead of the stage) and onto another mc (the target mc). To explain: imagine a ball, a box, a tri, + more shapes all within a scrolling mc (initial parent), the user scrolls to select a shape, then drag-drops onto a target mc on the stage.The scrolling is no problem, but how would you amend the script above so that the ball can start inside a parent mc rather than on the stage itself?
I had the core of my site down for me, I believe in Flash 8 using AS2. I took over the site and attempted to learn everything that they did, so I could update it myself. The one thing that I can't figure out... is where they put the customized scrollbars they made for my site. There are some scrollPane components in the library, but I can't see where he put the custom scrollbars. The homepage link is here:The blue scrollbars are what I'm trying to find. When I add more content I want to be able to use the same scrollbars. If you need the FLA, I'll send it to you. I am pretty sure there is some default location that they're stored in though, and I'm just not seeing it
I downloaded a tutorial fla file and it contains 2 images of cars which seem to be under a folder called "bitmap assets" seen in the library panel. Now, since i have not created them, is there a way for me to somehow access them directly?
I'm working on a build script in the Flash Builder version of Eclipse. This build script needs to import launch configuration .launch files into the user's workspace. However there doesn't seem to be an available ANT var for determining the workspace location. While stepping through the available vars with intellisense I noticed that ${osgi.instance.area} does point to my current workspace but when I tried to echo it back in a running ant script it just spat out "${osgi.instance.area}" and not the path.
I'm using a RegExp that finds words with a hash in front such as #example .
If there is a link in a text with a hash like example.com/#about it comes to problems. So how to extend it to find only words that have also a space in front of the #? (E.g.: hello #world)