sapporocpp / mokumoku

0 stars 0 forks source link

2019/04/11 もくもく会 #163 #166

Open maraigue opened 5 years ago

maraigue commented 5 years ago

引き続き、「ランダムアクセスも、途中の要素の追加・削除も対数時間でできるリスト構造」の実装。 endイテレータの実装方法をstd::setとかを参考に確定させ、実装する

oki-miyuki commented 5 years ago

ひたすら悩みながらガイドの続きを書く https://github.com/oki-miyuki/boost_spirit_guide/blob/master/spirit.md

ignisan commented 5 years ago

引き続き、画像処理ソフト作る

maraigue commented 5 years ago

std::setなどに使われる赤黒木のgccのソースコード(stl_tree.h)を読んでいてわかったこと

ignisan commented 5 years ago

画像を出すための処理をちまちまと書いてた

std::vector<unsigned char> ret(v.size());
std::transform(v.begin(), v.end(), ret.begin(),
               [minval, maxval](auto x) {return (x - minval) / (maxval - minval) * 255;});

こういう処理をサクッとかけないのがつらいnumpyなら

ret = ((v-minval)/(maxval-minval)*255).astype(np.uint8)

だけで済むのに

oki-miyuki commented 5 years ago

パーサ・オペレータを書いた。全機能使ってないので、使ってない部分を書くのに時間がかかった。まだまだサンプルも書かないといけない…。結構大変だなー。

oki-miyuki commented 5 years ago

ignisan の見て、 http://grayhole.blogspot.com/2009/04/boostgil-bicubic.html の tuncate_channel_fn みたいなのを思い出した。

ignisan commented 5 years ago

boostが使えるならtransform_iteratorとかあるんですけどね