2011-09-27 6 views
5

私はGoogleマップと他のマップを比較するためにクロムデバッグツールを使用します。 私は距離測定機能、Googleマップを使用してパスを描くためにキャンバスを使用し、他のいくつかはSVGを使用しています。 これはキャンバスが高速であるためと思われます。しかし、SVGには、その道を描くための多くの良い部分があります。 その他の理由はありますか?Googleマップでキャンバスを使って距離測定をSVGで行うのはなぜですか?

答えて

10

すべてのSVG要素はDOM要素であり、10,000以上のSVGパスを持つとキャンバスに比べて大幅に減速します。だから1つの可能性は、それのパフォーマンスです。

しかし、もともとAndroidはSVGをレンダリング/サポートしていませんでした。それがおそらく、GoogleがCanvasを使用した理由です。

現在、Tablet Android(3.0以降)はSVGをサポートしていますが、1.0-2.3ではサポートされていません。

+0

ありがとうございました!パフォーマンスの理由から、私がキャンバスとSVGの両方に線を引くと、SVGパスが再フローを引き起こすのでしょうか?キャンバスはどうですか?再塗装のみ? – cnzhenyu

+0

すべてのSVG DOMオブジェクトがロードされると、物事は悪くはありません。どちらも10,000個のオブジェクトすべてを再描画するとどちらもかなり遅くなりますが、キャンバスのパフォーマンスを改善する余地はまだまだあります。 –

+0

@SimonSarris私は、10,000個のオブジェクトを再描画するのが遅いことを知りたいと思っています。ありがとう! – kakacii

関連する問題