オブジェクトのジオメトリー・プロパティーの変更

グラフィック・オブジェクトのバウンディング・ボックスの変更につながる操作を行う場合は、かならず IlvManager クラスの applyToObject メソッドを使用する必要があります。このメソッドは、バウンディング・ボックスの変更をマネージャーに通知するので、IlvGraphicmoveObject および reshapeObject メソッドを直接呼び出すことはありません。
void moveObject(IlvGraphic obj, float x, float y, boolean redraw)   
void reshapeObject(IlvGraphic obj, IlvRect newrect, boolean redraw) 
これらの基本操作に対しては、マネージャーには applyToObject を呼び出すメソッドがあります。

例: オブジェクトの移動

次のコードは、マネージャーから test という名前のオブジェクトへの参照を取得します。オブジェクトが存在する場合は、ポイント (10、20) へ移動し、再描画します (true に設定した 4 番目のパラメーター)。
IlvGraphic object = manager.getObject("test");
if (object != null) 
  manager.moveObject(object, 10, 20, true);
moveObject メソッドは、以下のコードと同等です。
manager.applyToObject(object,
  new IlvApplyObject()
  {
   public void apply(IlvGraphic obj, Object arg){
     IlvPoint p = (IlvPoint) arg;
     obj.move(p.x, p.y);
   }
  }, 
  new IlvPoint(10,20), true);
このコードは、object をパラメーターとして持つ applyToObject メソッドを呼び出すとともに、 IlvApplyObject インターフェースを実装する匿名のクラスを呼び出します。arg パラメーターは、オブジェクトの新規場所を指定する IlvPoint オブジェクトです。
メソッド applyToObject は、 IlvGraphicBag インターフェースで定義されているので、以下を使用してグラフィック・オブジェクトから直接 applyToObject を呼び出すことができます。
obj.getGraphicBag().applyToObject(obj, ...);

複数グラフィック・オブジェクトの変更

複数のグラフィック・オブジェクトに操作を繰り返して適用するには、次を呼び出します。
void applyToObjects(IlvGraphicVector vector,
                      IlvApplyObject f,
                      Object arg,
                      boolean redraw)
これは、IlvApplyObject f によって指定された操作を、入力ベクトルに含まれるそれぞれのグラフィック・オブジェクトに適用します。
複数のグラフィック・オブジェクトのバウンディング・ボックスに影響を与える複雑な操作を、複数のオブジェクトに対して 1 回のみ適用するには、次を呼び出します。
void applyToObjects(IlvGraphicVector vector,
                      IlvApplyObjects f,
                      Object arg,
                      boolean redraw)
これは、IlvApplyObjects f で指定された操作を 1 回だけ適用します。複数のオブジェクトのバウンディング・ボックスに影響を与える複雑な操作に有効です。
メモ
applyToObjects メソッドはオーバーロードされます。最初の例では、パラメーターとして IlvApplyObject オブジェクトを取ります。2 番目の例では、パラメーターとして IlvApplyObjects (複数) オブジェクトを取ります。