[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[dennou-ruby:002373] Re: VArray
- To: dennou-ruby@xxxxxxxxxxx
- Subject: [dennou-ruby:002373] Re: VArray
- From: Takeshi Horinouchi <horinout@xxxxxxxxxxxxxxxxxx>
- Date: Tue, 26 Jul 2005 21:24:49 +0900
堀之内です。
> たぶん以下がやりたいことを実現するもっとも短い方法でしょう.
> (だって中身は1行)
>
> require "numru/gphys"
> module NumRu
> class GPhys
> def bar(dim)
> self[ *( [true]*dim+[1..-1,false] ) ] +
> self[ *( [true]*dim+[0..-2,false] ) ] / 2.0
> end
> end
> end
しまった.これだと軸の位置が中間にきませんね.以下でどうでしょう
def bar(dim)
newgp = self[ *( [true]*dim+[1..-1,false] ) ] +
self[ *( [true]*dim+[0..-2,false] ) ] / 2.0
vax = self.axis(dim).pos
newgp.axis(dim).set_pos( vax[1..-1]+vax[0..-2] / 2.0 )
newgp
end
4行になってしまいました.
# VArray でなく Axis クラスに4則演算が欲しくなってきた...