road0001 / as3isolib Goto Github PK
View Code? Open in Web Editor NEWAutomatically exported from code.google.com/p/as3isolib
Automatically exported from code.google.com/p/as3isolib
I just got r187, excited to try BitmapFills on IsoBoxes, but found there was no
way I could get the
ColorTransform in the following to work:
var f0:BitmapFill = new BitmapFill(srcClass, IsoOrientation.XY, null, new ColorTransform(0.6,
0.6, 0.6));
I snooped around in BitmapFill.as, and it turns out that after the first call
to (BitmapFill::set
source), there are some cases where the old bitmapData is preserved, and the
call has no effect.
It's a one line fix, I believe, although I'm not particularly familiar with the
source.
Also, the ColorTransform has no effect if the sourceObject is a BitmapData or
Bitmap. This
makes for slightly confusing API. I don't know if it would be appropriate to
correct or simply
document this, or perhaps do something else.
---
What version of the product are you using? On what operating system?
as3isolib r187, Flash Player 10, Flex SDK 3, Mac OS X 10.5.6
Original issue reported on code.google.com by [email protected]
on 11 Feb 2009 at 11:18
Attachments:
What steps will reproduce the problem?
1. Create IsoRectangle Object without specifying Stroke
2. Add to Scene
3.
What is the expected output? What do you see instead?
Rectangle should default the Stroke to the DEFAULT_STROKE.
No borders are drawn.
What version of the product are you using? On what operating system?
Latest Trunk Code.
Please provide any additional information below.
Changed line 67 of IsoPolygon.as to
var stroke:IStroke = strokes.length >= 1 ? IStroke(strokes[0]) :
DEFAULT_STROKE;
Original issue reported on code.google.com by [email protected]
on 5 Sep 2009 at 6:42
What steps will reproduce the problem?
1. Add isobox with image as per http://groups.google.com/group/as3isolib-
users-group/browse_thread/thread/136a32f2a0128ffa example
2. Replace wood.jog with custom image say with some text on image.
3. The image do not propery render if box dimentions are different say
200, 100,100
What is the expected output? What do you see instead?
The expected output should be the image should render complete on each
side. But it renders the image considering it as a squre box.
What version of the product are you using? On what operating system?
beta relaese with windows XP.
Please provide any additional information below.
We need to fill bitmap on the box. If box is square it works fine. When we
change any one dimention the bitmap is not rendered properly. Please see
the attached file.
Thanks
Sanjeev Kumar
Original issue reported on code.google.com by [email protected]
on 24 May 2009 at 11:40
Attachments:
I'm concerned that calling myScene.removeChildByID(id) will still
invalidate a scene even if the child does not exist, which would be non-
ideal.
Here's the code in question, from IsoScene.as:
override public function removeChildByID (id:String):INode
{
var child:INode = super.removeChildByID(id);
child.removeEventListener(IsoEvent.INVALIDATE,
child_invalidateHandler);
_isInvalidated = true;
return child;
}
I haven't tested but expect the above code to fail when the call
removeEventListener is performed on a null object.
Original issue reported on code.google.com by [email protected]
on 22 Apr 2009 at 4:54
What steps will reproduce the problem?
1. Instanced IsoGrid or IsoScene
2.
3.
What is the expected output? What do you see instead?
I expected to the grid displayed on the stage, but received a 1046 error
instead.
What version of the product are you using? On what operating system?
fp10 v1.0
Windows 7
Please provide any additional information below.
I am trying to get started with AS3IsoLib by following in Flash CS5. I am
following Lee Brimelow's Flex tutorial on gotoandlearn.com, but have run into a
import problem. It is coming from inside AS3IsoLib. In the Node.as class, it is
throwing 1046:Type was not found or was not a compile-time constant: INode.
1--Tried using the files from the SVN. Got the 1046 Error. Thinking that the
SVN files were the cause
2--I downloaded the .zip file. Same exact 1046 Error
3--I thought it was an import issue, but they share the same package and the
Node.as class was successfully found.
4--Maybe it was the location of ActionScript folder where I keep my libraries
at. But I have always used it with no problems from Greensock, NResponder, and
Papervision3D.
Original issue reported on code.google.com by [email protected]
on 18 Jun 2011 at 5:31
I'm trying to use FDT with Flex 4 beta 2 (build 10485) SDK to compile
tutorials.
Trying to compile tutorial 1:
package isotest {
import as3isolib.display.primitive.IsoBox;
import as3isolib.display.scene.IsoScene;
import flash.display.Sprite;
/**
* @author Jan Klosinski, [email protected]
* Nov 17, 2009
*/
public class Tut1 extends Sprite {
public function Tut1() {
var box:IsoBox = new IsoBox();
box.setSize(25, 25, 25);
box.moveTo(200, 0, 0);
var scene:IsoScene = new IsoScene();
scene.hostContainer = this;
scene.addChild(box);
scene.render();
}
}
}
I'm getting this error in the library:
as3isolib/display/renderers/DefaultSceneLayoutRenderer.as(95): col: 10
Warning: Function value used where type Boolean was expected. Possibly the
parentheses () are missing after this function reference.
if (collisionDetectionFunc)
^
I'm using the source files, not SWC.
What configuration are you using to work with the library? Should I try
Flex 3.4 maybe?
Original issue reported on code.google.com by [email protected]
on 18 Nov 2009 at 9:26
Hi,
in the IsoView there is:
private var zoomContainer:Sprite;
protected var mContainer:Sprite;
which is inconsistent. I'm inheriting my own view class from IsoView and need
access to both of them.
Please change those to protected.
Thanks
Original issue reported on code.google.com by [email protected]
on 10 Jun 2011 at 8:06
Hi, your testing svn repos (as3isolib.googlecode.com/svn/testing) doesn't
seem to work anymore. Just as I was interested in how you make an
application with as3isolib.
Could you please upload it as a zip in the Downloads section?
Thanks a lot.
Original issue reported on code.google.com by wttewaall
on 17 Apr 2009 at 11:44
What steps will reproduce the problem?
1. _isoScene.addChild(_isoGrid1)
2. Let IsoLib render/update everything
3. _isoScene.addChild(_isoGrid1)
4. Let IsoLib render/update everything
5. _isoScene.removeChild(_isoGrid1)
6. Let IsoLib render/update everything
What is the expected output? What do you see instead?
Expected:Expected is that _isoGrid1 is no longer a child to _isoScene.
What happens: IsoLib crashes when it tries to render.
What version of the product are you using? On what operating system?
Latest IsoLib, Windows 7.
Please provide any additional information below.
I think the issue lies in IsoContainer (or higher up) when it tries to add a
child that already exists. Node (which IsoContainer extends) have a check for
this case and then does nothing, IsoContainer on the other hand will proceed as
usual even if the child isn't new.
My simple fix was to remove the check that Node does. So if you add a node
which already is a child then it will first be removed and then added again.
Original issue reported on code.google.com by [email protected]
on 20 Jul 2011 at 11:46
What steps will reproduce the problem?
1. add IsoBox to IsoScene
2. set box.includeInLayout flag to false, render box
3. box is still in displayListChildren
What is the expected output? What do you see instead?
expected output: scene.displayListChildren.length = 0
see instead: scene.displayListChildren.length = 1
What version of the product are you using? On what operating system?
as3isolib fp10 r310, win7
Please provide any additional information below.
In IsoContainer::renderLogic you work with displayListChildren rather than
displayListChildrenArray and child is actually removed from copy of real
displayListChildrenArray.
Original issue reported on code.google.com by [email protected]
on 20 Jan 2011 at 9:29
This bit of depth sorting code:
if ((objB.x < rightA) &&
(objB.y < frontA) &&
(objB.z < topA) &&
(i !== j)) {
behind.push(objB);
output = true;
}
isn't sufficient on it's own because it only places an IsoSprite infront of
another IsoSprite if it's to the right and below the one it's testing it
against.
The issue is that an IsoSprite can be on the same y but to the right, in this
case it should be placed infront of that IsoSprite. Same is true if it's on the
same x and tested IsoSprite is below the other.
The Solution is to replace that if statement with this:
if (i !== j) {
if ((objB.x < rightA) && (objB.y < frontA) && (objB.z < topA)) {
behind.push(objB);
}
else if (objA.y == objB.y && objB.x < rightA) {
behind.push(objB);
}
else if (objA.x == objB.x && objB.y < frontA) {
behind.push(objB);
}
}
Original issue reported on code.google.com by [email protected]
on 25 May 2011 at 4:50
What steps will reproduce the problem?
1. Add some IsoBox or IsoSprite to a scene using DefaultSceneLayoutRenderer
2. Move the objects
3.
What is the expected output? What do you see instead?
The objects should be renderer in the correct order but some objects are not in
the correct order
What version of the product are you using? On what operating system?
r305
Please provide any additional information below.
download attachment to see the problem
Original issue reported on code.google.com by [email protected]
on 14 Jun 2010 at 8:41
Attachments:
What steps will reproduce the problem?
1. Call Node:getChildIndex
What is the expected output? What do you see instead?
Node:getChildIndex currently duplicate Array:indexOf functionality.
What version of the product are you using? On what operating system?
as3isolib.v1.core
Please provide any additional information below.
It's proper to replace
- var i:int;
- while ( i < numChildren )
- {
- if ( child == childrenArray[ i ])
- return i;
- i++;
- }
- return -1;
with:
+ return childrenArray.indexOf(child);
Original issue reported on code.google.com by [email protected]
on 4 Nov 2012 at 1:55
What steps will reproduce the problem?
1. Creating iso sprites then swaping their parents back and forth.
What is the expected output? What do you see instead?
Iso sprite to be added to scene. It works untill in my application the
index == 23, then it can no longer add isosprites to the scene.
Please use labels and text to provide additional information.
RangeError: Error #2006: The supplied index is out of bounds.
at flash.display::DisplayObjectContainer/addChildAt()
at as3isolib.core::IsoContainer/addChildAt()
at as3isolib.display.scene::IsoScene/addChildAt()
at as3isolib.data::Node/addChild()
at IsoApplication/placeBuilding()
at IsoApplication/MapBuildings()
at nl.dpdk.services.remoting::RemotingProxy/onResult()
at RemotingResponder/onResult()
Information i think is relevant to this range error. I think IsoContainer
is swaping a display objects parents, and when it happens a couple times,
it produces an error. I dont see any code about removing children before
swaping parents, please look into this one. ;)
http://life.neophi.com/danielr/2007/06/rangeerror_error_2006_the_supp.html
Original issue reported on code.google.com by [email protected]
on 28 Jan 2009 at 9:07
What steps will reproduce the problem?
1. creating two IsoGroup and detrmine their position (x, y, z)
2. using IsoGroup.isoBounds.intersects function to check if the two are
coliding.
What is the expected output? What do you see instead?
I excpect to get false when the two IsoGroup are in different position and
not toucing each other, but the isoBounds "think" the IsoGroup position is
always the origin point (0, 0, 0).
beacause of that, I get always true from the intersects function.
it doesn't considering the position of the IsoGroup.
What version of the product are you using? On what operating system?
the last version of as3isolib
Please provide any additional information below.
I think the solution is quite simple.
just update the isoBounds properties according the IsoGroup current
position.
thanks in advance
Original issue reported on code.google.com by [email protected]
on 20 May 2010 at 8:40
What steps will reproduce the problem?
1. copy and paste the code to see a blank .swf...?
2.
3.
What is the expected output? What do you see instead?
I expected to have the IsoView follow the box
What version of the product are you using? On what operating system?
Latest Version of isolib; Mac
Please provide any additional information below.
Just copy and paste the code
Original issue reported on code.google.com by [email protected]
on 9 Oct 2008 at 1:22
Attachments:
What steps will reproduce the problem?
1. Set up an IsoScene which is rendered through an IsoView with the
DefaultViewRenderer.
2. Populate the scene with several Objects, some of which are outside the view.
3. Add a Child to the scene with IsoScene.addChild - bam:
RangeError: Error #2006: Der angegebene Index liegt außerhalb des
zulässigen Bereichs.
at flash.display::DisplayObjectContainer/addChildAt()
at
as3isolib.core::IsoContainer/addChildAt()[D:\projects\AnyrayFlex\src\as3isolib\c
ore\IsoContainer.as:119]
at
as3isolib.display.scene::IsoScene/addChildAt()[D:\projects\AnyrayFlex\src\as3iso
lib\display\scene\IsoScene.as:146]
at
as3isolib.data::Node/addChild()[D:\projects\AnyrayFlex\src\as3isolib\data\Node.a
s:225]
at
xi::CityView/mouseMoveHandler()[D:\projects\AnyrayFlex\src\xi\CityView.as:175]
My diagnosis:
The IsoContainer.addChildAt function tries to call the AS3 addChildAt
function of the IsoScene's mainContainer (a Sprite), passing an index which
corresponds to the total number of this IsoContainer's children.
However, due to the ViewRenderer, the number of children which are actually
displayed can be smaller.
My Solution for now is a small modification in IsoContainer.as:
override public function addChildAt (child:INode, index:uint):void
{
if (child is IIsoContainer)
{
super.addChildAt(child, index);
if (IIsoContainer(child).includeInLayout)
{
displayListChildrenArray.push(child);
if (index > mainContainer.numChildren) {
trace("index too large: ", index, "should be <",
mainContainer.numChildren);
index = mainContainer.numChildren;
}
mainContainer.addChildAt(IIsoContainer(child).container, index);
}
}
else
throw new Error("parameter child does not implement IContainer.");
}
Original issue reported on code.google.com by [email protected]
on 4 Jan 2009 at 3:01
What steps will reproduce the problem?
1. Running from flash CS4 rather than Flex.
2. Specificialy, running the bitmap test example.
3. Using packages rather than the fl.
What is the expected output? What do you see instead?
To see a grid with an iso box, that has a bitmap from a loaded png.
What version of the product are you using? On what operating system?
The test example upladed most recently as of 12/26/08. Flash IDE cs4.
Please provide any additional information below.
The error seems random. As if an event or function is sometimes run
before its loaded. If I compile 6 times in a row, 1 or 2 times it will
not throw the error and load fine.
EventDispatcherProxy.as, Line 42
Source:
public class EventDispatcherProxy implements IEventDispatcher,
IEventDispatcherProxy
Error:
1044: Interface method set proxyTarget in namespace
eDpLib.events:IEventDispatcherProxy not implemented by class
eDpLib.events:EventDispatcherProxy.
AND
Node.as Line 185, IsoDisplayObject.as Line 590, IsoView.as Line 195,
IsoSprite.as Line 95, IsoPrimitive.as Line 364 and IsoPolygon.as Line 51.
Source:
return value.parent == this;
Warning: 3590: void used where a Boolean value was expected. The
expression will be type coerced to Boolean.
The last few can be fixed by casting Boolean() around the returns.
Althought I dont know if it would produce any side effects. However, im
not sure about the interface error, my only guess is that something isnt
run in time.
Original issue reported on code.google.com by [email protected]
on 27 Dec 2008 at 12:35
What steps will reproduce the problem?
1. Node:removeChildByID duplicates Node:getChildIndex functional inside it.
What is the expected output? What do you see instead?
Node:removeChildByID should use Node:getChildIndex for searching in
childrenArray.
What version of the product are you using? On what operating system?
as3isolib.v1.core
Please provide any additional information below.
- //remove from children array
- var i:uint;
-
- for ( i; i < childrenArray.length; i++ )
- {
- if ( child == childrenArray[ i ])
- {
- childrenArray.splice( i, 1 );
- delete childrenIdDict[child.id];
- break;
- }
- }
+ var childIndex:int = getChildIndex(child);
+
+ if (childIndex >= 0) {
+ childrenArray.splice(childIndex, 1);
+ }
Original issue reported on code.google.com by [email protected]
on 4 Nov 2012 at 2:00
Currently there's convenience feature to find out when all scenes in a given
view have finished rendering.
I'm submitting a patch in the comments.
Original issue reported on code.google.com by [email protected]
on 22 Apr 2009 at 5:16
please implement support for initialization parameters to the constructors
of the most commonly used classes such as:
IsoView
IsoScene
IsoGrid
IsoBox
IsoSprite
If possible, for all or at least some of those the first param should be
the 'id'.
I implemented a few of those in my local copy and I can attest that it
really helps in reducing code verbosity.
I suggest all or at least most of these parameters should be optional.
As you know, optional constructor parameters do not break existing code.
Original issue reported on code.google.com by [email protected]
on 22 Apr 2009 at 5:09
Reproduce steps
1. Create a demo like tutorial 7 but with moving duration of 10 seconds
(and with no styling renderer)
2. Run the demo and click on the grid to move the box
3. Observe CPU consumption
Expected result:
- CPU consumption < 10%
Actual result:
- CPU goes up to 50-55%
What version of the product are you using?
- AS3IsoLib fp9 revision 247
On what operating system?
- Windows 7 RC, CPU Intel Core 2 Duo 2.53GHz, 2GB RAM
Please provide any additional information below:
- When I comment out the line: mainContainer.graphics.clear() in IsoScene
class, CPU usage reduces and is as expected.
Original issue reported on code.google.com by [email protected]
on 30 Jul 2009 at 2:11
What steps will reproduce the problem?
1. create an isoBox of any given width, length and height
2. apply a bitmap fill of matching width and length to the top face
3. notice the bitmap seems to be offset from the expected origin of the face
What is the expected output? What do you see instead?
The bitmap image should match the intended point of the applied-to face
Please use labels and text to provide additional information.
Original issue reported on code.google.com by jwopitz
on 9 Jun 2009 at 5:00
The as3isolib is a great library and very useful for many developers,
especially because isometric games are very popular all over the web. As much
as i love to work with Flash and ActionScript, it is still a problem that the
Flash Plugin is not available on all platforms - sure you can build a native
application with the AIR runtime, but if some of us would like to target the
web it is a problem.
Some weeks ago i started a project called "dartflash" and the name pretty much
says what it is - it is a port of the Flash API to Googles upcoming Dart
programming language (http://www.dartlang.org). There are other projects like
"EaselJS" who did the same for JavaScript but the API is not very compatible to
the original API and JavaScript is far from ActionScript. Dart on the other
hand is very similar to ActionScript and it is a joy to work with it when you
come from the ActionScript world.
Here are some samples and a game i have ported from ActionScript to Dart:
http://www.dartflash.com
http://www.dartflash.com/apps/escape/escape.html
The source of the dartflash library (including all samples and the game) is
available here:
https://github.com/bp74/dartflash
Sorry for the long introduction, here comes my suggestion/question:
It would be great if someone would port the as3isolib to something like the
dartisolib using dartflash. Many programmers would be able to port their Flash
games to HTML5 in an easy and fast way. So i ask if someone is interested? I
would do it by myself too, but my spare time is limited to and my main focus is
on improving the dartflash library. So please check out Dart and the dartflash
library, hope you will like it.
Original issue reported on code.google.com by [email protected]
on 17 Aug 2012 at 8:36
I'm running to an issue where when I have 2500 actor on a grid of 50x50, the
depth sorting is really slow to execute.
Have you worked on that?
Original issue reported on code.google.com by [email protected]
on 10 Jun 2010 at 8:36
You might want to implement this...
Basicaly it lets move sprites by grid coordinates
Original issue reported on code.google.com by [email protected]
on 16 Oct 2008 at 7:36
Attachments:
What steps will reproduce the problem?
1. I DOWNLOADED THE LATEST VERSION OF THE ENGINE
2. I tried to test the first tutorial sample
3.
---
What is the expected output? What do you see instead?
i got a syntax error in the class
1084: Syntax error: expecting identifier before lessthan.
private var styleRendererFactories:Vector.<IFactory> = new Vector.<IFactory>();
styl1084: Syntax error: expecting identifier before
lessthan.eRendererFactories = Vector.<IFactory>(value);
------
What version of the product are you using? On what operating system?
this is the version link
http://as3isolib.googlecode.com/svn/trunk/fp10/download/as3isolib.zip
i use flash cs3 on windows Xp
----
Please provide any additional information below.
i have an old version of the engine.
it worked fine in sample 1
but in other samples their was some new features not supported in the old
version
would you please tell me how to over come the issue of the new version
Original issue reported on code.google.com by [email protected]
on 9 Mar 2010 at 5:48
[deleted issue]
What steps will reproduce the problem?
box = new IsoBox();
faceColors = [0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000];
box.faceColors= faceColors;
box.width =5;
box.height =5;
box.length =50;
box.moveTo(0, 5, 0);
scene.addChild(box);
var grid:IsoGrid = new IsoGrid();
scene.addChild(grid);
scene.render();
What is the expected output? What do you see instead?
the box doesn't appear where it suppose to be.
it suppose to be after the green axe but it appears below zero for both
axes the green and the blue...
What version of the product are you using? On what operating system?
both last download and svn.
see the swf to see what happen
Original issue reported on code.google.com by [email protected]
on 7 Nov 2008 at 1:17
Attachments:
Come on guys, follow convention and use a proper, unshortened name like
IsoPoint or Iso3DPoint or 3DPoint
Original issue reported on code.google.com by [email protected]
on 14 Apr 2010 at 2:35
What steps will reproduce the problem?
1.
2. xcsv
3.
What is the expected output? What do you see instead?
What version of the product are you using? On what operating system?
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 20 Jun 2011 at 5:31
What steps will reproduce the problem?
Put many boxes on stage (lay them on the grid) and try to move one just
near another.
What is the expected output? What do you see instead?
I see (but rarely) that the box behind is for some time displayed in front
of the box that is in the front.
What version of the product are you using? On what operating system?
Vista 64bit.
Please provide any additional information below.
Solution: I changed the sorting routine to:
////////////////////////////////////////////////////
// SORT
////////////////////////////////////////////////////
private function isoDepthSort (childA:Object, childB:Object):int
{
var boundsA:IBounds = childA.isoBounds;
var boundsB:IBounds = childB.isoBounds;
if (boundsA.right <= boundsB.left)
return -1;
else if (boundsA.front <= boundsB.back)
return -1;
else if (boundsA.top <= boundsB.bottom)
return -1;
else if (boundsA.left >= boundsB.right)
return 1;
else if (boundsA.back >= boundsB.front)
return 1;
else if (boundsA.bottom >= boundsB.top)
return 1;
else
return 0;
}
I just moved all 3 "<=" "if"-s to the top - somehow now it works (but
didn't do much testing).
Aditionally, I think that this algorithm should run faster because it exits
the testing loop earlier. That's because statistically the items appearing
earlier in the array are already sorted in the loop before, so it exits the
loop somewhere in the upper 3 "if"-s.
Btw I don't know what's the "return 0;" for - because this can happen by
error only (?). Two different objects in the list shouldn't have the same
depth (?).
Original issue reported on code.google.com by [email protected]
on 12 Mar 2009 at 10:06
What steps will reproduce the problem?
1. Setup a handler for RENDER event of an IsoScene
2. On the handler, check for the value of scene.isInvalidated
What is the expected output? What do you see instead?
Expected: isInvalidated returns false
Currently: isInvalidated returns true
Original issue reported on code.google.com by [email protected]
on 22 Apr 2009 at 5:24
What steps will reproduce the problem?
1. Set the limitRangeOfMotion and rangeOfMotionTarget properties of the IsoView
to a large iso object, such as a grid. Add UI elements to enable zooming and
panning of the iso view.
2. Pan to the edge of the object in the IsoView, works correctly.
3. Zoom the IsoView and then try panning again, unexpected behaviour.
What is the expected output? What do you see instead?
That the viewable area would be locked to only display the object used for the
rangeOfMotionTarget, taking into account the zoom of the iso view.
Instead, when zoomed in we can pan too far past the object. The inverse may be
true too when zooming out.
What version of the product are you using? On what operating system?
Revision 306 on OSX 10.5.8
Please provide any additional information below.
Great library, thank you!
Original issue reported on code.google.com by [email protected]
on 5 Aug 2010 at 3:39
What steps will reproduce the problem?
In Flex Builder 3:
1. stage.frameRate = 31; or
2. -default-frame-rate 31 (compiler argument) or
3. [SWF(frameRate="31")] (metadata of main class)
What is the expected output? What do you see instead?
Flash on 31 FPS. I see Flash on default (12) FPS.
What version of the product are you using? On what operating system?
Vista Professional 64 bit
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 12 Mar 2009 at 9:54
What steps will reproduce the problem?
1. call IsoView.isoToLocal(p)
2. p0 is changed
What is the expected output? What do you see instead?
p0 not changed
Please provide any additional information below.
public function isoToLocal( isoPt:Pt ):Point {
isoPt = IsoMath.isoToScreen( isoPt );
[...]
}
should be changed to:
public function isoToLocal( isoPt:Pt ):Point {
isoPt = IsoMath.isoToScreen( isoPt, true );
[...]
}
Original issue reported on code.google.com by [email protected]
on 25 Jun 2011 at 2:13
This problem only in fp10 as3isolib.
Please checkout the displayerListChildre's getter of IsoContainer class:
public function get displayListChildren():Array
{
var temp:Array = [];
var child:IIsoContainer;
for each ( child in displayListChildrenArray )
temp.push( child );
return temp;
}
It alway create a new clone of "displayListChildrenArray". So it useless if
push/splice it. The "displayListChildrenArray" is untouchable from outside.
And in IsoContainer's renderLogic function, if it's not included layout, it
will be removed from parent's displayListChildren. In fact, this will never
happen!
Original issue reported on code.google.com by [email protected]
on 28 Jul 2011 at 7:57
Should return a Pt instance
Currently it returns a flash.geom.Point instance
Original issue reported on code.google.com by [email protected]
on 6 Apr 2009 at 5:42
"if ( bIncludeInLayout ){...}else if ( !bIncludeInLayout )"
the second "if" looks like ri'redundantly, right?
Original issue reported on code.google.com by [email protected]
on 22 May 2011 at 10:33
What steps will reproduce the problem?
1. Add an IsoBox to the scene
2. Use myIsoBox.moveTo(0.5, 1.2, 0) (or moveBy, if preferred)
3. Render the scene
4. Check the box's coordinates with myIsoBox.x, .y and .z
What is the expected output? What do you see instead?
I expect the box to be at coordinates (0.5, 1.2, 0), since Flash supports
decimal values.
Instead, the box will be at coordinates (1, 1, 0).
What version of the product are you using? On what operating system?
as3isolib.v1.core, Windows 7
Original issue reported on code.google.com by [email protected]
on 27 Dec 2011 at 1:09
What steps will reproduce the problem?
1. call removeChild
2. look in Flex profiler to see what instance stick around
What's happening is when you call addChild it adds this listener:
child.addEventListener(IsoEvent.INVALIDATE, child_invalidateHandler);
which when called does this:
invalidatedChildrenArray.push(child);
The problem is that when you call IsoScene.removeChild it doesn't remove child
from the invalidatedChildrenArray. Here's a solution that fixes it, replace
IsoScene.removeChildByID(id:String) with this:
override public function removeChildByID (id:String):INode
{
var child:INode = super.removeChildByID(id);
if (child)
{
child.removeEventListener(IsoEvent.INVALIDATE, child_invalidateHandler);
if (invalidatedChildrenArray) {
for (var i:int = 0; i < invalidatedChildrenArray.length; i++) {
if (invalidatedChildrenArray[i] == child) {
invalidatedChildrenArray.splice(i, 1);
break;
}
}
}
bIsInvalidated = true;
}
return child;
}
Original issue reported on code.google.com by [email protected]
on 23 Mar 2011 at 4:46
There is no way to specify background mc for IsoView instead of making changes
in IsoView.as file. Would we great if IsoView.bgContainer will be protected or
public setter and will be possible to set it through subclassing or direct
calling.
Original issue reported on code.google.com by [email protected]
on 24 Aug 2010 at 9:12
I need to develop a isometric game on facebook like farmvillie, barnbuddy or
etc. I found couple of frame works (link is here) to develop it, but they not
simple as isolib. So I decided to go with as3 isolib. Google project for that
is here.
But I could not find a A-Z tutorial for as3 isolib, except basic (adding
scenes, adding map and etc). I want more stuff. So Can you please suggest me a
advance as3 isolib tutorial (I googled it 100 times) ?
Anyway if you have suggestion for frame work except isolib to develop isometric
game,let me know it also.
Thanks
Original issue reported on code.google.com by [email protected]
on 22 Mar 2012 at 9:04
What steps will reproduce the problem?
1. Node.as getChildByID is dramatically slow. It has O(n) complexity.
What is the expected output? What do you see instead?
Node::addChildAt expects to has O(1) complexity, but it used getChildByID
internal.
What version of the product are you using? On what operating system?
as3isolib.v1.core
Please provide any additional information below.
If it really NEEDS to check children ids, it's better to make support
dictionary in parallel to childrenArray. Sample diff provided.
Original issue reported on code.google.com by [email protected]
on 4 Nov 2012 at 1:35
Attachments:
Use fp10 only
view.viewRenderers = [new ClassFactory(DefaultViewRenderer)];
ArgumentError: Error #2025: 提供的 DisplayObject
必须是调用者的子级。
at flash.display::DisplayObjectContainer/setChildIndex()
at as3isolib.core::IsoContainer/setChildIndex()[D:\workspace\Flex Builder
3\As3isolib\src\as3isolib\core\IsoContainer.as:155]
at as3isolib.display.scene::IsoScene/setChildIndex()[D:\workspace\Flex
Builder 3\As3isolib\src\as3isolib\display\scene\IsoScene.as:169]
at
as3isolib.display.renderers::DefaultSceneLayoutRenderer/place()[D:\workspace\Fle
x
Builder
3\As3isolib\src\as3isolib\display\renderers\DefaultSceneLayoutRenderer.as:153]
at
as3isolib.display.renderers::DefaultSceneLayoutRenderer/renderScene()[D:\workspa
ce\Flex
Builder
3\As3isolib\src\as3isolib\display\renderers\DefaultSceneLayoutRenderer.as:120]
at as3isolib.display.scene::IsoScene/renderLogic()[D:\workspace\Flex
Builder 3\As3isolib\src\as3isolib\display\scene\IsoScene.as:344]
at as3isolib.core::IsoContainer/render()[D:\workspace\Flex Builder
3\As3isolib\src\as3isolib\core\IsoContainer.as:276]
at <anonymous>()[D:\workspace\Flex Builder 3\arpg\src\arpg.as:336]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at com.gskinner.motion::GTween/setPosition()[D:\workspace\Flex Builder
3\GTween\src\com\gskinner\motion\GTween.as:733]
at com.gskinner.motion::GTween/handleTick()[D:\workspace\Flex Builder
3\GTween\src\com\gskinner\motion\GTween.as:826]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at HybridTicker/tick()[D:\workspace\Flex Builder
3\GTween\src\com\gskinner\motion\GTween.as:906]
Original issue reported on code.google.com by [email protected]
on 30 Oct 2009 at 3:00
What steps will reproduce the problem?
1. go to the proj page http://code.google.com/p/as3isolib/
2. Under "using as3isolib" headline the is a link "here(fp10 only)"
- click that link.
3. "here(fp10 only)" will take you to the following url of a zip
file -
http://as3isolib.googlecode.com/svn/trunk/fp10/download/as3isolib.zip
But the link is broken and there was no other way to
download the source code!!!
Original issue reported on code.google.com by [email protected]
on 24 Jan 2011 at 8:59
I'm not sure if view borders affect performance enough, but it would be
nice that there was a way to turn them off.
something like:
view.drawBorder = false;
Original issue reported on code.google.com by [email protected]
on 14 Apr 2009 at 5:16
What steps will reproduce the problem?
1.Create iso scene
2.Add an IsoBox to it
3.remove IsoBox by using IsoScene(scene).removeChild(_box)
4.Add another IsoBox to the scene, render scene
What is the expected output? What do you see instead?
Expected output: continues to work, no crashes
Current output: [Fault] exception, information=Error: parameter child is not
found within node structure, unless first i set includeInLayout=false;
What version of the product are you using? On what operating system?
as3isolib.v1.core.swc, Windows 7
Please provide any additional information below.
Suggested change is to remove the includeInLayout functionality from
IIsoContainer, so that scene.addChild() scene.removeChild() behaves the same
ways as flash display list, without extra flags required. Loose objects should
be handled by the code implementing the engine, not the engine itself. If there
is a reason behind this architecture, please provide more information in wiki
Original issue reported on code.google.com by [email protected]
on 16 Dec 2011 at 3:52
in file IsoContainer
at function addChildAt
//put the following "if" before pushing a child to displayListChildrenArray
if ( displayListChildrenArray.indexOf( child ) < 0 )
displayListChildrenArray.push(child);
Original issue reported on code.google.com by [email protected]
on 3 Dec 2010 at 5:36
What steps will reproduce the problem?
1. I try to execute the examples
What is the expected output? What do you see instead?
This error: abc bytecode decoding failed
What version of the product are you using? On what operating system?
The last version and windows xp
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 9 Nov 2009 at 7:56
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.