On 1/10/2008, at 3:23 AM, Alastair Houghton wrote:

On 30 Sep 2008, at 12:59, Michael Robinson wrote:

Thanks for your incredibly swift replies!

changing "float retVal" to "double retVal", using "return lround(retVal);" and casting ints as doubles in the formula gave me some real values, which is wonderful!

I could have saved myself two hours by asking the list when I first ran into this problem!

I've got it spitting out some (jagged but acceptable) corners now, which is wonderful.

In case any of you were interested, I'm doing this to create an HTML "object" that can be placed over any background, be given rounded corners and have the background show through. It was being accomplished with Javascript, but I figured it'd be better if this was done one time, when the HTML is generated, instead of at client side.

If you're rendering this in advance using Cocoa, why not use the - appendBezierPathWithArcFromPoint:toPoint:radius: method on NSBezierPath to construct a rounded path?


The code that outputs the divs is:

        int i;
        
        NSMutableString *cornerElements = [NSMutableString new];
        
        for(i = cornerSize; i > 0; i--){
        
[cornerElements appendString:[NSString stringWithFormat:@"<div style= \"font-size:0em;margin-left:%ipx;margin-right:%ipx;height: 1px;overflow:hidden;background-color:%@;\">&nbsp;</div>",[self getCornerStripWidth:i:[borderDDTL selectedTag]:sizeTL:cornerSize], [self getCornerStripWidth:i:[borderDDTR selectedTag]:sizeTR:cornerSize],[self hexColor:[portalBGColour color]]]];

        }
        
        return (NSString*)cornerElements;

With the code that generates the margin for the rounded corners:

case 1:
                        if(){
                                retVal = 
lround(size*(1-cos(asin((double)i/(double)size))));
                                if(retVal > 0 ) return retVal;
                        }
                        return 0;
                        break;

I had a look at using NSBezierPath, but as I already had code that "works", I didn't know whether it would be worth changing methods - what would the advantage of using NSBezierPath be?

Thank you for your help,

Mike

Kind regards,

Alastair.

--
http://alastairs-place.net




_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to