ArcGIS API for JavaScript の最新バージョン 4.9 およびバージョン 3.26 をリリースしました。以下では、本バージョンにおける新機能、機能拡張の一部をご紹介します。
目次
バージョン 4.9
2D WebGL の正式サポート
ベータ版としてリリースされていた 2D での WebGL を使用した描画が正式にサポートされました。MapView でフィーチャ レイヤー、CSV レイヤー、ストリーム レイヤーを描画するとき、デフォルトで WebGL が使用されます。また、従来は WebGL で描画可能なレイヤー ソースが制限されていましたが、すべてのバージョンの ArcGIS Enterprise、ArcGIS Online およびクライアント側で作成したフィーチャ コレクションがサポートされます。これまで使用されていた SVG を用いた描画方法に比べて大量のデータを素早くマップに描画することが可能です。
フィーチャ フォーム ウィジェット(ベータ)
フィーチャの属性情報に基づいて入力フィールドを表示するフィーチャ フォーム ウィジェット(esri/widgets/FeatureForm)が追加されました。オプションを設定することで、API 側で編集の可否やドメインの設定、入力値の長さを制限することが可能です。フィーチャの編集を適用する FeatureLayer.applyEdits() と組み合わせることで、属性情報を簡単に更新できます。
フィーチャ レイヤーのアップデート
フィーチャ レイヤーに以下の機能向上が行われました。
- 関連フィーチャ/レコードのクエリ:レイヤーの関連フィーチャやレコードのクエリを実行する FeatureLayer.queryRelatedFeatures() が追加されました。
- アタッチメントのサポート:アタッチメントを追加(FeatureLayer.addAttachment())、削除(FeatureLayer.deleteAttachments())、更新(FeatureLayer.updateAttachment())するメソッドがサポートされました。
- クライアント サイド フィーチャ レイヤーの編集対応:FeatureLayer.source を使用してクライアント側で作成したフィーチャ レイヤーに含まれるフィーチャに対して FeatureLayer.applyEdits() を使用して編集できるようになりました。
- having 句のサポート:統計クエリで having 句を利用できるようになりました。統計クエリでグループ化されたデータに対して指定した条件に当てはまるフィーチャを絞り込むことが可能です。
スマート マッピングのアップデート
スマート マッピングに Arcade ベースのレンダラーを作成する以下のクリエーター メソッドが追加されました。
- Predominance:2つ以上の属性フィールドの値を比較して優勢であるフィールドを表現するレンダラーを生成します。
- Relationship:2つの数値フィールド間の潜在的な関連性を表現するレンダラーを生成します。
- Age:開始と終了の日付フィールドの差を色または大きさで表現するレンダラーを生成します。
CORS 判定の変更
WebGL をデフォルトの描画方法として使用するにあたり、アプリケーションがホストされているサーバーとは異なるサーバーへのアクセスを可能にする CORS へのアプローチ方法が変更されました。
これまで使用されていた SVG は、画像を DOM 要素へ追加することで描画されていましたが、WebGL を使用して canvas 要素へ描画するには画像データへアクセスする必要があります。そのため、画像データがアプリと同じドメイン下にない場合は、CORS に対応したサーバーにホストされているか、プロキシを利用する必要があります。
このような背景から、効率的なリクエストのために API はサーバーが CORS をサポートしていることを前提にリクエストを行うよう変更されました。従来は、CORS に対応しているサーバーを明示的に定義したり、ArcGIS が配信するサービスへは CORS に対応しているか確認するリクエストを送信したりしていましたが、CORS サポートを前提にリクエストが生成されるため、対応しているサーバーを定義する手間や、余分なリクエストが送信されたりすることがなくなります。
この変更により、CORS に関連する以下のプロパティが削除されました。
- esri/config.request:corsDetection、corsDetectionTimeout、corsEnabledServers、forceProxy、useCors
また、JSONP のサポートも削除されました。ArcGIS for Server バージョン 10 以前は CORS に対応していないため JSONP が使用されていました。本バージョンでは、プロキシを設定する必要があります。
その他の拡張機能/仕様変更
- ゲームパッドのサポート:ゲームパッドおよび 3Dconnexion デバイスを使用して MapView と SceneView を操作できるようになり、より直感的なマップのナビゲートが実現しました。対応しているデバイスは GamepadInputDevice をご確認ください。
- スクリーンショット機能の追加:SceneView.takeScreenshot() が追加され、SceneView のスクリーンショットを作成し、画像としてエクスポートできるようになりました。
- 描画ツールのアップデート:SketchViewModel で既存のポリラインとポリゴンの頂点を追加、削除、更新する機能がサポートされたほか、undo/redo 操作が可能になりました。
バージョン 3.26
本バージョンでは、いくつかの不具合の修正が行われました。
- バージョン 3.x の開発およびリリースは、バージョン 4.x の API の開発が進み、バージョン 3.x の API と同等の機能が実装されるまで継続される予定ですが、バージョン 4.x で同等の機能が実装された後は、バージョン 4.x のみが新規開発の対象となります。
今後のバージョン 3.x のリリースとサポート計画に関しての詳細は、製品ライフサイクルをご参照ください。
その他の更新情報や新機能については、ArcGIS for Developers の ArcGIS API for JavaScript 新機能(英語ページ)(バージョン 4.9 / バージョン 3.26)をご参照ください。
■関連リンク
ESRIジャパン Web サイト:
Esri 社(米国)Web サイト: