atm the best thing I can come up with is an object that can recreate the
draw methods, assuming that you want a stroke on it. If I am just going to
stick with drawRect, drawRoundRect, and drawRoundRectComplex I can do that.
Looking into 'drawing' an inner stroke when using lineTo curveTo etc and
other draw commands will take a bit more work and time.

I kind of feel like it might end up being InnerStroke extends Shape, and
creating public methods that are 'override's of the graphics drawing api.
Just thoughts out loud.

Ktu

On Tue, Apr 13, 2010 at 12:09 PM, Latcho <spamtha...@gmail.com> wrote:

>
>
> Hi Ktu,
> Thanks for your supportive emails.
> I'm not a newbie but I thought I might have missed something on the API
> that wasn't apparent in the as3 docs.
>
> It sucks to have it confirmed it isn't supported :)
> The thing is I want to stay as close to the original api as possible
> preferably without wrappers (we're not only talking about rects but also
> curved shapes are possible you see...). Though I'd be happy to see what
> you're take on it looks like :)
>
> Thanks,
> Latcho
>
>
> On 13-04-10 16:59, Ktu wrote:
>
>> >From my experience, there is no API support for it. It sucks I know. I
>> deal with this problem all the time.
>>
>> For transparency, the beginFill(color:uint, alpha:Number); you can specify
>> alpha. With the system I have shown you, the stroke would be transparent
>> over top of the original color, so a red square with a semi transparent blue
>> border would produce purple as your border.
>>
>> If you want the stroke to be unaffected by the inside square it wouldn't
>> be that hard to write a class to handle that. In fact, I use this so often I
>> think I will do that.
>>
>> I should be able to finish by Thursday at the latest and I'll share when
>> I'm done. If you are eager for it, the idea would be to have build an
>> object, that you would specify dimensions for, and fill color and alpha, and
>> also the border fill and alpha, then when it draws the rectangle, it
>> incorporates the stroke width into consideration so that there are no
>> graphics behind it.
>>
>> Ktu
>>
>> On Tue, Apr 13, 2010 at 7:50 AM, spank man <spamtha...@gmail.com <mailto:
>> spamtha...@gmail.com>> wrote:
>>
>>    nice and simple sollution,
>>    but not so fine if you want the inner to be semi-transparent....
>>    Other ideas ? So no API support on this ?
>>
>>
>>    On Tue, Apr 13, 2010 at 4:11 AM, Ktu
>>    <ktu_fl...@cataclysmicrewind.com
>>    <mailto:ktu_fl...@cataclysmicrewind.com>> wrote:
>>
>>        When I want inside borders I do this:
>>
>>
>>        var spr:Sprite = new Sprite();
>>        addChild(spr);
>>        var g:Graphics = spr.graphics;
>>        g.beginFill(0xFF45A3);
>>
>>        g.drawRect(0, 0, 100, 100);
>>        g.endFill();
>>        drawInsideStroke(g, 0, 0, 100, 100, 1, 0x32010B);
>>
>>        function drawInsideStroke(graphics:Graphics, x:int, y:int,
>>        width:int, height:int, thickness:int = 1, color:uint = 0x000000) {
>>            graphics.endFill(); // for good measure, but maybe not?
>>            graphics.beginFill(color);
>>            graphics.drawRect(x, y, width, height);
>>            graphics.drawRect( x + thickness, y + thickness, width -
>>        (thickness * 2), height - (thickness * 2) );
>>            graphics.endFill();
>>
>>        }
>>        trace(spr.width,spr.height);  // -> 110 110
>>        trace(spr.getBounds(this)) // -> (x=-5, y=-5, w=110, h=110)
>>
>>
>>        On Mon, Apr 12, 2010 at 7:14 PM, Latcho <spamtha...@gmail.com
>>        <mailto:spamtha...@gmail.com>> wrote:
>>
>>            Hello,
>>            Something i still can't solve is that when drawing for
>>            example a rect in a Shape graphics object with a fat
>>            lineStyle, the line drawn is always half it's thicknes in
>>            the inner part of the rect and half outside; This always
>>            gives me headaches  when aligning, measuring,  skinning or
>>            bitmapping stuff since half the line is in the negative x
>>            / y coordinate space of the shape..
>>            I know that I can use the getBounds method to get me the
>>            accurate  negative x and y offset of the (line) graphics,
>>            but what I really want is to have the line beign drawn
>>            totally within the rect. Is that possible by the default
>>            graphics api ? Then please expand on my example.
>>
>>            Thanks.
>>            Latcho.
>>
>>
>>            var spr:Sprite = new Sprite();
>>            addChild(spr);
>>            var g:Graphics = spr.graphics;
>>            g.lineStyle(10,0xff0000);
>>            g.beginFill(0x0000ff);
>>            g.drawRect(0,0,100,100);
>>            g.endFill();
>>            trace(spr.width,spr.height);  // -> 110 110
>>            trace(spr.getBounds(this)) // -> (x=-5, y=-5, w=110, h=110)
>>
>>            _______________________________________________
>>            Flashcoders mailing list
>>            Flashcoders@chattyfig.figleaf.com
>>            <mailto:Flashcoders@chattyfig.figleaf.com>
>>
>>            http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
>>
>>
>>
>>
>>
>
> _______________________________________________
> Flashcoders mailing list
> Flashcoders@chattyfig.figleaf.com
> http://chattyfig.figleaf.com/mailman/listinfo/flashcoders
>
_______________________________________________
Flashcoders mailing list
Flashcoders@chattyfig.figleaf.com
http://chattyfig.figleaf.com/mailman/listinfo/flashcoders

Reply via email to