AtlasStyler簡単な使い方

 Import→Import file→シェープファイル選んでfinish
 Styleってボタンを押下→Close

 ウインドウは2つ、プレビューが後ろでスタイル設定が前面

 前面左下Add new

 多分Single symbolが標準、
 Quantities:Colord quantitiesが属性の値に応じてグラデーション的に色を変化させるカラーレンジ、
 Labelsは属性情報を地図上に表示させるラベル、
 Categories:Unique valuesが属性の値に応じて自由に設定ができる(線色、線幅等)

Categories:Unique valuesについて
 Value Fieldで属性を選択
 下のAdd all valuesを押下でウインドウ真ん中に属性が追加される

 あ、多分Shift_JISには対応してないので日本語属性の時は注意

 あとは見ればだいたい分かるど

DBFのShift_JIS変換

OSMから手に入れたデータをQGIS(1.8)である程度抽出して保存しようとしたら、どうしても日本語が文字化けする。
UTF-8で読んでUTF-8で吐き出してもダメ。
WindowsだからってんならDBF文字コードShift_JISに変えてみてはどうかと試す。

方法はこれ
http://pucyan.blog77.fc2.com/blog-entry-113.html

九州自動車道()この括弧内の文字列がダメって出るので置き換えておく事を忘れずに。

ちなみにOpenOfficeで呼び出すのも保存するのも件数があるのでそれなりに時間が掛かる

これでShif_JISになったし完璧と思って同じように抽出して保存したらやはりダメだった_| ̄|○
使えないなぁQGIS1.8・・・他のバージョンで試してみるか

追記
QGIS1.6だと上手くいった。
Shift_JISDBFShift_JIS
UTF-8DBFUTF-8
UTF-8DBFShift_JIS
おおー、優秀♪

おまけ
QGISの検索で!= NULLは1.8では効いたけど1.6ではダメだった IS NOT NULLはOK

道路中心線が欲しい

道路中心線のデータが欲しいんだけど、無料でするならOpenStreetMapを利用するしか無いっぽい。
って事で色々漁った結果

http://downloads.cloudmade.com/asia/eastern_asia/japan/kumamoto#downloads_breadcrumbs

から熊本の道路データがダウンロード可能。
なんとShapeでもできるぞ!こりゃ便利♪

道路のデータはhighiwayに格納されてる。
NAMEがNull以外だったら主要な道路っぽい。
ONEWAYが一通かな、恐らく座標の始点から終点方向だよね。
LANES?レーン?なんだろ?

文字コードUTF-8なので注意

SLD(Styled Layer Descriptor)について

見た目の設定
参考
http://help.arcgis.com/ja/arcgisserver/10.0/help/arcgis_server_dotnet_help/index.html#//00930000005p000000

エディタもあった(スケールの設定は無理っぽい?)できる
紹介
http://live.osgeo.org/ja/overview/atlasstyler_overview.html
ダウンロード
http://en.geopublishing.org/Download

<?xml version="1.0" encoding="UTF-8"?>
<sld:UserStyle xmlns="http://www.opengis.net/sld" xmlns:sld="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml">
  <sld:Name>kiban-25000-buildings</sld:Name>←名前
  <sld:Title>kumamoto - Buildings</sld:Title>←タイトル
  <sld:FeatureTypeStyle>
    <sld:Name>name</sld:Name>←これから設定を行う名前(グループ?)
    <sld:Rule>
      <sld:Name>Buildings &lt; 3K </sld:Name>←これから行う設定名
      <sld:Title>Buildings 17K-3K</sld:Title>←これから行う設定のタイトル
      <sld:MinScaleDenominator>3000.0</sld:MinScaleDenominator>←最大表示スケール
      <sld:MaxScaleDenominator>17000.0</sld:MaxScaleDenominator>←最小表示スケール
      <sld:PolygonSymbolizer>
        <sld:Fill>←面について
          <sld:CssParameter name="fill">#333333</sld:CssParameter>←面の色
          <sld:CssParameter name="fill-opacity">0.2</sld:CssParameter>←面の透過率0.0(完全に透明)〜1.0(完全に不透明)
        </sld:Fill>
        <sld:Stroke>←線(枠線)について
          <sld:CssParameter name="stroke">#333333</sld:CssParameter>
          <sld:CssParameter name="stroke-opacity">0.4</sld:CssParameter>
          <sld:CssParameter name="stroke-width">.5</sld:CssParameter>←ポイント?
        </sld:Stroke>
      </sld:PolygonSymbolizer>
    </sld:Rule>←ここで一つのルールの終了
  </sld:FeatureTypeStyle>
</sld:UserStyle>

 MaxScaleDenominatorだけの設定だとそれ以上のスケールであれば表示される
 MinScaleDenominatorだけの設定だとそれ以下のスケールであれば表示される
 今回の設定であれば1/3000(1/3001か?)〜1/17000の間だけ表示

レイヤの表示非表示

var test = new OpenLayers.Layer.Vector(name, options);
test.display(false);
みたいな
ただし、LayerSwicherと連動はしない。

LayerSwicherに表示させないオプションなかったっけー

追記
地図をPanさせたりするとまた表示されたw
まいったなー

追記の追記
非表示はremoveMap(LayerSwitcherからも消える)
表示はまたaddLayerでまた読み込む(LayerSwitcherに追加される)のが現状ではベストっぽい

追記の追記
解決方法分かった。
よく見たらLayerのFunctionにsetVisibilityあるじゃん><

	function mapLayerActivateDeactivate(layerName, layerBoolean)
	{
		var layerArray = map.layers;
		for (var i=0;i<layerArray.length;i++)
		{
			if (map.layers[i].name == layerName)
			{
				map.layers[i].setVisibility(layerBoolean);
			}
		}
	}

これでOK
いっこずついくなら

	wms.setVisibility($(this).attr('checked'));

こんな感じ。もちろんwmsグローバル変数

読み逃しなんてあまいなぁ、俺