Polygon.st
author claus
Wed, 13 Oct 1993 01:17:11 +0100
changeset 2 07d9ee98e092
parent 0 1cf8d1747859
child 4 1f66800df351
permissions -rw-r--r--
*** empty log message ***
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
1cf8d1747859 Initial revision
claus
parents:
diff changeset
     1
"
1cf8d1747859 Initial revision
claus
parents:
diff changeset
     2
 COPYRIGHT (c) 1988/89/90 by Claus Gittinger
1cf8d1747859 Initial revision
claus
parents:
diff changeset
     3
	      All Rights Reserved
1cf8d1747859 Initial revision
claus
parents:
diff changeset
     4
1cf8d1747859 Initial revision
claus
parents:
diff changeset
     5
 This software is furnished under a license and may be used
1cf8d1747859 Initial revision
claus
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
1cf8d1747859 Initial revision
claus
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
1cf8d1747859 Initial revision
claus
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
1cf8d1747859 Initial revision
claus
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    10
 hereby transferred.
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    11
"
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    12
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    13
Array subclass:#Polygon
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    14
       instanceVariableNames:''
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    15
       classVariableNames:''
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    16
       poolDictionaries:''
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    17
       category:'Graphics-Primitives'
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    18
!
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    19
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    20
Polygon comment:'
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    21
 Polygon - an array of points
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    22
2
07d9ee98e092 *** empty log message ***
claus
parents: 0
diff changeset
    23
$Header: /cvs/stx/stx/libbasic2/Polygon.st,v 1.3 1993-10-13 00:16:58 claus Exp $
0
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    24
'!
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    25
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    26
!Polygon methodsFor: 'accessing'!
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    27
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    28
top
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    29
    |minY|
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    30
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    31
    (self size == 0) ifTrue: [^ nil].
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    32
    minY := (self at:1) y.
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    33
    self do:[:p |
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    34
	(p y < minY) ifTrue:[minY := p y].
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    35
	0 "stc hint"
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    36
    ].
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    37
    ^ minY
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    38
!
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    39
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    40
bottom
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    41
    |maxY|
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    42
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    43
    (self size == 0) ifTrue: [^ nil].
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    44
    maxY := (self at:1) y.
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    45
    self do:[:p |
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    46
	(p y > maxY) ifTrue:[maxY := p y].
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    47
	0 "stc hint"
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    48
    ].
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    49
    ^ maxY
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    50
!
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    51
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    52
left
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    53
    |minX|
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    54
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    55
    (self size == 0) ifTrue: [^ nil].
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    56
    minX := (self at:1) x.
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    57
    self do:[:p |
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    58
	(p x < minX) ifTrue:[minX := p x].
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    59
	0 "stc hint"
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    60
    ].
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    61
    ^ minX
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    62
!
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    63
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    64
right
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    65
    |maxX|
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    66
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    67
    (self size == 0) ifTrue: [^ nil].
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    68
    maxX := (self at:1) x.
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    69
    self do:[:p |
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    70
	(p x > maxX) ifTrue:[maxX := p x].
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    71
	0 "stc hint"
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    72
    ].
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    73
    ^ maxX
1cf8d1747859 Initial revision
claus
parents:
diff changeset
    74
! !