在Smalltalk的广场内圈

时间:2014-05-27 08:39:23

标签: geometry smalltalk pharo squeak

我在Smalltalk的一个正方形内画了一个圆圈 但我希望将它缩小10%,所以我试着写出来:

initialize
 | circleWidth circleHeight|
  super initialize.
  self label: ''.
  self borderWidth: 0.
  bounds := 0@0 corner: 70@70.

  circle := CircleMorph new.
  circleWidth := self bounds width*0.9.
  circleHeight := self bounds height*0.9.
  circle bounds: self bounds*0.9.

  circle color: Color paleBuff.
  circle borderWidth: 1.
  self addMorphCentered: circle.


  offColor := Color gray darker.
  onColor := Color gray darker.
  self useSquareCorners.
  self turnOff

但是这条线:       圆形界限:自我界限* 0.9。 编译“消息不理解矩形>> *”时有一些问题 我怎么能这样做?

1 个答案:

答案 0 :(得分:2)

使用消息scaleBy: scale缩放矩形。

所以

circle bounds: self bounds*0.9.

变为:

circle bounds: (self bounds scaleBy: 0.9).