Fork me on GitHub
Not signed in (Sign In)
    • CommentAuthorXor
    • CommentTimeJul 15th 2010
     
    For doing shooting stars that needed to be quite fast, I needed an ellipse instead of the dot to bridge the gaps their speed would create, turning their trail from a dotted line to an actual continuous trail (using clearBetweenFrames on the BitmapRenderer with a BlurFilter and ColorMatrixFilter to make the trail fade out and RotateToDirection to make the ellipses align).

    Here's the class (a simple adaption of Dot):
    /*
    * FLINT PARTICLE SYSTEM
    * .....................
    *
    * Author: Richard Lord
    * Copyright (c) Richard Lord 2008-2009
    * http://flintparticles.org
    *
    *
    * Licence Agreement
    *
    * Permission is hereby granted, free of charge, to any person obtaining a copy
    * of this software and associated documentation files (the "Software"), to deal
    * in the Software without restriction, including without limitation the rights
    * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
    * copies of the Software, and to permit persons to whom the Software is
    * furnished to do so, subject to the following conditions:
    *
    * The above copyright notice and this permission notice shall be included in
    * all copies or substantial portions of the Software.
    *
    * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
    * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
    * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
    * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
    * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
    * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
    * THE SOFTWARE.
    */

    package org.flintparticles.common.displayObjects
    {
    import flash.display.Shape;

    /**
    * The Ellipse class is a DisplayObject with a oval shape. The registration point
    * of this diaplay object is in the center of the Ellipse.
    */

    public class Ellipse extends Shape
    {
    private var _ellipseWidth:Number;
    private var _ellipseHeight:Number;
    private var _color:uint;

    /**
    * The constructor creates a Dot with a specified radius.
    * @param radius The radius, in pixels, of the Dot.
    * @param color The color of the Dot.
    * @param bm The blendMode for the Dot.
    */
    public function Ellipse( width:Number = 1, height:Number = 1, color:uint = 0xFFFFFF, bm:String = "normal" )
    {
    _ellipseWidth = width;
    _ellipseHeight = height;
    _color = color;
    draw();
    blendMode = bm;
    }

    private function draw():void
    {
    graphics.clear();
    graphics.beginFill( _color );
    graphics.drawEllipse( 0, 0, _ellipseWidth, _ellipseHeight );
    graphics.endFill();
    }

    public function get ellipseWidth():Number
    {
    return _ellipseWidth;
    }
    public function set ellipseWidth( value:Number ):void
    {
    _ellipseWidth = value;
    draw();
    }

    public function get ellipseHeight():Number
    {
    return _ellipseHeight;
    }
    public function set ellipseHeight( value:Number ):void
    {
    _ellipseHeight = value;
    draw();
    }

    public function get color():uint
    {
    return _color;
    }
    public function set color( value:uint ):void
    {
    _color = value;
    draw();
    }
    }
    }
    • CommentAuthorUbuntu
    • CommentTimeJul 18th 2010
     
    Nice Ellipse Class works great :D Thank You
    • CommentAuthorRichard
    • CommentTimeJul 24th 2010
     
    Hi Xor

    Thank you for this. May I include it in the next release of Flint? I would release it under the same license and copyright as the rest of the library, and would put your name in the comment as the author (what is your name?).

    Richard
    • CommentAuthorXor
    • CommentTimeJul 26th 2010
     
    Sure, that's why I'm posting it here. :)

    As for the name, please put:
    Xor (Adrian Stutz) for Nothing GmbH
    • CommentAuthorRichard
    • CommentTimeJul 27th 2010
     
    Thank you. It's now in SVN and will be in the next release.