読者です 読者をやめる 読者になる 読者になる

なかじまの開発ブログ

アプリ開発における備忘録などなど。

MENU

Spriteを格納したVectorをソートする【cocos2d-x】

y座標をもとにしてソートしてみました!

『.h』

typedef Vector<Sprite *> SpriteVector;

格納部分は省略します。

『.cpp』

// 昇順(y座標がちっちゃい順)
SpriteVector sortup(SpriteVector v) {
  for (int i = 0; i < (int)v.size()-1; i++) {
     for (int j = 0; j < (int)v.size()-1; j++) {
       if (v.at(j)->getPosition().y < v.at(j-i)->getPosition().y) {
         auto b1 = v.at(j);
         auto b2 = v.at(j-1);
         v.replace(j, b2);
         v.replace(j-1, b1);
       }
     }
  }

  return v;
}

// 降順(y座標がおっきい順)
SpriteVector sortdown(SpriteVector v) {
  for (int i = 0; i < (int)v.size()-1; i++) {
     for (int j = 0; j < (int)v.size()-1; j++) {
       if (v.at(j)->getPosition().y > v.at(j-i)->getPosition().y) {
         auto b1 = v.at(j);
         auto b2 = v.at(j-1);
         v.replace(j, b2);
         v.replace(j-1, b1);
       }
     }
  }

  return v;
}

こちらもどうぞ

nsdevelop.hatenablog.com