# \[AS3\] ListChildPosition Class

**URL:** <https://forum.kirupa.com/t/as3-listchildposition-class/242661>\
**Category:** open source\
**Created:** [October 29, 2007, 9:38am UTC](https://forum.kirupa.com/t/as3-listchildposition-class/242661 "2007-10-29T09:38:26Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Gazurt](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/gazurt/32/4060_2.png) [@Gazurt](https://forum.kirupa.com/u/Gazurt)\
**Post date:** [October 29, 2007, 9:38am UTC](https://forum.kirupa.com/t/as3-listchildposition-class/242661/1 "2007-10-29T09:38:26Z")

</div>

I wrote a simple class.I use this for XML projects…

ListChildPosition.as:

```auto
package {

    public class ListChildPosition {
        ///
        var main_x_:Number;
        var main_y_:Number;
        ///
        var s_:Number;
        var obje_p:Number;
        ///
        var x_fark_:Number;
        var y_fark_:Number;
        ///
        var sutun_:String;
        ///
        public function ListChildPosition(sutun:String,s:Number,x_fark:Number,y_fark:Number,main_x:Number,main_y:Number) {
            main_x_=main_x;
            main_y_=main_y;
            ///
            sutun_=sutun;
            ///
            s_=s;
            ///
            x_fark_=x_fark;
            y_fark_=y_fark;
        }
        ///
        public function setPosition(obje:Object,id:Number):void {
            if (sutun_=="x") {
                obje.x=id%s_*x_fark_+main_x_;
                obje.y=Math.floor(id/s_)*y_fark_+main_y_;
            } else {
                if (sutun_=="y") {
                    obje.y=id%s_*y_fark_+main_y_;
                    obje.x=Math.floor(id/s_)*x_fark_+main_x_;
                }
            }
        }
        public function getPositionX(id:Number):Number {
            if (sutun_=="x") {
                obje_p=id%s_*x_fark_+main_x_;
            } else {
                if (sutun_=="y") {
                    obje_p=Math.floor(id/s_)*x_fark_+main_x_;
                }
            }
            return obje_p
        }
        public function getPositionY(id:Number):Number {
            if (sutun_=="x") {
                obje_p=Math.floor(id/s_)*y_fark_+main_y_;
            } else {
                if (sutun_=="y") {
                    obje_p=id%s_*y_fark_+main_y_;
                }
            }
            return obje_p
        }
    }
}

```

When you set the column value and column type(“x” or “y”), class give you X and Y values.

The main function is:

```auto
var list:ListChildPosition = new ListChildPosition(column_type,column_value,distance_x,distance_y,position_x,position_y);

```

In class there are few functions.They are:[LIST]  
[_]setPosition(child,id);  
[_]getPositionX(id);  
[\*]getPositionY(id);[/LIST][And example is here:](http://blogaz.flasherblog.com/ornekler/ListChildPosition.zip) Thats all 🙂
