[squeak-dev] The Trunk: Graphics-mt.404.mcz

marcel.taeumel Marcel.Taeumel at hpi.de
Thu Dec 6 07:35:19 UTC 2018


I think that we got used to seeing "0 at 0 corner: 10 at 10" as a rectangle. Like
"0 at 0 to: 10 at 10" might create a line (or an interval over points? The same?
:-). Yet, "0 at 0 extent: 10 at 10" could also be a line or a vector.

I like the verb-vs-noun argument. So, following Nicolas', Eliot's, and
David's thoughts, I vote for:

Point >> #center:

Best,
Marcel


Nicolas Cellier wrote
> Le mer. 5 déc. 2018 à 16:59, Tm Jhnsn <

> digit@

> > a écrit :
> 
>>
>> On Dec 4, 2018, at 12:12 AM, marcel.taeumel wrote:
>>
>> > Yet, such an infix notation for rectangle creation would not be
>> > much of an
>> > improvement over Rectangle class >> center:extent:.
>> >
>> > Very interesting. :-) Thoughts?
>>
>> Balloons inflate, and Smalltalk is quite associated with balloons... :)
>>
>> Tim J
>>
> 
> But in this case, should deflate return the center ? (100 at 100 inflate:
> 50 at 30)
> deflate.
> I like spread because there is a kind of isotropic notion, we extend in
> all
> directions...
> 
> The lexical field of symmetry may fit: we construct a rectangle by taking
> those two vertices:
> - image of aPoint by symmetry around myself,
> - and aPoint.
> So it's somehow a mirroring action:
> 
>     centerPoint mirror: cornerPoint.
>     centerPoint reflect: cornerPoint.
> 
> We could also think of pivoting or unfolding in the 3rd dimension...
> But I find the intention very hard to grasp... It's not obvious that the
> message should answer a Rectangle rather than a Point.
> And the meaning of argument slipped from extent to corner which is a
> different action...
> 
> I note that inflate, spread, etc... are verbs, while corner: and extent:
> are nouns...
> We understand corner: and extent: because we may think of them as
> attributes of a Rectangle... (or just because we're used to them?)
> In this case, diagonal: may fit too, but the difference with extent: is
> thin, and I don't find the notion of isotropic spread in it.
> In fact, diagonal: might be to vertex:vertex: what corner: is to
> origin:corner: because we can define a rectangle by any of its
> diagonals...
> 
> Geometrically, we may also see self and extentPoint as defining the
> diagonal by a center and a diameter of circumscribing circle...
> So its a kind of circumExtent: that we pass to the center... Not very
> clear
> that it will answer a Rectangle...





--
Sent from: http://forum.world.st/Squeak-Dev-f45488.html


More information about the Squeak-dev mailing list