Informix 空間データ・ソースの使用

The IlvInformixDataSource クラスは、Informix® 空間データ・ブレードから地理参照オブジェクトを読み取るための IlvMapDataSource です。これは、便利な方法ですべての操作 (データベースへの接続、機能の読み込み、グラフィック・オブジェクトへのレンダリング) をラップします。
Informix 空間データ・ブレードに保管されている地図を読み取るには、以下の手順に従います。
  1. Informix 空間データ・ブレードに接続します。
    IlvInformixConnectionInfo cx = new IlvInformixConnectionInfo(); 
    cx.setHostName("server_hostname");
    cx.setHostPort("9088");
    cx.setUser("an_informix_user");
    cx.setServer("informix_server_name");
    cx.setPassword("password");
    cx.setDatabaseName("database_name");
    
  2. この接続をパラメーターとしてデータ・ソースを作成します。
    // we want to fetch layer "AN_INFORMIX_USER.WORLD.GEOM.SRID=0"
    String layerName="AN_INFORMIX_USER.WORLD.GEOM.SRID=0";
    IlvInformixDataSource dataSource=new IlvInformixDataSource(cx, layerName);
    
    レイヤーの一覧を取得するには、「レイヤー一覧の取得」を参照してください。
  3. このデータ・ソースにパラメーターを設定してロード・オンデマンドを使用します (必要な場合)。
    boolean useTiling = true;
    int rowCount = 5;
    int columnCount = 5;
    dataSource.setTilingParameters(useTiling, rowCount, columnCount);
    
  4. このデータ・ソースをビューのマネージャーに接続します。
    dataSource.setManager(getView().getManager());
  5. レイヤー・ツリーにデータ・ソース地図レイヤーを挿入します (まず、レイヤー・モデルをマネージャーのプロパティーから取得する必要があります)。
    IlvMapLayerTreeModel mltm = IlvMapLayerTreeProperty.GetMapLayerTreeModel(v.getManager());
    mltm.addChild(null, dataSource.getInsertionLayer());
    
  6. データ・ソースをデータ・ソース・ツリーに挿入します。まず、データ・ソース・モデルをマネージャーのプロパティーから取得する必要があります。
    IlvMapDataSourceModel dataSourceModel = 
    IlvMapDataSourceProperty.GetMapDataSourceModel(manager);
    dataSourceModel.insert(dataSource);
    
  7. 最後に、データ・ソース (複数のデータ・ソースがある場合は、モデル全体) を開始します。
    IlvDBConnectionInfo cx=…;
    String[] layersList = cx.getSpatiallyEnabledTableNames();