On Jul 12, 2007, at 9:30 AM, Simen Haugen wrote:
> It seems natural that the Rect will mark the entire shape from the
> topleft to bottomright point.
Yes.
> Having one DrawObject supporting all these shapes makes some of the
> properties a bit difficult to get consistent. To get the entire width
> for a circle, I have do Width*2.
No, it would be Radius*2. And I've already added that in my working
copy.
> For polygons I have to go thru the points and calculate it myself..?
Again, I've added that.
> The shapes have quite different characteristics..
> All: rect, points
>
> Circle: centerposition, radius, diameter
> What should width and hight return? Radius? Diameter?
The width and height of a circle is the diameter.
> Polygons: centerposition
No, this is not used for polygons. Center is only used to define
circles. Polygons (and the soon-to-be-added polylines) are defined as
a collection of points, period.
> For polygons width and height doesn't make sense, but if you need the
> bounding box, you can use the rect property.
Width and Height do make sense; they are the same as the width and
height of the associated Rect. Again, I've added that for polygon/
line shapes.
> Line: startPosition, stopPosition, length (longest difference between
> points), width (penwidth). Rect for a line will of course give a very
> large rect if it's a diagonal line, but as long as rect always
> gives the
> bounding box this is ok.
There is no Length property for lines. I thought about adding it as
a read-only property, but it would seem natural to set that property
to change the length of a line, right? And it would be unclear which
endpoint to change (or to change both).
> Rect, Bmp, Text: width, height, position (topleft)
>
> This is taken from the top of my head, but I think it will be very
> difficult to support everything you want/need in a single class. The
> different behaviours will give subtle bugs and cause confusion.
I don't think so. If you were to create a polygon and then try to
specify the Radius, it really isn't up to Dabo to teach you
geometry. ;-) In this case, nothing will happen, since polygon
drawing doesn't use the Radius property.
-- Ed Leafe
-- http://leafe.com
-- http://dabodev.com
_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-users
Searchable Archives: http://leafe.com/archives/search/dabo-users
This message: http://leafe.com/archives/byMID/dabo-users/[EMAIL PROTECTED]