背景:マンデルブロー集合 の 1 テラピクセル レンダリングを作成し、 LeafletJSを使用して対話的にズームおよびパンします。それはうまくいきます。しかし、マンデルブロ集合は実軸に沿って対称であるため、現在、必要な 2 倍のタイル イメージを使用しています。
質問:タイルが HTTP 経由で読み込まれるたびに、変更されずに通過するか、垂直方向に反転されるように、LeafletJS の表示時間コードに (コールバックを使用して) フックするにはどうすればよいですか? これにより、より高いズーム レベルでデータを数十ギガバイト削減できます。
例:ズーム レベル 1 の 4 つのタイルがあります (ここでは 1 ピクセルで区切られています)。下の 2 つのタイル イメージを破棄し、代わりに上の 2 つのタイルの上下反転バージョンとして読み込みたいと思います。これは LeafletJS でオンザフライで実行できますか?
より具体的には、ズーム レベルzとタイル座標x、yがわかっている場合、 yが 2^( z –1)未満の場合は常に、読み込み時にタイルを垂直方向に反転させたいと考えています。たとえば、ズーム レベルz = 10 では、すべてのy < 512に対してタイルを垂直方向に反転させたいと思います。
答えには、タグのtransform
、-moz-transform
、-o-transform
、および-webkit-transform
プロパティをおよび おそらくおよびに設定するようなものが含まれると思いますが、これらを LeafletJS コンテキストでどこでどのように定義するかはわかりません。<img>
scaleY(-1)
filter
-ms-filter
FlipV