ArcGIS API for JavaScript バージョン 4.21 およびバージョン 3.38 の国内サポートを開始しました!

WGS84 のローカル シーン対応

ArcGIS API for JavaScript の最新バージョン 4.21 およびバージョン 3.38 の国内サポートを開始しました。以下では、バージョン 4.21 の主な新機能・機能拡張をご紹介します。

■バージョン 4.21

パフォーマンスの向上

バージョン 4.21 ではパフォーマンスが改善され、レイヤーの描画時間が短縮されました。この改善はポリゴン フィーチャや複数のレイヤーを持つマップに重点的に行われています。

複雑のポリゴンの描画が速くなりました
頂点の数が多いポリゴンを持つレイヤーの描画時間が大幅に改善されました。内部ではジオメトリを事前に処理し、メモリ管理を最適化するために新しい単純化アルゴリズムを追加しました。また、複雑なポリゴンの三角測量にはウェブ アセンブリを使用しています。下の例でわかるように、この北極海の海氷レイヤーの読み込みは、バージョン 4.20 の同じレイヤーに比べて 5 倍以上速くなっています。この改善はレイヤーの特性によって異なりますが、頂点数の多いほとんどのポリゴンでは、少なくとも 2~3 倍の改善が見られます。

パフォーマンスの向上

このマップでは、北半球の平均海氷面積を 620 万頂点以上のポリゴンで表現しています。バージョン 4.21 ではパフォーマンスが向上し、これらの複雑なポリゴンの読み込みが格段に速くなりました。

ポリゴン数の多いレイヤーにも効果があります
前述の最適化とウェブ アセンブリへの切り替えにより、多数のポリゴン フィーチャを持つレイヤーでもパフォーマンスが向上します。次の例では、73,000 個以上のポリゴンを持つレイヤーを示しています。平均して 20% の描画時間の短縮が見られます。

パフォーマンスの向上

この地図は 7 万以上の国勢調査区ポリゴンを表示した 2016 年の平均住宅価格を示しています。

多くのレイヤーを持つマップがよりスムーズに、より速くなりました
また、多数のフィーチャ コレクションを持つマップの処理方法についても最適化が行われました。これらの最適化により、起動時間とフレーム レートが改善され、マップの移動がよりスムーズに行えるようになりました。

エンタープライズ ポイント フィーチャ レイヤーの読み込みが速くなりました
バージョン 4.19 では、ArcGIS Online でホストされているポイント フィーチャライザのパフォーマンスが向上しました。バージョン 4.21 では、この変更が ArcGIS Enterprise ポイント サービスにも適用されます。

フィーチャの描画順序の制御

フィーチャ レイヤー、CSV レイヤー、GeoJSON レイヤー、OGC フィーチャ レイヤーの orderBy プロパティを設定することで、ビューに描画されるフィーチャの順序を設定できます。このプロパティでは、数値または日付を返す任意のフィールドまたは Arcade 式を使用して、フィーチャをソートすることができます。

layer.orderBy = [{
order: "descending", // or "ascending"
field: "AADT"
}];

多くの重複するフィーチャを持つ日付フィールドを持つレイヤーでは、このプロパティにより最新のフィーチャが古いフィーチャの上に描画されるようにすることができます。また、比例シンボル マップでは、小さなフィーチャが大きなフィーチャの上に描画されるのが一般的で、ビュー内で重なり合うフィーチャの可視性を最大化するためにも重要です。

フィーチャの描画順序の制御

詳細については、フィーチャのソート順を設定するサンプルを確認してください。また、ArcGIS Online Map Viewer でこの機能にアクセスする方法については、最近のブログで紹介しています。

Web マップを彩るレイヤー効果

ドロップ シャドウ、陰影、グロー エフェクトなどのエフェクトを使用すると、マップの外観を強力にコントロールすることができます。バージョン 4.18 以降、JavaScript API を使用してプログラム的にこれらのレイヤー効果を適用することができましたが、ArcGIS Online でこれらの機能を使用できるようになりました。先日の ArcGIS Online の更新により、Map Viewer でレイヤーに効果をインタラクティブに適用および調整し、それを Web マップに保存することができるようになりました。Web マップを Web アプリで読み込むと、マップに美しいエフェクトが表示されます。また、プログラムでエフェクトを追加・調整し、Web マップに保存することもできます。

Web マップを彩るレイヤー効果

ArcGIS Online Map Viewer でレイヤーの効果を確認できます

フィーチャ テーブルがより多くのレイヤー タイプに対応

バージョン 4.15 で導入された FeatureTable ウィジェットは、データの表形式のビューを操作することができます。

フィーチャ レイヤーの種類が増えました
フィーチャ テーブルでは、以下のレイヤー タイプが新たにサポートされました。

CSV、GeoJSON、WFS (バージョン 4.21 以前はフィーチャ レイヤーとシーン レイヤーに限定されていた)。

イメージ レイヤー
モザイク データセットを持つイメージ レイヤーに関連するラスター カタログ情報を、フィーチャ テーブル ウィジェットを使って表示できます。たとえば、サービス内の各画像に関連する解像度や雲量の情報を確認することができます。

スナッピングを設定するためのユーザーインターフェイス

すべてのスナップ機能を処理するシンプルなユーザーインターフェイスを提供するために、SnappingControls ウィジェットが追加されました。このウィジェットは、スナップが有効であるかどうか、どのレイヤーにスナップするか、その他のスナップ設定をコントロールする機能を提供します。この UI は、デフォルトでは Sketch ウィジェットに含まれていますが、SketchViewModel、Editor、EditorViewModel を使って、プログラムでワークフローに統合することができます。将来的にはデフォルトの Editor ウィジェットの一部としてこの機能を追加し、Measurement ウィジェットでも利用できるようにする予定です。

描画時の操作性の向上

Sketch ウィジェットでは、エンド ユーザーがグラフィックス レイヤーの新しいフィーチャを更新または描画することができます。Sketch ウィジェットの SketchViewModel のpointSymbol、polygonSymbol、polylineSymbol プロパティを設定することで、新しいフィーチャのデフォルトのシンボルをオーバーライドすることができます。このリリース以前は、描画が完了するまで定義されたシンボルは表示されませんでした。今回のアップデートでは、アクティブな描画状態の時に、定義したシンボルが表示されます。

描画時の操作性の向上

また、SketchViewModel や Sketch ウィジェットを使用して描画する際に、マウスカーソルに点のシンボルが追加されました。SketchViewModelのpointSymbol プロパティを設定することで、デフォルトのシンボルをオーバーライドすることができます。

マウスカーソルに点のシンボルが追加

改良されたエディター ウィジェットが登場

API の編集機能は多くのリリースを経て、ますます優れたパワフルなユーザー エクスペリエンスを提供するために進化してきました。バージョン 4.22 では、エディターの UI とワークフローの操作性を大幅に更新します。UI/UX の改善に加えて、バッチ編集ワークフローのサポート、スナップと選択のオプションが追加されます。

機能の低下や大きな変更はありませんが、ユーザー エクスペリエンスは現在の実装とは若干異なるものになると思われます。バージョン 4.22 は、このようなエディターのアップデートを行った最初のリリースとなります。今後バージョンアップに伴い、追加機能が実装される予定です。

これらの変更点をいち早くご覧になりたい方は、/next repo をチェックしてください。

改良されたエディターウィジェット

TimeSlider のアクション

TimeSlider ウィジェットがアップデートされ、カスタム アクションがサポートされました。これにより、timeExtent を特定の日付に設定したり、timeExtent をブラウザーのクリップボードにコピーするなどのカスタム コードを実行することができます。trigger-action イベントは、メニューのアクションがクリックされるたびに発生します。

TimeSliderのアクション

サンプルアプリケーション

WGS84 のローカル シーン対応

SceneView では、WGS84 シーン レイヤーを Web Mercator レイヤーと組み合わせて、ローカル シーンで十分に活用できるようになりました。また、ローカル シーンが地理的座標系に対応したことで、より柔軟にデータを表示できるようになりました。クリッピング エリアを定義するなどして、ビューを制約することができます。

WGS84 のローカル シーン対応

WebGL2 対応

SceneView はブラウザーで利用可能な場合、基礎となるレンダリング エンジンとして WebGL2 を使用するようになりました。この変更は将来のビジュアライゼーション機能とパフォーマンスの向上の基礎となるものです。externalRenderer を使用するアプリでは、WebGL1 のコンテキストを明示的に要求することができます。

デザイン ラインとポリゴンの CIM シンボル

CIM Symbol Builder ヘルパー アプリが更新され、(ポイントのシンボルに加えて) ラインとポリゴンのシンボルを作成できるようになりました。異なるシンボル レイヤーを組み合わせたり、シンボル レイヤーのプロパティを更新すると、新しい CIMSymbol の処理が更新されます。デザインしたシンボルに満足したらシンボルの JSON を取得し、それを使ってアプリケーションで CIMSymbol を作成することができます。詳しくはこちらのブログ記事をご覧ください。

デザイン ラインとポリゴンのCIMシンボル

サンプルアプリケーション

■バージョン 3.38

“Extended Support” フェーズに移行しました

ArcGIS API for JavaScript バージョン 4.x は、すべての新しいイノベーションの焦点であり、インタラクティブなユーザー エクスペリエンスやデータに基づいた 2D/3D ビジュアライゼーションを備えた魅力的な Web アプリケーションを構築するために推奨される JavaScript API です。3.x API は、いくつかの不具合修正に対応するため、非常にマイナーなアップデートを今後もリリースしていきますが、今後は一般提供ではなく、”Extended Support” のライフサイクル フェーズに移行されます。詳細については、製品ライフサイクルのドキュメントをご覧ください。

Web Optimizer の廃止

Web Optimizer は、ArcGIS API for JavaScript の 3.x ベースのカスタム ビルドを作成するために利用できなくなりました。以前に作成されたカスタム ビルドを参照しているアプリケーションは当面の間は動作しますが、すべてのカスタム ビルドは 2022 年 7 月に Esri のホスティング環境から削除されます。カスタム ビルドを作成する際の柔軟性と簡便性が向上したバージョン 4.x の API を使い始めることをお勧めします。詳細については「ツールの紹介」をご覧ください。バージョン 3.x を使い続けたい場合は、CDN 版を利用するか、ローカル ビルドをダウンロードすることをお勧めします。

ここでは、バージョン 4.21 に含まれる API アップデートの概要を説明しました。本リリースの内容を完全に把握するには、リリースノートをご覧いただき、新しいサンプルを使って新機能を試してみてください。

・バージョン 4.21 新機能 (ESRIジャパン / 米国 Esri 社)
・バージョン 3.38 新機能 (ESRIジャパン / 米国 Esri 社)

■関連リンク

米国 Esri ArcGIS ブログ:
What’s new in the ArcGIS API for JavaScript (version 4.21)

ESRI ジャパン Web サイト:
ArcGIS API for JavaScript

米国 Esri 社 Web サイト:
ArcGIS API for JavaScript (バージョン 4.21)
ArcGIS API for JavaScript (バージョン 3.38)

フォローする