U++ framework
Do not panic. Ask here before giving up.

Home » Developing U++ » U++ TheIDE and Library: Releases and ChangeLogs » Painter 2.0
Re: Painter 2.0 [message #20443 is a reply to message #20278] Wed, 18 March 2009 23:34 Go to previous messageGo to previous message
Mindtraveller is currently offline  Mindtraveller
Messages: 917
Registered: August 2007
Location: Russia, Moscow rgn.
Experienced Contributor

As there`s no special "Painter" forum (hope we`ll have one), I post my little proposal here. It is adopted from one of my recent Painter etudes.

//Rectangle with rounded corners
Painter & Painter::Rectangle(double x, double y, double cx, double cy, double r)
{
	ASSERT(r >= 0.);
	if (cx < 0.) {x+=cx; cx=-cx;}
	if (cy < 0.) {y+=cy; cy=-cy;}

	Move(x+r,y)
	.Arc(x+r,y+r,r,r,-M_PI/2.,-M_PI/2.)
	.Line(x, y+cy-r)
	.Arc(x+r,y+cy-r,r,r,M_PI,-M_PI/2.)
	.Line(x+cx-r, y+cy)
	.Arc(x+cx-r,y+cy-r,r,r,M_PI/2,-M_PI/2.)
	.Line(x+cx, y+r)
	.Arc(x+cx-r,y+r,r,r,0.,-M_PI/2.)
	.Line(x+r, y);
}

[Updated on: Wed, 18 March 2009 23:38]

Report message to a moderator

 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: ide: Compare with file, SVN history
Next Topic: MT
Goto Forum:
  


Current Time: Sat Apr 25 03:32:03 GMT+2 2026

Total time taken to generate the page: 0.00782 seconds