[squeak-dev] missed commit mails
Tobias Pape
Das.Linux at gmx.de
Wed Oct 26 11:36:01 UTC 2016
Begin forwarded message:
> Date: Tue, 25 Oct 2016 08:32:04 0000
> From: commits at source.squeak.org
> To: squeak-dev at lists.squeakfoundation.org, packages at lists.squeakfoundation.org
> Reply-To: squeak-dev at lists.squeakfoundation.org
> Subject: The Trunk: EToys-tfel.270.mcz
> Message-Id: <E1byx9V-0003nR-6N at andreas>
>
> Tim Felgentreff uploaded a new version of EToys to project The Trunk:
> http://source.squeak.org/trunk/EToys-tfel.270.mcz
>
> ==================== Summary ====================
>
> Name: EToys-tfel.270
> Author: tfel
> Time: 24 October 2016, 1:35:27.841614 pm
> UUID: 932b296e-7b57-1845-b76e-2dcfde371c97
> Ancestors: EToys-tfel.269
>
> allow distance/angleTo my own turtle kind, excepting myself
>
> =============== Diff against EToys-tfel.269 ===============
>
> Item was changed:
> ----- Method: KedamaTurtleVectorPlayer2 class>>primGetAngleToX:toY:xArray:yArray:resultInto: (in category 'as yet unclassified') -----
> primGetAngleToX: pX toY: pY xArray: xArray yArray: yArray resultInto: result
>
> + | ppx ppy x y ret currentDist minDist nearestNeighbour skipSelf |
> - | ppx ppy x y ret currentDist minDist nearestNeighbour |
> <primitive: 'vectorGetAngleTo' module:'KedamaPlugin2'>
> "^ KedamaPlugin doPrimitive: #vectorGetAngleTo."
>
> ppx := pX.
> ppy := pY.
> + skipSelf := pX == xArray.
> 1 to: result size do: [:index |
> pX isCollection ifTrue: [
> + nearestNeighbour := index.
> minDist := SmallInteger maxVal.
> 1 to: pX size do: [:index2 |
> + ((index2 == index) & skipSelf) ifFalse: [
> + ppx := pX at: index2.
> + ppy := pY at: index2.
> + currentDist := ((ppx - (xArray at: index)) squared + (ppy - (yArray at: index)) squared) sqrt.
> + currentDist < minDist ifTrue: [
> + minDist := currentDist.
> + nearestNeighbour := index2]]].
> - ppx := pX at: index2.
> - ppy := pY at: index2.
> - currentDist := ((ppx - (xArray at: index)) squared + (ppy - (yArray at: index)) squared) sqrt.
> - currentDist < minDist ifTrue: [
> - minDist := currentDist.
> - nearestNeighbour := index2]].
> ppx := pX at: nearestNeighbour.
> ppy := pY at: nearestNeighbour.
> ].
> x := ppx - (xArray at: index).
> y := ppy - (yArray at: index).
> ret := (x at y) theta radiansToDegrees + 90.0.
> ret > 360.0 ifTrue: [ret := ret - 360.0].
> result at: index put: ret.
> ].
> ^ result.
> !
>
> Item was changed:
> ----- Method: KedamaTurtleVectorPlayer2 class>>primGetDistanceToX:toY:xArray:yArray:resultInto: (in category 'as yet unclassified') -----
> primGetDistanceToX: pX toY: pY xArray: xArray yArray: yArray resultInto: result
>
> + | ppx ppy tempMin skipSelf |
> - | ppx ppy tempMin |
> <primitive: 'vectorGetDistanceTo' module:'KedamaPlugin2'>
> "^ KedamaPlugin doPrimitive: #vectorGetDistanceTo."
>
> ppx := pX.
> ppy := pY.
> + skipSelf := pX == xArray.
> 1 to: result size do: [:index |
> pX isCollection ifTrue: [
> tempMin := SmallInteger maxVal.
> 1 to: pX size do: [:index2 |
> + ((index2 == index) & skipSelf) ifFalse: [
> + ppx := pX at: index2.
> + ppy := pY at: index2.
> + tempMin := tempMin min: ((ppx - (xArray at: index)) squared + (ppy - (yArray at: index)) squared) sqrt]
> - ppx := pX at: index2.
> - ppy := pY at: index2.
> - tempMin := tempMin min: ((ppx - (xArray at: index)) squared + (ppy - (yArray at: index)) squared) sqrt.
> ].
> self flag: #todo. "should really also remember the other side index to re-use inside the script"
> result at: index put: tempMin.
> ] ifFalse: [
> result at: index put: ((ppx - (xArray at: index)) squared + (ppy - (yArray at: index)) squared) sqrt.
> ]
> ].
> ^ result.
> !
>
> Item was changed:
> ----- Method: KedamaTurtleVectorPlayer2>>getAngleTo: (in category 'player commands') -----
> getAngleTo: players
>
> | p xArray yArray result pX pY xy |
> players isCollection ifFalse: [
> p := players
> ].
> xArray := arrays at: 2.
> yArray := arrays at: 3.
> result := KedamaFloatArray new: self size.
> players isCollection ifTrue: [
> pX := KedamaFloatArray new: players size.
> pY := KedamaFloatArray new: players size.
> 1 to: players size do: [:i |
> xy := (players at: i) getXAndY.
> pX at: i put: xy x.
> pY at: i put: xy y.
> ].
> ] ifFalse: [
> + p == self
> + ifTrue: [
> + pX := p getX.
> + pY := p getY]
> + ifFalse: [
> + pX := p turtles getX.
> + pY := p turtles getY]
> - pX := p turtles getX.
> - pY := p turtles getY.
> ].
> ^ KedamaTurtleVectorPlayer2 primGetAngleToX: pX toY: pY xArray: xArray yArray: yArray resultInto: result.
>
> !
>
> Item was changed:
> ----- Method: KedamaTurtleVectorPlayer2>>getDistanceTo: (in category 'player commands') -----
> getDistanceTo: players
>
> | p xArray yArray result pX pY xy |
> players isCollection ifFalse: [
> p := players
> ].
> xArray := arrays at: 2.
> yArray := arrays at: 3.
> result := KedamaFloatArray new: self size.
> players isCollection ifTrue: [
> pX := KedamaFloatArray new: players size.
> pY := KedamaFloatArray new: players size.
> 1 to: players size do: [:i |
> xy := (players at: i) getXAndY.
> pX at: i put: xy x.
> pY at: i put: xy y.
> ].
> ] ifFalse: [
> + p == self
> + ifTrue: [
> + pX := p getX.
> + pY := p getY]
> + ifFalse: [
> + pX := p turtles getX.
> + pY := p turtles getY]
> - pX := p turtles getX.
> - pY := p turtles getY.
> ].
> ^ KedamaTurtleVectorPlayer2 primGetDistanceToX: pX toY: pY xArray: xArray yArray: yArray resultInto: result.
> !
>
More information about the Squeak-dev
mailing list
|