Monthly Archives: 4月 2012 - Page 4

p.mapper-4.2 on Windows [Chapter 3]

前回に続いて、p.mapper-4.2.0pluginの設定を追加してみます。

Pluginの追加

まずは、p.mapperのマニュアルのplugin追加の部分を呼んでみます。非常に丁寧に書かれているので、説明がいらないくらいです。

いろいろと読んでいくと、pluginの種類によって、config_defalut.inijs_config.phpを編集する必要があるようです。
今回は、Transparency2QueryEditorを追加してみます。

Transparency2

Transparency2 は、p.mapperのTOC画面の透過度設定のスライドバーを表示します。
Transparency2
な感じのスライドバーです。

マニュアルによると設定はされているけど、Activeでないと書いてあるので、How to use通りに設定します。
config_defalut.iniファイルの該当する部分に<plugins>transparency2</plugins>を追加します。

  • 1箇所目修正
<pmapper>
    <ini>
        <pmapper>
            ....
            <plugins>transparency2</plugins>
            ....
        </pmapper>
    </ini>
</pmapper>
  • 2箇所目修正
<pmapper>
    <ini>
         ....
        <pluginsConfig>
            ....
            <transparency2>
                <useOpacity>off</useOpacity>
            </transparency2>
            ....
        </pluginsConfig>
    </ini>
</pmapper>

以上の追加によりスライドバーが表示されます。

Query Editor

まずは、p.mapperのマニュアルの[[http://svn.pmapper.net/trac/wiki/PluginsQuery|Plugins concerning query, search, selection and results}]の部分を呼んでみます。非常に丁寧に書かれているので、説明がいらないくらいです。
Query Editor
な感じでdialog表示されて、GUIでqueryを設定できます。
Query Editorは、config_defalut.inijs_config.phpを編集する必要があるようです。

  • config_defalut.ini
<pmapper>
    <ini>
        <pmapper>
             ....
            <plugins>queryeditor</plugins>
             ....
        </pmapper>
    </ini>
</pmapper>
  • php_config.php
PM.buttonsDefault = {
    .....
    buttons: [
	.....
	{tool:'queryeditor', name:'QueryEditor', run:'PM.Plugin.QueryEditor.openDlg'},
	.....
    ]
}

後は、<pluginsConfig>内のserach項目の設定をします。

<pmapper>
    .....
    <ini>
        .....
        <pluginsConfig>
            .....
	    <queryeditor>
	        <layersType>3</layersType>
		<queryableLayers>
		    <queryableLayer>
		        <name>countries</name>
			<description>My country layer description</description>
		    </queryableLayer>
		    <queryableLayer>
		        <name>cities10000eu</name>
			<description>My cities level description</description>
		    </queryableLayer>
		</queryableLayers>
		<dlgType>dynwin</dlgType>
	    </queryeditor>
        </pluginsConfig>
    </ini>
</pmapper>

パラメータとして

  • layersType: indicate witch layers/groups are available for attribute query in the query editor
    • 1 = all non raster layers
    • 2 = pre-defined list of layers (see queryableLayers parameter)
    • 3 = checked and non raster (default value)
    • 4 = checked and visible (depending on scale) and non raster
  • queryableLayers: list of layers available in the query editor (only used if layersType = 2)

Pligin導入後

  • php_config.php

php_config.phpの修正部分の抜粋です。 css:{height:'460px'}とbuttons{}の中を修正しています。

PM.buttonsDefault = {
    toolbarid:'toolBar',
    options: {orientation:'v',
              css:{height:'460px'},
              theme:'default',
              imagetype:'gif'
             },
    buttons: [
        {tool:'space1',        dimension: 15},
        {tool:'home',          name:'Zoom To Full Extent', run:'PM.Map.zoomfullext'},
        {tool:'back',          name:'Back', run:'PM.Map.goback'},
        {tool:'fwd',           name:'Forward', run:'PM.Map.gofwd'},
        {tool:'zoomselected',  name:'Zoom To Selected', run:'PM.Map.zoom2selected'},
        {tool:'separator1',    dimension:1},
        {tool:'zoomin',        name:'Zoom in'},
        {tool:'zoomout',       name:'Zoom out'},
        {tool:'pan',           name:'Pan'},
        {tool:'separator2',    dimension:1},
        {tool:'identify',      name:'Identify'},
        {tool:'select',        name:'Select'},
        {tool:'auto_identify', name:'Auto Identify'},
        {tool:'separator3',    dimension: 1},
        {tool:'queryeditor', name:'QueryEditor', run:'PM.Plugin.QueryEditor.openDlg'},
        {tool:'measure',       name:'Measure'},
		//{tool:'searchtool', name:'Search', run:'PM.Plugin.SearchTool.click'},
        //{tool:'coordinates',       name:'Coordinates'},
        {tool:'separator4',    dimension: 1},
        {tool:'transparency',  name:'Transparency', run:'PM.Plugin.Transparency.openTransparencyDlg'},
        {tool:'reload',        name:'Refresh Map', run:'PM.Map.clearInfo'}
    ]
};
  • config_default.xml

config_default.xmlのソースです。

<pmapper>
    <ini>
        <pmapper>
            <pmTitle>p.mapper - A MapServer PHP/MapScript Framework</pmTitle>
            <debugLevel>3</debugLevel>
            <plugins>export</plugins>
            <plugins>scalebar</plugins>
            <plugins>transparency</plugins>
            <plugins>transparency2</plugins>
            <plugins>queryeditor</plugins>
 
        </pmapper>
        <config>
            <pm_config_location>default</pm_config_location>
            <pm_javascript_location>javascript</pm_javascript_location>
            <pm_javascript_optional>optional/ui</pm_javascript_optional>
            <pm_print_configfile>common/print.xml</pm_print_configfile>
            <pm_search_configfile>inline</pm_search_configfile>
        </config>
        <map>
            <mapFile>mie.map</mapFile>
            <tplMapFile>common/template.map</tplMapFile>
            <categories>
                <category name="主題図">
                    <group>行政界</group>
                    <group>鉄道</group>
                </category>
                <category name="自然環境図">
                    <group>河川</group>
                </category>
            </categories>
            <allGroups>
                <group>行政界</group>
                <group>鉄道</group>
                <group>河川</group>
            </allGroups>
            <defGroups>
                <group>行政界</group>
                <group>河川</group>
            </defGroups>
            <layerAutoRefresh>1</layerAutoRefresh>
            <!-- <imgFormat>
png8</imgFormat> -->
            <imgFormat>png</imgFormat>
            <altImgFormat>jpeg</altImgFormat>
            <sliderMax>max</sliderMax>
            <sliderMin>5000</sliderMin>
        </map>
        <query>
            <limitResult>300</limitResult>
            <highlightColor>0 255 255</highlightColor>
            <highlightSelected>1</highlightSelected>
            <autoZoom>nquery</autoZoom>
            <autoZoom>search</autoZoom>
            <zoomAll>search</zoomAll>
            <zoomAll>nquery</zoomAll>
            <infoWin>dynwin</infoWin>
            <alignQueryResults>1</alignQueryResults>
            <pointBuffer>10000</pointBuffer>
            <shapeQueryBuffer>0.02</shapeQueryBuffer>
        </query>
        <ui>
            <tocStyle>tree</tocStyle>
            <legendStyle>attached</legendStyle>
            <useCategories>1</useCategories>
            <catWithCheckbox>1</catWithCheckbox>
            <scaleLayers>1</scaleLayers>
            <icoW>18</icoW>
            <icoH>14</icoH>
			<legendKeyimageRewrite>0</legendKeyimageRewrite>
        </ui>
        <locale>
            <defaultLanguage>ja</defaultLanguage>
            <defaultCharset>UTF-8</defaultCharset>
            <map2unicode>0</map2unicode>
        </locale>
        <print>
            <printImgFormat>png</printImgFormat>
            <printAltImgFormat>jpeg</printAltImgFormat>
            <pdfres>2</pdfres>
        </print>
        <download>
            <dpiLevels>150</dpiLevels>
            <dpiLevels>200</dpiLevels>
            <dpiLevels>300</dpiLevels>
        </download>
        <php>
            <pearDbClass>MDB2</pearDbClass>
            <defaultTimeZone>Asia/Tokyo</defaultTimeZone>
        </php>
        <pluginsConfig>
            <export>
                <formats>XLS</formats>
                <formats>CSV</formats>
                <formats>PDF</formats>
                <formats>SHP</formats>
                <!-- PDF formatting: -->
                <PDF>
                  <defaultFont>FreeSans</defaultFont>
                  <defaultFontSize>9</defaultFontSize>
                  <!-- <headerFont>
FreeSans</headerFont> -->
                  <headerFontSize>9</headerFontSize>
                  <headerFontStyle>BI</headerFontStyle>
                  <!-- <layerrFont>
FreeSans</layerFont> -->
                  <layerFontSize>11</layerFontSize>
                  <layerFontStyle>UB</layerFontStyle>
                </PDF>
            </export>
            <transparency2>
                <useOpacity>off</useOpacity>
            </transparency2>
        </pluginsConfig>
    </ini>
 
     <searchlist version="1.0">
        <dataroot>$</dataroot>
        <searchitem name="市町村名" description="行政界">
            <layer type="shape" name="行政界">
                <field type="s" name="CN2" description="mie_city" wildcard="2">
                    <definition type="options" connectiontype="ms" sort="asc" firstoption="*">
                        <mslayer encoding="UTF-8"/>
                        <!-- <mslayer encoding="UTF-8" showfield="CN2"/>
 -->
                    </definition>
                </field>
            </layer>
        </searchitem>
    </searchlist>
</pmapper>

実行すると
blog.godo-tys.jp_wp-content_gallery_mapserver_pmap42-mie.jpg
な感じでひょうじされ、
blog.godo-tys.jp_wp-content_gallery_mapserver_pmap42-mie_last.jpg
な感じでQuery Editor dialogが表示されます。
試しにQueryを作って検索してみると、動きませんね。searchlistでの設定がおかしいようですね。 またAttibuteの項目が文字化けしているようです。
次回は、このsearchについてconfig.default.xml手を入れていきます。

Social Widgets powered by AB-WebLog.com.