27. GRASS GIS နှင့်ပေါင်းစပ်အသုံးပြုခြင်း (GRASS GIS Integration)

QGIS တွင် GRASS နှင့် ပေါင်းစပ်အသုံးပြုခြင်းဖြင့် GRASS GIS database များနှင့် လုပ်ဆောင်နိုင်စွမ်းများကို ရယူအသုံးပြုနိုင်မည်ဖြစ်သည်။ (GRASS-PROJECT ကို စာတမ်းများနှင့် Website ကိုးကားချက်များ (Literature and Web References) တွင်ကြည့်ပါ)။ GRASS နှင့် ပေါင်းစပ်အသုံးပြုရာတွင်တွင် provider နှင့် plugin ဟူသည့်အပိုင်းနှစ်ပိုင်း ပါဝင်သည်။ Provider ဖြင့် GRASS raster နှင့် vector layer များကိုရှာဖွေခြင်း၊ စီမံခန့်ခွဲခြင်းနှင့် ပုံဖော်ပြသခြင်းတို့ကိုဆောင်ရွက်နိုင်သည်။ Plugin ကို GRASS တည်နေရာများနှင့် မြေပုံအသစ်များကို ဖန်တီးရန်၊ GRASS ဒေသကိုပြောင်းလဲရန်၊ vector အလွှာများကိုဖန်တီး၍တည်းဖြတ်ရန်နှင့် GRASS 2-D နှင့် 3-D ဒေတာများ ကိုခွဲခြမ်းစိတ်ဖြာရန် GRASS modules 400 ကျော်ဖြင့် အသုံးပြုနိုင်သည်။ ဤအပိုင်းတွင် provider နှင့် plugin လုပ်ဆောင်နိုင်စွမ်းများအကြောင်းကို မိတ်ဆက်ပေးမည်ဖြစ်ပြီး GRASS ဒေတာကို စီမံခန့်ခွဲခြင်းနှင့် ၎င်းဖြင့် အလုပ်လုပ်ခြင်းဆိုင်ရာ နမူနာအချို့ကို ပြသမည်ဖြစ်ပါသည်။

Provider သည် GRASS version 6 နှင့် 7 ကို ထောက်ပံ့ပေးပြီး plugin သည် (QGIS 2.12 မှစ၍) GRASS version 6 နှင့် 7 ကို ထောက်ပံ့ပေးသည်။ QGIS software ဖြန့်ဖြူးမှုများတွင် GRASS 6 နှင့် GRASS 7 တစ်ခုချင်းစီအတွက် အသုံးပြုနိုင်သော provider/plugin များ ပါဝင်နိုင်သကဲ့သို့ version နှစ်မျိုးစလုံးအားထောက်ပံ့ပေးသည့် provider/plugin များ ပါဝင်နိုင်သည်။ (Binaries ဖိုင်များတွင် မတူကွဲပြားသည့်အမည်များ ရှိမည်)။ သို့သော် QGIS လုပ်ဆောင်နေစဉ်အချိန်တွင် provider/plugin version တစ်ခုကိုသာ အသုံးပြုနိုင်မည်ဖြစ်သည်။

27.1. အစမ်းသရုပ်ပြ dataset (Demo dataset)

ဥပမာတစ်ခုအနေနှင့် QGIS Alaska dataset ကိုအသုံးပြုပါမည်။ (နမူနာဒေတာများ ရယူခြင်း (Downloading sample data) တွင်ကြည့်ပါ) ၎င်းတွင် vector အလွှာသုံးခုနှင့် မြေပြင်အနိမ့်အမြင့်ပြ raster မြေပုံတစ်ခုပါသည့် နမူနာ GRASS LOCATION အသေးတစ်ခုပါရှိသည်။ Dataset အားသိမ်းဆည်းနိုင်ရန် grassdata ဟုအမည်ပေးထားသည့် folder အသစ်တစ်ခုဖန်တီးပါ။ https://qgis.org/downloads/data/ မှတစ်ဆင့် QGIS ‘Alaska’ dataset qgis_sample_data.zip ဖိုင်အားဒေါင်းလုပ်ရယူ၍ grassdata folder ထဲတွင် unzip ပြုလုပ်ပါ။

နမူနာ GRASS LOCATIONs များကိုပိုမိုကြည့်ရှုလိုပါက GRASS website ဖြစ်သည့် https://grass.osgeo.org/download/data/ သို့သွားရောက်ကြည့်ရှုနိုင်ပါသည်။

27.2. GRASS raster နှင့် vector layer များကို ထည့်သွင်းခြင်း (Loading GRASS raster and vector layers)

QGIS တွင် provider အား ဖွင့်ထားပြီးသည့်အခါ GRASS တည်နေရာ ပါဝင်သော folder တစ်ခုချင်းစီ၏အောက်ရှိ browser tree ထဲတွင် GRASS grassLogo သင်္ကေတနှင့် တည်နေရာပြပုံအား ပြသနေသည်ကိုတွေ့ရမည်။ grassdata folder ဆီသို့သွား၍ alaska တည်နေရာ နှင့် demo mapset တို့ကို ဖြန့်ပါ။

GRASS ၏ raster နှင့် vector layer များကို ထည့်သွင်းလိုပါက Browser ထဲမှအခြား layer များကဲ့သို့ပင် layer ပေါ်တွင် ကလစ်နှစ်ချက်နှိပ်၍ဖြစ်စေ layer အား left click ဖြင့် ဖိဆွဲခဲ့၍ map canvas (မြေပုံမြင်ကွင်း) သို့မဟုတ် legend (ရည်ညွှန်းချက်) ပေါ်တွင်လွှတ်ချလိုက်ခြင်းဖြင့် ထည့်သွင်းနိုင်သည်။

Tip

GRASS Data များ ထည့်သွင်းခြင်း

အကယ်၍ GRASS တည်နေရာပြပုံအား Browser ထဲတွင် မတွေ့ရှိပါက Help ► About ► Providers သို့သွား၍ GRASS vector provider အားထည့်သွင်းပြီးမပြီး စစ်ဆေးနိုင်ပါသည်။

27.3. ဖိဆွဲချနည်းဖြင့် GRASS LOCATION ထဲသို့အချက်အလက်များ ထည့်သွင်းခြင်း (Importing data into a GRASS LOCATION via drag and drop)

ဤအပိုင်းတွင် raster နှင့် vector အချက်အလက်များကို GRASS mapset တစ်ခုထဲသို့ import လုပ်နည်း ဥပမာအား ပြသထားပါသည်။

  1. QGIS browser မှ အချက်အလက်များထည့်သွင်းလိုသည့် mapset ရှိရာသို့ ဦးတည်သွားလိုက်ပါ။

  2. Browser တွင် GRASS ထဲသို့ထည့်သွင်းလိုသည့် layer တစ်ခုကိုရှာဖွေပါ။ အကယ်၍ browser tree ထဲတွင် source data များသည် mapset နှင့် ဝေးလွန်းနေလျင် ရှာဖွေရလွယ်စေရန် အခြား browser တစ်ခု (Browser Panel (2)) အား ထပ်မံဖွင့်နိုင်ပါသည်။

  3. Layer တစ်ခုအား left click ဖြင့် ဖိဆွဲခဲ့၍ ရည်ရွယ်ထားသည့် mapset ပေါ်တွင် လွှတ်ချပါ။ အရွယ်အစားပိုမိုကြီးမားသော layer များအား import ရာတွင် အချိန်အချို့ကြာမြင့်မည်ဖြစ်သည်။ Import လုပ်နေစဉ်အတွင်း လှုပ်ရှားနေသည့် import သင်္ကေတ အား layer အသစ်၏ရှေ့တွင်တွေ့မြင်ရမည်ဖြစ်ပြီး import လုပ်ခြင်းမပြီးဆုံးမီအထိ ထိုသင်္ကေတကို မြင်တွေ့နေရမည်ဖြစ်သည်။

Raster အချက်အလက်များသည် မတူညီသော CRS (Coordinate Reference Systems) ဖြစ်နေလျှင် ၎င်းတို့ကို Approximate (မြန်ဆန်သော) သို့မဟုတ် Exact (တိကျသော) ကူးပြောင်းခြင်းနည်းလမ်းတစ်ခုဖြင့် ကိုဩဒိနိတ်စနစ်နောက်တစ်ခုသို့ ကူးပြောင်းခြင်းအား ပြုလုပ်နိုင်သည်။ Raster အချက်အလက်အရင်းအမြစ် နှင့် ချိတ်ဆက်ထားသော လင့်ခ်တစ်ခုအား ဖန်တီးထားလျှင် (r.external ကိုအသုံးပြုပြီး) ထိုအချက်အလက်အရင်းအမြစ်များသည် တူညီသော CRS ရှိမည်ဖြစ်ပြီး format ကိုလည်း GDAL (Geospatial Data Abstraction Library) မှထောက်ပံ့ပေးလျှင် အချက်အလက်အရင်းအမြစ်မှ CRS ကို အသုံးပြုပါလိမ့်မည်။ ဤသို့ရွေးချယ်စရာများအား GRASS ၏ ရွေးချယ်စရာများ (GRASS Options) ထဲရှိ Browser tab ထဲတွင် သတ်မှတ်ချိန်ညှိနိုင်ပါသည်။

အကယ်၍ raster အချက်အလက်အရင်းအမြစ်တစ်ခုတွင် bands (လှိုင်းအလွှာများ) သည် တစ်ခုထက်ပို၍ ရှိနေလျှင် layer တစ်ခုစီအတွက် GRASS မြေပုံ အသစ်တစ်ခုအား .<band နံပါတ်> နောက်ဆက်တွဲ ထည့်သွင်း၍ ဖန်တီးပေးမည်ဖြစ်ပြီး မြေပုံအားလုံးအား အုပ်စုတစ်စုအဖြစ် rasterGroup သင်္ကေတနှင့်အတူ ဖန်တီးမည်ဖြစ်မည်။ ပြင်ပ raster များအတွက် မတူညီသည့် သင်္ကေတ rasterLink တစ်ခုရှိပါလိမ့်မည်။

27.4. QGIS Browser ဖြင့် GRASS Data များအားစီမံခန့်ခွဲခြင်း (Managing GRASS data in QGIS Browser)

  • မြေပုံများကိုကူးယူခြင်း - GRASS မြေပုံများကို တူညီသောတည်နေရာထဲရှိ mapset များကြားတွင် left click ဖြင့်ဖိဆွဲ၍ လွှတ်ချခြင်းဖြင့် (Drag and drop) ကူးယူနိုင်ပါသည်။

  • မြေပုံများကိုဖျက်ခြင်း - GRASS မြေပုံတစ်ခုပေါ်တွင် Right click နှိပ်၍ context menu မှ Delete အားရွေးပါ။

  • မြေပုံများကိုအမည်ပြောင်းခြင်း - GRASS မြေပုံတစ်ခုပေါ်တွင် Right click နှိပ်၍ context menu မှ Rename အားရွေးပါ။

27.5. GRASS ၏ ရွေးချယ်စရာများ (GRASS Options)

GRASS ၏ရွေးချယ်စရာများအား GRASS Options dialog ထဲတွင် သတ်မှတ်ချိန်ညှိနိုင်ပါသည်။ ထိုသို့ပြုလုပ်ရန်အတွက် browser ထဲရှိ location သို့မဟုတ် mapset ပေါ်တွင် right click နှိပ်၍ GRASS Options အားရွေးချယ်ပါ။

27.6. GRASS plugin အားစတင်အသုံးပြုခြင်း (Starting the GRASS plugin)

QGIS ထဲတွင် GRASS ၏လုပ်ဆောင်ချက်များကိုအသုံးပြုနိုင်ရန် Plugin Manager ကိုအသုံးပြု၍ GRASS plugin အားရွေးချယ်ကာ ထည့်သွင်းရပါမည်။ ထည့်သွင်းရန် menu သို့သွား၍ Plugins ► showPluginManager Manage and Install Plugins… မှတစ်ဆင့် checkbox GRASS အားရွေးချယ်၍ OK အား click နှိပ်ပါ။

GRASS plugin အားစတင်အသုံးပြုသည့်အခါ GRASS menu (Plugins ► GRASS) ထဲတွင် အောက်ပါအဓိက feature များအားတွေ့ရပါမည်-

  • grassOpenMapset Open Mapset (Mapset ကိုဖွင့်ခြင်း)

  • grassNewMapset New Mapset (Mapset အသစ်သတ်မှတ်ခြင်း)

  • grassCloseMapset Close Mapset (Mapset ကိုပိတ်ခြင်း)

  • grassTools Open GRASS Tools (GRASS Tools ကိုဖွင့်ခြင်း)

  • grassRegion Display Current GRASS Region (လက်ရှိ GRASS Region အားပြသခြင်း)

  • general GRASS Options (GRASS ရွေးချယ်စရာများ)

27.7. GRASS mapset ကိုဖွင့်ခြင်း (Opening GRASS mapset)

Plugin ထဲရှိ GRASS ဆိုင်ရာ Tool များကိုရယူသုံးစွဲနိုင်ရန် GRASS mapset တစ်ခုအားဖွင့်ထားရပါမည်။ (mapset များဖွင့်မထားလျှင် tool များအားအသုံးပြု၍ရမည်မဟုတ်ပါ) Mapset တစ်ခုကို browser မှ ဖွင့်ရန်အတွက် mapset item ပေါ်တွင် right click နှိပ်၍ context menu မှ Open mapset ကိုရွေးချယ်ပါ။

27.8. GRASS LOCATION နှင့် MAPSET

GRASS အချက်အလက်များကို GISDBASE ဟုရည်ညွှန်းသော ဖိုင်လမ်းကြောင်း (directory) တစ်ခုထဲတွင် သိုလှောင်ထားပါသည်။ ဤ directory အား grassdata ဟုအမည်ပေးလေ့ရှိကြ၍ ၎င်းအား QGIS ထဲတွင် GRASS plugin နှင့်အလုပ်စတင်မလုပ်မီ ဖန်တီးထားရမည်ဖြစ်ပါသည်။ ဤ directory အတွင်းတွင် GRASS GIS အချက်အလက်များအား LOCATIONs ဟုခေါ်သော subdirectories (ဖိုင်လမ်းကြောင်းအခွဲ) များထဲတွင် သိုလှောင်ထားသည့် project များအရ ဖွဲ့စည်းထားခြင်းဖြစ်ပါသည်။ LOCATION တစ်ခုစီအား ၎င်း၏ ကိုဩဒိနိတ်စနစ်၊ မြေပုံအရိပ်ချစနစ် နှင့် ပထဝီဝင်ဆိုင်ရာနယ်နိမိတ်များအရသတ်မှတ်ထားခြင်းဖြစ်ပါသည်။ LOCATION တစ်ခုစီတွင် များစွာသော MAPSETs များ (LOCATION ၏ subdirectories)ရှိနိုင်ပြီး ၎င်းတို့အား project ကို အမျိုးမျိုးသောခေါင်းစဉ်များခွဲရန် သို့မဟုတ် region များအဖြစ် အပိုင်းခွဲရန်သုံးသကဲ့သို့ အဖွဲ့ဝင်တစ်ဦးတစ်ယောက်ချင်းစီအတွက် workspace များအဖြစ် အသုံးပြုပါသည် (စာတမ်းများနှင့် Website ကိုးကားချက်များ (Literature and Web References) ထဲရှိ Neteler & Mitasova 2008 တွင်ကြည့်ပါ)။ Vector နှင့် raster layer များကို GRASS module များဖြင့် ခွဲခြမ်းစိတ်ဖြာရန် ဦးစွာ ၎င်းတို့ကို GRASS LOCATION တစ်ခုထဲသို့ import လုပ်ရမည်ဖြစ်ပါသည်။ (အခြားနည်းလမ်းတစ်ခုမှာ – layer များကို import လုပ်စရာမလိုဘဲ GRASS modules များဖြစ်သော r.external နှင့် v.external တို့အားအသုံးပြုပြီး ပြင်ပ GDAL-supported datasets များသို့ချိတ်ဆက်ထားသော ဖတ်၍သာရသည့် link များ ဖန်တီးခြင်းဖြစ်သည်။ ထိုနည်းလမ်းသည် စတင်အသုံးပြုသူများအနေဖြင့် GRASS နှင့်အလုပ်လုပ်နေကျမဟုတ်သည့်အတွက် ထိုလုပ်ဆောင်ချက်များအား ဤနေရာတွင်ဖော်ပြမထားပါ။)

../../../_images/grass_location.png

Fig. 27.1 Alaska LOCATION ထဲရှိ GRASS Data များ

27.9. GRASS LOCATION တစ်ခုထဲသို့ Data များ ထည့်သွင်းခြင်း (Importing data into a GRASS LOCATION)

Browser ထဲတွင် အချက်အလက်များအား drag and drop နည်းဖြင့် မည်သို့အလွယ်တကူ import လုပ်နိုင်ကြောင်း ဖိဆွဲချနည်းဖြင့် GRASS LOCATION ထဲသို့အချက်အလက်များ ထည့်သွင်းခြင်း (Importing data into a GRASS LOCATION via drag and drop) အပိုင်းတွင်ကြည့်နိုင်ပါသည်။

ဤအပိုင်းတွင် raster နှင့် vector အချက်အလက်များအား ‘alaska’ GRASS LOCATION ထဲသို့ စံသတ်မှတ်ထားသော GRASS module များကိုသုံး၍ မည်သို့ import လုပ်ရမည်ဆိုသည်ကိုဖော်ပြထားပါသည်။ ထို့ကြောင့် QGIS ‘Alaska’ dataset ထဲမှ မြေပြင်ဖုံးလွှမ်းမှုအခြေပြမြေပုံ landcover.img နှင့် vector GML ဖိုင်ဖြစ်သော lakes.gml တို့ကိုအသုံးပြုပါမည်။ (နမူနာဒေတာများ ရယူခြင်း (Downloading sample data) တွင်ကြည့်ပါ။)

  1. QGIS ကိုဖွင့်ပါ။ QGIS တွင် GRASS plugin ထည့်ထားပြီး ဖြစ်ပါစေ။

  2. GRASS toolbar ထဲရှိ grassOpenMapset Open MAPSET သင်္ကေတအား click နှိပ်၍ MAPSET wizard အားခေါ်ယူပါ။

  3. QGIS Alaska dataset ထဲရှိ grassdata folder အား GRASS database အဖြစ်ရွေးချယ်ပါ။ LOCATION အား ‘alaska’ အဖြစ် ရွေးချယ်၍ MAPSET’demo’ အဖြစ် ရွေးချယ်ပါ။ OK ကိုနှိပ်ပါ။

  4. ယခုအခါ grassTools Open GRASS tools သင်္ကေတအား click နှိပ်ပါ။ GRASS Toolbox dialog ပေါ်လာမည်ဖြစ်သည်။ (The GRASS Toolbox အပိုင်းတွင်ကြည့်ပါ။)

  5. landcover.img raster မြေပုံအား import လုပ်ရန် Modules Tree tab ထဲရှိ r.in.gdal module အား click နှိပ်ပါ။ ဤ GRASS module ကိုသုံးခြင်းဖြင့် GDAL မှထောက်ပံ့ပေးသော raster ဖိုင်များအား GRASS LOCATION တစ်ခုထဲသို့ import လုပ်နိုင်မည်ဖြစ်သည်။ Click နှိပ်ပြီးသောအခါ r.in.gdal အတွက် module dialog ပေါ်လာမည်ဖြစ်သည်။

  6. QGIS ‘Alaska’ dataset ထဲရှိ raster folder သို့သွား၍ landcover.img file အားရွေးချယ်ပါ။

  7. ရလာဒ် raster ၏ အမည်အား landcover_grass ဟုသတ်မှတ်ပေး၍ Run အား click နှိပ်ပါ။ Output tab ထဲတွင် လက်ရှိ ဆောင်ရွက်ဆဲ GRASS command ဖြစ်သည့် r.in.gdal -o input=/path/to/landcover.img  output=landcover_grass အားတွေ့ရှိမည်ဖြစ်သည်။

  8. Successfully finished (အောင်မြင်စွာပြီးဆုံးပြီ) ဟူသည့်စာတိုပေါ်လာလျှင် View Output အား click နှိပ်ပါ။ landcover_grass ဟူသည့် raster layer သည် ယခုအခါတွင် GRASS ထဲသို့ import လုပ်ပြီးဖြစ်၍ QGIS canvas ထဲတွင် ပုံဖော်ကြည့်ရှုနိုင်မည်ဖြစ်သည်။

  9. Vector GML ဖိုင် lakes.gml အား import လုပ်ရန်အတွက် Modules Tree tab ထဲရှိ v.in.ogr module အား click နှိပ်ပါ။ ဤ GRASS module ကိုသုံးခြင်းဖြင့် OGR မှထောက်ပံ့ပေးသော vector ဖိုင်များအား GRASS LOCATION တစ်ခုထဲသို့ import လုပ်နိုင်မည်ဖြစ်သည်။ Click နှိပ်ပြီးသောအခါ v.in.ogr အတွက် module dialog ပေါ်လာမည်ဖြစ်သည်။

  10. QGIS ‘Alaska’ dataset ထဲရှိ gml folder ရှိရာသို့သွား၍ lakes.gml file အား OGR file အနေဖြင့် ရွေးချယ်ပါ။

  11. ရလာဒ် vector အမည်အား lakes_grass ဟုသတ်မှတ်ပေး၍ Run အား click နှိပ်ပါ။ ဤဥပမာတွင် အခြားရွေးချယ်စရာများကို ဂရုပြုရန်မလိုအပ်သေးပါ။ Output tab ထဲတွင် လက်ရှိ ဆောင်ရွက်ဆဲ GRASS command ဖြစ်သည့် v.in.ogr -o dsn=/path/to/lakes.gml output=lakes\_grass အားတွေ့ရမည်ဖြစ်သည်။

  12. Successfully finished (အောင်မြင်စွာပြီးဆုံးပြီ) ဟူသည့်စာတိုပေါ်လာလျှင် View Output အား click နှိပ်ပါ။ lakes_grass ဟူသည့် vector layer သည် ယခုအခါတွင် GRASS ထဲသို့ import လုပ်ပြီးဖြစ်၍ QGIS canvas ထဲတွင် ပုံဖော်ကြည့်ရှုနိုင်မည်ဖြစ်သည်။

27.9.1. GRASS LOCATION အသစ်တစ်ခု ဖန်တီးခြင်း (Creating a new GRASS LOCATION)

ဥပမာတစ်ခုအနေဖြင့် Albers Equal Area projection မြေပုံအရိပ်ချစနစ်အားအသုံးပြုထားပြီး ယူနစ်မှာ ပေ ဖြစ်သည့် နမူနာ GRASS LOCATION alaska အားပြသထားပါသည်။ ဤ နမူနာ GRASS LOCATION alaska အား လာမည့် GRASS နှင့်သက်ဆိုင်သည့်အပိုင်းများအားလုံးရှိ ဥပမာများနှင့်လေ့ကျင့်ခန်းများ အားလုံးတွင်အသုံးပြုသွားပါမည်။ ကွန်ပျူတာတွင် dataset အား download လုပ်၍ install ပြုလုပ်ထားပါကအသုံးဝင်မည်ဖြစ်ပါသည် (နမူနာဒေတာများ ရယူခြင်း (Downloading sample data) တွင်ကြည့်ပါ)။

  1. QGIS ကိုဖွင့်ပါ။ QGIS တွင် GRASS plugin ထည့်သွင်းထားပြီး ဖြစ်ပါစေ။

  2. QGIS Alaska dataset (နမူနာဒေတာများ ရယူခြင်း (Downloading sample data) တွင်ကြည့်ပါ) ထဲမှ shapefile ဖြစ်သော alaska.shp အား ပုံဖော်ကြည့်ရှုပါ။ ( ဖိုင်တစ်ခုမှ layer တစ်ခုကို ထည့်သွင်းခြင်း (Loading a layer from a file) အပိုင်းတွင်ကြည့်ပါ)

  3. GRASS toolbar ထဲရှိ grassNewMapset New mapset သင်္ကေတအား click နှိပ်၍ MAPSET wizard အားခေါ်ယူပါ။

  4. ရှိပြီးသား GRASS database (GISDBASE) folder တစ်ခုဖြစ်သည့် grassdata အားရွေးချယ်ပါ သို့မဟုတ် computer ရှိ file manager တစ်ခုအားအသုံးပြု၍ LOCATION အသစ်အတွက် folder တစ်ခုဖန်တီးနိုင်ပါသည်။ ထို့နောက် Next အား click နှိပ်ပါ။

  5. ဤ wizard ကိုအသုံးပြုခြင်းဖြင့် ရှိပြီးသား LOCATION အတွင်းတွင် MAPSET အသစ်တစ်ခုအားဖန်တီးနိုင်သကဲ့သို့ LOCATION အသစ်တစ်ခုအား အတူတကွဖန်တီးနိုင်ပါသည်။(MAPSETအသစ်တစ်ခုထည့်သွင်းခြင်း (Adding a new MAPSET) အပိုင်းတွင်ကြည့်ပါ) radioButtonOn Create new location အားရွေးချယ်ပါ။ ( Fig. 27.2 အားကြည့်ပါ)

  6. LOCATION အသစ်အတွက် အမည်တစ်ခုပေးပါ – ‘alaska’ ဟုအမည်ပေးခဲ့ပါသည် – ပြီးလျှင် Next အား click နှိပ်ပါ။

  7. radioButtonOn Projection ခလုတ်ပေါ်တွင် click နှိပ်၍ projection စာရင်း (list) အားဖွင့်ပြီး projection ကို သတ်မှတ်ပါ။

  8. List မှ Albers Equal Area Alaska projection (ပေယူနစ်) အားအသုံးပြုပါမည်။ ၎င်းအား EPSG ID 2964 ဖြင့် ကိုယ်စားပြုသည်ကို သိရှိရသောကြောင့် search box ထဲတွင်၎င်းကို ရိုက်ထည့်ပါသည်။ (မှတ်ချက်- အကယ်၍ ယခုလုပ်ငန်းစဉ်အား အခြား LOCATION နှင့် projection အတွက် ထပ်မံပြုလုပ်လိုသော်လည်း EPSG ID အားမမှတ်မိဖြစ်နေပါက status bar ၏ ညာဘက်အောက်ထောင့်ရှိ projectionEnabled CRS Status သင်္ကေတပေါ်တွင် click နှိပ်ပါ။ ( ပုံရိပ်ချခြင်း များဖြင့် အလုပ်လုပ်ခြင်း (Working with Projections) အပိုင်းတွင်ကြည့်ပါ))

  9. Filter ထဲတွင် projection အားရွေးချယ်ရန်အတွက် 2964 ဟုထည့်သွင်းပါ။

  10. Next အား Click နှိပ်ပါ။

  11. Default (ပုံသေ) region သတ်မှတ်ရန်အတွက် မြောက်၊ တောင်၊ အရှေ့ နှင့် အနောက် အနားသတ်တို့တွင် ရှိသော LOCATION အတိုင်းအတာပမာဏ ထည့်သွင်းပေးရမည်ဖြစ်ပါသည်။ Set Current QGIS Extent ခလုတ်ပေါ်တွင် click နှိပ်ခြင်းဖြင့် QGIS ထဲတွင် တင်ထားသော alaska.shp layer ၏ မြေပြင်အကျယ်အဝန်းအား GRASS LOCATION ၏ default region ပမာဏအဖြစ် သတ်မှတ်ပေးမည်ဖြစ်သည်။

  12. Next အား Click နှိပ်ပါ။

  13. LOCATION အသစ်အတွင်း MAPSET တစ်ခုအား သတ်မှတ်ရန်လည်းလိုအပ်ပါသည်။ (LOCATION အသစ်တစ်ခုဖန်တီးတိုင်း ဤသို့သတ်မှတ်ပေးရန်လိုအပ်မည်ဖြစ်သည်။) ကြိုက်နှစ်သက်ရာအမည်ကိုပေးနိုင်ပါသည် - ဤနေရာတွင် ‘demo’ ဟုအမည်ပေးပါမည်။ GRASS သည် project အတွက် ပင်မ အချက်အလက်များ၊ ပုံသေ မြေပြင်အကျယ်အဝန်းနှင့် ကိုဩဒိနိတ်စနစ် အဓိပ္ပာယ် သတ်မှတ်ချက်များကိုသိမ်းဆည်းရန် PERMANENT ဟုခေါ်သော အထူး MAPSET တစ်ခုကိုအလိုအလျောက်ဖန်တီးမည်ဖြစ်သည်။ (စာတမ်းများနှင့် Website ကိုးကားချက်များ (Literature and Web References) မှ Neteler & Mitasova 2008 တွင်ကြည့်ပါ။)

  14. ချိန်ညှိမှုများမှန်ကန်ခြင်းရှိမရှိ အကျဉ်းချုပ်အား ပြန်လည်စစ်ဆေး၍ Finish အား click နှိပ်ပါ။

  15. ‘alaska’ ဟူသည့် LOCATION အသစ်နှင့် ‘demo’ နှင့် ‘PERMANENT’ဟူသည့် MAPSETs နှစ်ခုအားဖန်တီးပြီးဖြစ်သည်။ ယခုလက်ရှိ ဖွင့်ထားသော working set တွင် အမည်သတ်မှတ်ထားခဲ့သည့်အတိုင်း ‘demo’ ဖြစ်ပါမည်။

  16. GRASS toolbar ထဲရှိ ပိတ်နေသော tools အချို့သည် ယခုအခါတွင် အသုံးပြုနိုင်သည့်အနေအထားဖြင့် ပွင့်နေသည်ကို သတိပြုမိမည်ဖြစ်သည်။

../../../_images/create_grass_location.png

Fig. 27.2 QGIS ထဲတွင် GRASS LOCATION အသစ်တစ်ခု သို့မဟုတ် MAPSET အသစ်တစ်ခုအားဖန်တီးခြင်း

LOCATION အသစ်တစ်ခုဖန်တီးရန် အဆင့်များလွန်းသည်ဟုထင်ရသော်လည်း လက်တွေ့တွင် လျင်မြန်၍ ရိုးရှင်းလွယ်ကူသည်ကိုတွေ့ရမည်။ ယခုအခါ LOCATION ‘alaska’ ထဲသို့ အချက်အလက်များ import လုပ်ရန်အဆင်သင့်ဖြစ်နေသည်ကိုတွေ့ရမည် (GRASS LOCATION တစ်ခုထဲသို့ Data များ ထည့်သွင်းခြင်း (Importing data into a GRASS LOCATION) အပိုင်းတွင်ကြည့်ပါ)။ QGIS ‘Alaska’ dataset နမူနာဒေတာများ ရယူခြင်း (Downloading sample data) ထဲတွင်ပါဝင်သော နမူနာ GRASS LOCATION ‘alaska’ ထဲမှ ရှိပြီးသား vector နှင့် raster အချက်အလက်များကိုလည်းအသုံးပြုနိုင်ပြီး The GRASS vector data model အပိုင်းသို့ ဆက်သွားနိုင်မည်ဖြစ်သည်။

27.9.2. MAPSETအသစ်တစ်ခုထည့်သွင်းခြင်း (Adding a new MAPSET)

အသုံးပြုသူတစ်ဦးသည် ၎င်းဖန်တီးခဲ့သော GRASS MAPSET တစ်ခုကိုသာ write access (ပြင်ဆင်ခွင့်) ရှိမည်ဖြစ်ပါသည်။ ဆိုလိုသည်မှာ သင်၏ ကိုယ်ပိုင် MAPSET အား access လုပ်နိုင်သည့်အပြင် အခြားအသုံးပြုသူများ၏ MAPSETs များတွင်ရှိသောမြေပုံများကိုဖတ်နိုင်မည်ဖြစ်သည်။ (၎င်းတို့သည်လည်း သင်၏ ဖိုင်များကိုဖတ်နိုင်မည်ဖြစ်ပါသည်။) သို့သော် ကိုယ်ပိုင် MAPSETs ထဲရှိ မြေပုံများကိုသာပြုပြင်ပြောင်းလဲခြင်း သို့မဟုတ် ဖယ်ရှားခြင်း များပြုလုပ်နိုင်ပါမည်။

MAPSETs အားလုံးတွင် လက်ရှိ နယ်နိမိတ် ကိုဩဒိနိတ်တန်ဖိုးများနှင့် လက်ရှိ ရွေးချယ်ထားသော raster ပုံရိပ်ပြတ်သားမှု ကိုသိမ်းဆည်းထားသော WIND file တစ်ခုပါရှိသည် (စာတမ်းများနှင့် Website ကိုးကားချက်များ (Literature and Web References) ထဲရှိ Neteler & Mitasova 2008 နှင့် The GRASS region tool တို့တွင်ကြည့်ပါ)။

  1. QGIS ကိုဖွင့်ပါ။ QGIS တွင် GRASS plugin ထည့်သွင်းထားပြီး ဖြစ်ပါစေ။

  2. GRASS toolbar ထဲရှိ grassNewMapset New mapset သင်္ကေတအား click နှိပ်၍ MAPSET wizard အားခေါ်ယူပါ။

  3. LOCATION ‘alaska’ ဖြင့် GRASS database (GISDBASE) folder ဖြစ်သည့် grassdata အားရွေးပါ။ ၎င်းတွင် ‘test’ အမည်ရှိ နောက်ထပ် MAPSET တစ်ခုအားထပ်မံထည့်သွင်းပါမည်။

  4. Next အား Click နှိပ်ပါ။

  5. ဤ wizard ကိုအသုံးပြုခြင်းဖြင့် ရှိပြီးသား LOCATION အတွင်းတွင် MAPSET အသစ်တစ်ခုအားဖန်တီးနိုင်သကဲ့သို့ LOCATION အသစ်တစ်ခုအား အတူတကွဖန်တီးနိုင်ပါသည်။ radioButtonOn Select location ခလုတ်ပေါ်တွင် click နှိပ်ပြီးလျှင် Next ပေါ်တွင် click နှိပ်ပါ။ (Fig. 27.2 တွင်ကြည့်ပါ)

  6. MAPSET အသစ်အတွက် test ဟုအမည်ထည့်သွင်းပါ။ Wizard entry ၏အောက်တွင် ရှိပြီးသား MAPSETs များနှင့် သက်ဆိုင်ရာပိုင်ရှင်များ၏ စာရင်းပြသထားသည်ကိုတွေ့ရှိရမည်။

  7. Next ကို Click နှိပ်ပါ ပြီးလျှင် ချိန်ညှိမှုများမှန်ကန်ခြင်းရှိမရှိ အကျဉ်းချုပ်အား ပြန်လည်စစ်ဆေး၍ Finish အား click နှိပ်ပါ။

27.10. The GRASS vector data model

မြေပုံအချက်အလက် ရေးဆွဲခြင်း (Digitizing) မပြုမီ GRASS vector data model အား ဦးစွာ နားလည်ရန်အရေးကြီးပါသည်။ ယေဘုယျအနေဖြင့် GRASS သည် topological (ဆက်စပ်တည်ရှိမှုအရဖွဲ့စည်းပုံ) vector model တစ်ခုကိုအသုံးပြုပါသည်။ ဆိုလိုသည်မှာ ဧရိယာများအား polygons အပိတ်များအဖြစ် သတ်မှတ်ကိုယ်စားပြုထားခြင်းမရှိဘဲ တစ်ခုသို့မဟုတ် တစ်ခုထက်ပိုသော နယ်နိမိတ်များအဖြစ်သတ်မှတ်ကိုယ်စားပြုထားခြင်းဖြစ်ပါသည်။ ကပ်လျက်ရှိသော ဧရိယာနှစ်ခုကြားရှိ နယ်နိမိတ်တစ်ခုအား တစ်ကြိမ်တည်းသာ ရေးဆွဲထား၍ ၎င်းအားဧရိယာနှစ်ခုမှမျှဝေသုံးစွဲပါသည်။ နယ်နိမိတ်များသည် ချိတ်ဆက်ထိစပ်နေရမည်ဖြစ်ပြီး အဟ (gaps) များမပါဘဲ ပိတ်လျက်ရှိနေရမည်ဖြစ်ပါသည်။ ဧရိယာတစ်ခုအား ၎င်း၏ အလယ်ဗဟိုချက်မ မှတစ်ဆင့် သတ်မှတ်၍ အညွှန်းများတပ်မည်ဖြစ်ပါသည်။

နယ်နိမိတ်များနှင့် အလယ်ဗဟိုချက်မများအပြင် vector မြေပုံတစ်ခုတွင် အမှတ်များနှင့် မျဉ်းများပါရှိနိုင်ပါသည်။ ဤ ဂျီဩမေတြီအရာဝတ္ထုများ (နယ်နိမိတ်များ၊ အလယ်ဗဟိုချက်မများ၊ အမှတ်များနှင့် မျဉ်းများ) အားလုံးသည် vector တစ်ခုထဲတွင် ရောထွေးတည်ရှိနေနိုင်ပါသည်။ ၎င်းတို့ကို GRASS vector မြေပုံတစ်ခုထဲတွင် မတူကွဲပြားသော layer များအနေဖြင့် ကိုယ်စားပြုပြသထားမည်ဖြစ်သည်။ ထို့ကြောင့် GRASS တွင် layer တစ်ခုသည် vector သို့မဟုတ် raster map တစ်ခုမဟုတ်ပဲ vector layer အတွင်းရှိ အဆင့်တစ်ခုဖြစ်ပါသည်။ ၎င်းတို့ကို ဂရုတစိုက်ခွဲခြားရန်အရေးကြီးပါသည်။ (ဂျီဩမေတြီအရာဝတ္ထုများကို ရောထွေးရန်မှာဖြစ်နိုင်ခြေရှိသော်လည်း ၎င်းကို သုံးလေ့သုံးထမရှိသည့်အတွက် GRASS ထဲမှာပင်လျှင် vector ကွန်ရက်ခွဲခြမ်းစိတ်ဖြာမှု (vector network analysis) ကဲ့သို့သော အထူးကိစ္စရပ်များတွင်သာအသုံးပြုပါသည်။ ပုံမှန်အားဖြင့် မတူကွဲပြားသော ဂျီဩမေတြီအရာဝတ္ထုများကို မတူသည့် layer များတွင် ခွဲခြားသိမ်းဆည်းသင့်ပါသည်။)

Vector dataset တစ်ခုထဲတွင်မြောက်များစွာသော ‘layers’ များကိုသိမ်းဆည်းနိုင်ပါသည်။ ဥပမာအားဖြင့် လယ်ကွင်းပြင်များ၊ တောအုပ်များနှင့်ရေကန်များကို vector တစ်ခုထဲတွင်သိမ်းဆည်းနိုင်သည်။ တောအုပ်နှင့် ရေကန်သည် ကပ်လျက်ရှိနေလျှင် တူညီသောနယ်နိမိတ်တစ်ခုကို မျှဝေသုံးစွဲနိုင်သော်လည်း ၎င်းတို့တွင် ကွဲပြားသော attribute tables များသီးခြားပိုင်ဆိုင်ကြမည်ဖြစ်ပါသည်။ နယ်နိမိတ်များတွင်လည်း attribute များကို ပူးတွဲထားနိုင်ပါသည်။ ဥပမာအနေနှင့် ရေကန်တစ်ကန်နှင့်တောအုပ်တစ်ခုကြားရှိ နယ်နိမိတ်သည် လမ်းတစ်လမ်းဖြစ်နေခဲ့လျှင် ၎င်းတွင် ကွဲပြားသည့် attribute table တစ်ခုရှိနိုင်မည်ဖြစ်သည်။

Feature တစ်ခု၏ ‘layer’ ကို GRASS အတွင်းရှိ ‘layer’ မှ သတ်မှတ်ပြီး ၎င်းသည် dataset အတွင်းရှိ Layer အရေအတွက်ကို ကိုယ်စားပြုခြင်းဖြစ်သည် (ဥပမာအားဖြင့် ဂျီဩမေတြီသည် သစ်တော သို့မဟုတ် ရေကန်ဖြစ်နေလျှင်)။ လက်ရှိ တွင် အရေအတွက်သာ ဖြစ်နိုင်သော်လည်း နောင်အနာဂတ်တွင် GRASS သည် user interface တွင် အမည်များကို field များအဖြစ် ထောက်ပံ့ပေးလာနိုင်မည်ဖြစ်သည်။

Attribute များကို GRASS LOCATION အတွင်းတွင် dBase၊ SQLite3 အဖြစ် သိမ်းဆည်းနိုင်သကဲ့သို့ ပြင်ပ database ဇယားများတွင် ဥပမာအားဖြင့် PostgreSQL၊ MySQL၊ Oracle အစရှိသဖြင့်သိမ်းဆည်းနိုင်ပါသည်။

Database ဇယားများရှိ Attribute များအား ‘category’ တန်ဖိုးတစ်ခုကို အသုံးပြု၍ ဂျီသြမေတြီ အရာဝတ္ထုများနှင့် ချိတ်ဆက်ထားသည်။

‘Category’ (key၊ ID) သည် အခြေခံ ဂျီဩ‌မေတြီများနှင့် တွဲထားသော ကိန်းပြည့်ဂဏန်းဖြစ်ပြီး ၎င်းကို database ဇယားရှိ key column တစ်ခုသို့ချိတ်ဆက်ထားသည့် link အဖြစ်အသုံးပြုနိုင်သည်။

Tip

GRASS vector model အားလေ့လာသင်ယူခြင်း

GRASS vector model နှင့် ၎င်း၏လုပ်ဆောင်နိုင်စွမ်းများအား လေ့လာသင်ယူရန်အကောင်းဆုံးနည်းလမ်းမှာ GRASS tutorial များထဲမှ vector model အကြောင်းအကျယ်တဝင့်ရှင်းပြထားသည့်တစ်ခုအား download ရယူ၍လေ့လာခြင်းဖြစ်ပါသည်။ ပိုမိုသိရှိလိုသောအချက်အလက်များ၊ စာအုပ်များနှင့် tutorial များအတွက် https://grass.osgeo.org/learn/manuals/ တွင် အမျိုးမျိုးသော ဘာသာစကားများဖြင့် သွားရောက်ကြည့်ရှုလေ့လာနိုင်မည်ဖြစ်ပါသည်။

27.11. GRASS vector layer အသစ်တစ်ခု ဖန်တီးခြင်း (Creating a new GRASS vector layer)

GRASS vector layer အသစ်တစ်ခုအားဖန်တီးရန်အတွက် browser ထဲရှိ mapset context menu မှ အောက်ပါတို့ထဲကတစ်ခုကိုရွေးချယ်ပါ-

  • New Point Layer (အမှတ် Layer အသစ်ဖန်တီးရန်အတွက်)

  • New Line Layer (မျဉ်း Layerအသစ်ဖန်တီးရန်အတွက်)

  • New Polygon Layer (ဗဟုဂံ Layerအသစ်ဖန်တီးရန်အတွက်)

ထို့နောက် ပေါ်လာသော dialog ထဲတွင် အမည်တစ်ခုရိုက်ထည့်ပါ။ Vector မြေပုံအသစ်တစ်ခုကို ဖန်တီးပေးမည်ဖြစ်ပြီး layer သည်လည်း canvas ထဲသို့ ရောက်ရှိသွားမည်ဖြစ်ကာ ပြင်ဆင်တည်းဖြတ်ခြင်းများ စတင်နိုင်မည်ဖြစ်သည်။ Layer အမျိုးအစားကိုရွေးချယ်ခြင်းသည် vector မြေပုံ အတွင်း digitize ပြုလုပ်နိုင်သော ဂျီသြမေတြီအမျိုးအစားများကို ကန့်သတ်ထားခြင်းမရှိပါ။ GRASS တွင် ဂျီဩမေတြီပုံစံများ (point၊ line နှင့် polygon)၏ အမျိုးအစားအားလုံး ကို vector မြေပုံတစ်ခုထဲတွင်စုစည်းထားရှိနိုင်သည်။ QGIS သည် သီးသန့်ပုံစံရှိသော layer တစ်ခုလိုအပ်သောကြောင့် canvas ထဲသို့ layer တစ်ခုထည့်ပေးရန်သာ ပုံစံအမျိုးအစားတစ်ခုကိုရွေးချယ်ပေးရခြင်းဖြစ်သည်။

ရှိပြီးသား vector မြေပုံ၏ context menu မှ အထက်တွင်ဖော်ပြခဲ့သော vector layer များထဲမှတစ်ခုကို ရွေးချယ်၍ ရှိပြီးသား vector မြေပုံများတွင် layer များထပ်ထည့်နိုင်သည်။

GRASS သည် topology ဆိုင်ရာ vector model အား အသုံးပြုသောကြောင့် GRASS vector အသစ်တစ်ခုအားဖန်တီးနေချိန်တွင် ဂျီဩမေတြီအမျိုးအစားရွေးချယ်ပေးရန်မလိုပါ။ ထို့ကြောင့် GRASS ထဲတွင် ဂျီဩမေတြီအမျိုးအစားအားလုံး (point၊ line နှင့် polygon) အား layer တစ်ခုထဲတွင် စုစည်းထားနိုင်သည်။ ဤအချက်သည် QGIS ကိုအသုံးပြု၍ shapefile ဖန်တီးခြင်းနှင့်ကွဲပြားသည့် အချက်ဖြစ်သည်။ အဘယ့်ကြောင့်ဆိုသော် shapefile များသည် Simple Feature vector model အားအသုံးပြုခြင်းကြောင့်ဖြစ်သည်။ (Vector layer အသစ်များဖန်တီးခြင်း အပိုင်းတွင်ကြည့်ပါ။)

27.12. GRASS vector layer တစ်ခုအား ရေးဆွဲခြင်းနှင့် တည်းဖြတ်ပြင်ဆင်ခြင်း (Digitizing and editing a GRASS vector layer)

QGIS digitizing tool များကိုသုံး၍ GRASS vector layer များကို ရေးဆွဲနိုင်ပါသည်။ သို့သော်-

  • GRASS topological model နှင့် QGIS simple feature အကြားရှိ ကွာခြားချက်နှင့်

  • GRASS model ၏ရှုပ်ထွေးမှု-

    • မြေပုံတစ်ခုချင်းစီတွင် မြောက်များစွာသော layer များရှိနေခြင်း

    • မြေပုံတစ်ခုချင်းစီတွင် မြောက်များစွာသော ဂျီဩမေတြီပုံစံအမျိုးအစားများရှိနေခြင်း

    • မြောက်များစွာသောအလွှာများရှိ များစွာသော feature များမှ ဂျီဩမေတြီများမျှဝေသုံးစွဲမှု တို့ကြောင့် မြေပုံအချက်အလက်များရေးဆွဲသည့်အခါ ဂရုပြုရမည့်အချက်များရှိကြောင်းသိထားသင့်ပါသည်။

ဂရုပြုရမည့်အချက်များကို အောက်ဖော်ပြပါအပိုင်းများတွင်ဆွေးနွေးထားပါသည်။

Save, discard changes, undo, redo (ပြောင်းလဲမှုများသိမ်းဆည်းခြင်း၊ ပြောင်းလဲမှုများဖျက်သိမ်းခြင်း၊ လုပ်ဆောင်ချက်များကိုပယ်ဖျက်ခြင်း၊ လုပ်ဆောင်ချက်များပြန်လည်ရယူခြင်း)

Warning

တည်းဖြတ်နေစဉ်အတွင်း ပြုလုပ်ခဲ့သမျှ ပြောင်းလဲမှုများသည် ချက်ချင်းပင် vector မြေပုံ နှင့် သက်ဆိုင်ရာ attribute ဇယားများတွင်ဖြည့်သွင်းပြီးဖြစ်မည်။

လုပ်ငန်းစဉ်တစ်ခုစီပြီးစီးတိုင်း ပြောင်းလဲမှုများကို သိမ်းဆည်းပေးပါသည်။ သို့သော်လည်း editing(တည်းဖြတ်ပြင်ဆင်ခြင်း)ကို ပိတ်/ရပ် လိုက်ချိန်တွင် လုပ်ဆောင်ချက်များကိုပယ်ဖျက်ခြင်း၊ လုပ်ဆောင်ချက်များပြန်လည်ရယူခြင်း သို့မဟုတ် ပြောင်းလဲမှုများအားလုံးကိုဖျက်သိမ်းခြင်းတို့ကို ပြုလုပ်နိုင်ပါသည်။ အကယ်၍ လုပ်ဆောင်ချက်များကိုပယ်ဖျက်ခြင်း သို့မဟုတ် ပြောင်းလဲမှုများဖျက်သိမ်းခြင်း အသုံးပြုပါက vector မြေပုံ နှင့် attribute ဇယားများထဲတွင် မူလအခြေအနေသို့ပြန်ရောက်သွားမည်ဖြစ်သည်။

ဤအခြေအနေဖြစ်ရခြင်းအတွက် အဓိက အကြောင်းအရင်းနှစ်ရပ် ရှိပါသည်-

  • GRASS vector များ၏ သဘောသဘာဝအရ အသုံးပြုသူများသည် ၎င်းတို့၏လုပ်ဆောင်မှုများတွင် ရည်ရွယ်ချက်ရှိရှိဖြင့် လုပ်ဆောင်ကြသဖြင့် မမျှော်လင့်ထားသော အနှောင့်အယှက်များကြုံရသည့်အခါ Data အား သိမ်းဆည်းပြီးသားဖြစ်စေသည်။ (ဥပမာ- မီးပျက်ခြင်း)

  • Topology ဆိုင်ရာ data များကို ထိရောက်စွာ ပြင်ဆင်တည်းဖြတ်ခြင်းအတွက် လိုအပ်သည်များကို topology ဆိုင်ရာမှန်ကန်မှု အချက်အလက်အဖြစ်ပြသပါသည်။ ပြောင်းလဲမှုများကို မြေပုံတွင်ရေးမှတ်လိုက်မှသာ GRASS vector map မှတဆင့် ထိုအချက်အလက်များကိုရယူနိုင်ပါလိမ့်မည်။

Toolbar

GRASS layer တစ်ခုအားတည်းဖြတ်ပြင်ဆင်လိုက်သောအခါတွင် ‘Digitizing Toolbar’ တွင် အထူးသီးသန့် tools အချို့ရှိလာပါသည်-

Icon

Tool

ရည်ရွယ်ချက်

capturePoint

New Point (အမှတ်အသစ်)

အမှတ်အသစ်အား digitize ပြုလုပ်ရန်

captureLine

New Line (မျဉ်းအသစ်)

မျဉ်းအသစ်အား digitize ပြုလုပ်ရန်

captureBoundary

New Boundary (နယ်နိမိတ်အသစ်)

နယ်နိမိတ်အသစ်အား digitize ပြုလုပ်ရန်

captureCentroid

New Centroid (အလယ်ဗဟိုအသစ်)

အလယ်ဗဟိုအသစ်အား digitize ပြုလုပ်ရန် (ရှိနေပြီးသားဧရိယာကို အညွှန်းတပ်ရန်)

capturePolygon

New Closed Boundary (အပိတ် နယ်နိမိတ် အသစ်)

အပိတ် နယ်နိမိတ် အသစ်အား digitize ပြုလုပ်ရန်

GRASS ဆိုင်ရာမြေပုံအချက်အလက်ရေးဆွဲခြင်းဇယား - GRASS Digitizing Tools

Tip

GRASS ထဲတွင် polygon များရေးဆွဲခြင်း

GRASS ထဲတွင် polygon တစ်ခုဖန်တီးလိုသောအခါ ပထမဦးစွာ polygon ၏ နယ်နိမိတ်ကို ရေးဆွဲရပါသည်။ ပြီးလျှင် အပိတ်ဖြစ်အောင်ရေးဆွဲထားသော နယ်နိမိတ်ထဲသို့ အလယ်ဗဟိုမှတ်တစ်ခု (အညွှန်း အမှတ်) ထည့်သွင်းပေးရပါသည်။ အကြောင်းရင်းမှာ topological vector model တစ်ခုသည် attribute အချက်အလက်များကို polygon တစ်ခု၏ နယ်နိမိတ်နှင့်ချိတ်ဆက်သည်မဟုတ်ဘဲ ၎င်း၏အလယ်ဗဟိုမှတ်နှင့်သာချိတ်ဆက်သောကြောင့်ဖြစ်ပါသည်။

Category (အမျိုးအစား)

“Cat” ဟု မကြာခဏရည်ညွှန်းသော “Category (အမျိုးအစား)” သည် ID အမျိုးအစားတစ်ခုဖြစ်သည်။ ထိုအမည် သည် GRASS vector များတွင် “category” attribute တစ်ခုတည်းသာရှိခဲ့သောအခါ ပေါ်ပေါက်လာခြင်းဖြစ်သည်။ Category ကို ဂျီဩမေတြီနှင့် attribute များအကြား ချိတ်ဆက်ရာတွင်အသုံးပြုသည်။ ဂျီသြမေတြီတစ်ခုတည်းတွင် Category (အမျိုးအစား)များစွာရှိနိုင်သောကြောင့် ၎င်းသည် GIS ၏ မတူညီသော layer များရှိ feature များစွာကို ကိုယ်စားပြုနိုင်သည်။ လက်ရှိတွင် QGIS editing tool များကိုအသုံးပြု၍ layer တစ်ခုလျှင် Category တစ်ခုတည်းသာ သတ်မှတ်နိုင်သည်။ နယ်နိမိတ်များမှလွဲ၍ feature အသစ်များကို သီးသန့် Category အသစ်များ အလိုအလျောက် သတ်မှတ်ပေးမည်ဖြစ်သည်။ ပုံမှန်အားဖြင့် နယ်နိမိတ်များသည် ဧရိယာများအဖြစ်သာ ဖွဲ့စည်းဖြစ်ပေါ်၍ မျဉ်းများကို ကိုယ်စားမပြုပါ။ သို့သော် ဥပမာအနေဖြင့် မတူညီသည့် layer တွင် နယ်နိမိတ်တစ်ခုအတွက် attribute များကို နောက်မှ သတ်မှတ်ပေးနိုင်ပါသည်။

Category အသစ်များကို လက်ရှိ တည်းဖြတ်ပြင်ဆင်နေသည့် layer ထဲတွင်သာ အမြဲဖန်တီးခြင်းဖြစ်ပါသည်။

QGIS editing ကို အသုံးပြု၍ ဂျီသြမေတြီကို Category တစ်ခုထက်ပို၍ သတ်မှတ်ရန်မှာမဖြစ်နိုင်ပါ။ မတူညီသော layer များမှ feature တစ်ခုချင်းနှင့် feature အများအပြားအဖြစ် မှန်ကန်စွာကိုယ်စားပြုသည့် data များသည် ဖျက်ပစ် ခံရနိုင်သည်။

Attributes (အချက်အလက်များ)

လက်ရှိတည်းဖြတ်ထားသော layer ၏ Attribute များကိုသာ ပြုပြင်မွမ်းမံခြင်းပြုလုပ်နိုင်မည်ဖြစ်သည်။ Vector မြေပုံတွင် layer များစွာပါ၀င်ပါက လက်ရှိ တည်းဖြတ်ထားသည့် layer မှလွဲ၍ အခြား layer များမှ feature များ၏ attribute များအားလုံး ကို ‘<not editable (layer #)>’ ဟုဖော်ပြကာ လော‌လောဆယ် ထို attribute များကို ပြင်ခွင့်မရှိကြောင်း သတိပေးမည်ဖြစ်သည်။ ထိုသို့ ကန့်သတ်ထားရခြင်းမှာ QGIS သည် layer တစ်ခုလျှင် ပုံသေသတ်မှတ်ထားသော set of fields (field များအစု) တစ်ခုကိုသာ ပံ့ပိုးပေးပြီး အခြား layer များတွင် မတူသော set of fields များစွာရှိနိုင်၍ဖြစ်သည်။

အကယ်၍ အခြေခံ ဂျီသြမေတြီတွင် category သတ်မှတ်ထားခြင်း မရှိပါက စနစ်သည် သီးခြား category အသစ်ကို အလိုအလျောက် သတ်မှတ်ပေးသည်။ ထို့အပြင် ထိုဂျီသြမေတြီ၏ attribute တစ်ခု ပြောင်းလဲသောအခါ မှတ်တမ်းအသစ်တစ်ခုကို attribute ဇယားတွင် ဖန်တီးမည်ဖြစ်သည်။

Tip

‘Field Calculator’ (Field Calculator ကို အသုံးပြုခြင်း (Using the Field Calculator)) ကို အသုံးပြု၍ ဇယားထဲတွင် attribute များအားအစုလိုက် update လုပ်နိုင်ပါသည်။ Update မလုပ်လိုသော category မပါသည့် feature များ (နယ်နိမိတ်များကဲ့သို့) ရှိပါက update လုပ်ငန်းစဉ်အတွင်း ၎င်းတို့ကို စစ်ထုတ်ရန်အတွက် ‘Advanced Filter’ ကို cat is not null သို့ချိန်ညှိခြင်းဖြင့် အသုံးပြုနိုင်ပါသည်။

Editing style (သင်္ကေတများ၏ပုံစံကိုတည်းဖြတ်ပြင်ဆင်ခြင်း)

Topological symbology သည် topological data ကိုထိရောက်စွာတည်းဖြတ်ရန်အတွက်အရေးကြီးပါသည်။ တည်းဖြတ်မှုစတင်သည့်အခါ အထူး ‘GRASS Edit’ renderer (ပုံဖော်ပြသပေးသည့်အရာ) ကို layer ပေါ်တွင် အလိုအလျောက်အသုံးပြုမည်ဖြစ်ပြီး တည်းဖြတ်ခြင်းကိုရပ်လိုက်သောအခါ မူရင်း renderer ကို ပြန်လည်ရရှိမည်ဖြစ်သည်။ Topological symbology ၏ သင်္ကေတပုံစံ ကို layer properties ‘Style’ tab တွင် စိတ်ကြိုက်ပြင်ဆင်နိုင်ပါသည်။ စိတ်ကြိုက်ပြင်ဆင်ထားသည့် သင်္ကေတပုံစံ ကို ပရောဂျက်ဖိုင်ထဲတွင် သို့မဟုတ် သီးခြားဖိုင်တစ်ခုထဲတွင် သိမ်းဆည်းနိုင်ပါသည်။ သင်္ကေတပုံစံအား စိတ်ကြိုက်ပြင်ဆင်ပြီးလျှင် ၎င်း၏ အမည်ကို မပြောင်းပါနှင့်။ အဘယ့်ကြောင့်ဆိုသော် တည်းဖြတ်ခြင်းကို ပြန်လည်စတင်သောအခါတွင် သင်္ကေတပုံစံကို ပြန်လည်သတ်မှတ်ရန် ၎င်းအမည်ကို အသုံးပြုရခြင်းကြောင့်ဖြစ်ပါသည်။

Tip

Layer အားတည်းဖြတ်ပြင်ဆင်နေချိန်တွင် project file အားသိမ်းဆည်းခြင်းမပြုရပါ။ Layer အားမပြင်ဆင်ရသေးဘဲ ‘Edit Style’ ဖြင့် layer ကို သိမ်းဆည်းလိုက်မည်ဖြစ်ပြီး ၎င်းသည်အဓိပ္ပာယ်ရှိမည်မဟုတ်ပါ။

Style သည် attribute ဇယားထဲတွင် ‘topo_symbol’ field အဖြစ် ယာယီထည့်သွင်းထားသည့် topological အချက်အလက်များအပေါ် အခြေခံပါသည်။ တည်းဖြတ်ခြင်းကိုရပ်လိုက်သည့်အခါ ထို field သည် အလိုအလျောက် ဖယ်ရှားပြီးသားဖြစ်သွားမည်။

Tip

‘topo_symbol’ field ကို attribute ဇယားမှ မဖယ်ရှားရပါ။ Renderer (ပုံဖော်ပြသပေးသည့်အရာ) သည် ဤ column ပေါ်တွင်မူတည်သည်ဖြစ်၍ ထိုသို့ဖယ်ရှားလိုက်ခြင်းဖြင့် feature များကို မြင်ရနိုင်မည်မဟုတ်ပါ။

Snapping (ဆွဲကပ်ခြင်း)

ဧရိယာတစ်ခု ပေါ်ပေါက်စေရန် ချိတ်ဆက်ထားသော နယ်နိမိတ်မျဉ်းများ၏ vertex (အဆစ်) များတွင် ကိုသြဒိနိတ်များ အတိအကျ ရှိရမည်ဖြစ်ပါသည်။ Canvas (မြေပုံမြင်ကွင်း) နှင့် vector map တို့ CRS တူမှသာ snapping tool သုံးပြီး ထိုသို့ တိကျမှု ရအောင် လုပ်ဆောင်နိင်သည်။ ထိုသို့မဟုတ်ပါက မြေပုံနှင့် canvas ကြား အပြန်အလှန် ကိုဩဒိနိတ်ပြောင်း သည့်အခါ ကိုယ်စားပြုရာတွင် မတိကျမှု နှင့် CRS ပြောင်းနည်းများကြောင့် ကိုသြဒိနိတ်များ အနည်းငယ်ကွဲပြားမှု ရှိနိုင်ပါသည်။

Tip

တည်းဖြတ်ပြင်ဆင်နေချိန်တွင် layer ၏ CRS ကို canvas အတွက်လည်း အသုံးပြုသင့်ပါသည်။

Limitations (ကန့်သတ်ချက်များ)

Vector တစ်ခုထဲရှိ များစွာသော layer များကို တစ်ချိန်တည်းတွင် တစ်ပြိုင်နက် တည်းဖြတ်ခြင်းအား ထောက်ပံ့ပေးမထားပါ။ အဓိကအကြောင်းအရင်းမှာ ဒေတာအရင်းအမြစ်တစ်ခုချင်းစီအတွက်များစွာသော undo stack (လုပ်ဆောင်ချက်များကိုပယ်ဖျက်ခြင်း) များကို လုပ်ဆောင်ရန်မှာ မဖြစ်နိုင်သောကြောင့်ဖြစ်သည်။

nix osx Linux နှင့် macOS ပေါ်တွင် တစ်ကြိမ်လျှင် GRASS layer တစ်ခုတည်းကိုသာတည်းဖြတ်နိုင်သည်။ GRASS တွင် ချွတ်ယွင်းချက်တစ်ခုအနေဖြင့် database driver များအား ကျပန်းအစီအစဉ်ဖြင့် ပိတ်ရန်မဖြစ်နိုင်ပါ။ ထိုပြဿနာအားဖြေရှင်းရန် GRASS developer များမှဆောင်ရွက်လျက်ရှိပါသည်။

Tip

GRASS Edit Permissions (GRASS တည်းဖြတ်ပြင်ဆင်နိုင်ရေးခွင့်ပြုချက်များ)

GRASS MAPSET တစ်ခုကို တည်းဖြတ်ရန်အတွက် ထို MAPSET ၏ ပိုင်ရှင်ဖြစ်ရန်လိုအပ်ပါသည်။ Write permission (ရေးသားခွင့်) ရှိသည့်တိုင် မိမိပိုင်မဟုတ်သည့် MAPSET ထဲရှိ layer များအားတည်းဖြတ်ရန်မဖြစ်နိုင်ပါ။

27.13. The GRASS region tool

GRASS ရှိ region အဓိပ္ပါယ်ဖွင့်ဆိုချက်သည် raster data များကို ကိုင်တွယ်အလုပ်လုပ်ခြင်းအတွက် အရေးကြီးပါသည်။ Vector ခွဲခြမ်းစိတ်ဖြာမှုကို ပုံမှန်အားဖြင့် region အဓိပ္ပါယ်ဖွင့်ဆိုချက်များဖြင့် ကန့်သတ်မထားပါ။ သို့သော် အသစ်ဖန်တီးထားသော raster layer များအားလုံးသည် မူလ မြေပြင်အကျယ်အဝန်း (Spatial extension) နှင့် ကြည်လင်ပြတ်သားမှု (Resolution) ကို ထည့်သွင်းမစဉ်းစားပဲ လက်ရှိသတ်မှတ်ထားသော GRASS region ၏ မြေပြင်အကျယ်အဝန်းနှင့် ကြည်လင်ပြတ်သားမှုအတိုင်း ရှိနေမည်ဖြစ်သည်။ လက်ရှိ GRASS region ကို ဖိုင်လမ်းကြောင်း $LOCATION/$MAPSET/WIND တွင် သိမ်းဆည်းထားပြီး ဤဖိုင်တွင် မြောက်၊ တောင်၊ အရှေ့နှင့် အနောက် နယ်နိမိတ်များ၊ column များနှင့် row များအရေအတွက်၊ အလျားလိုက်နှင့် ဒေါင်လိုက် ကြည်လင်ပြတ်သားမှုတို့ကဲ့သို့သော အချက်များ ပါဝင်ပါသည်။

GRASS region ကို QGIS canvas တွင် grassRegion Display current GRASS region ခလုတ်ကို အသုံးပြု၍ အဖွင့်အပိတ်လုပ်နိုင်ပါသည်။

‘GRASS Tolls’ dock widget ရှိ ‘Region’ tab ကို အသုံးပြု၍ GRASS region အားပြင်ဆင်နိုင်ပါသည်။ အနားသတ် အကျယ်အဝန်းအသစ်နှင့် ကြည်လင်ပြတ်သားမှုကို ထည့်သွင်း၍ Apply အား click နှိပ်ပါ။ Select the extent by dragging on canvas ပေါ်တွင် click နှိပ်၍ QGIS canvas ပေါ်တွင် ထောင့်မှန်စတုဂံတစ်ခုကို ဖိဆွဲယူ၍ region အသစ်တစ်ခုကို သတ်မှတ်နိုင်မည်ဖြစ်သည်။

GRASS module g.region သည် raster ခွဲခြမ်းစိတ်ဖြာမှုအတွက် သင့်လျော်သော region အကျယ်အဝန်းနှင့် ကြည်လင်ပြတ်သားမှုကို သတ်မှတ်ရန် နောက်ထပ် parameter များကို ပံ့ပိုးပေးပါသည်။ ဤ parameter များကို GRASS Toolbox ဖြင့် အသုံးပြုနိုင်ပြီး အသေးစိတ်အား The GRASS Toolbox တွင်သွားရောက်ကြည့်ရှုနိုင်ပါသည်။

27.14. The GRASS Toolbox

grassTools Open GRASS Tools box သည် GRASS module များအား ရွေးချယ်ထားသော GRASS LOCATION နှင့် MAPSET ထဲရှိ data များနှင့် အလုပ်လုပ်နိုင်စွမ်းများရရှိစေမည်ဖြစ်ပါသည်။ GRASS Toolbox ကိုအသုံးပြုရန် ပြင်ဆင်တည်းဖြတ်ခွင့်ရှိသည့် LOCATION နှင့် MAPSET ကိုဖွင့်ရန်လိုအပ်ပါမည် (ပုံမှန်အားဖြင့် MAPSET ကိုဖန်တီးခဲ့လျှင်ပြင်ဆင်တည်းဖြတ်ခွင့်ရရှိပြီးဖြစ်ပါမည်)။ အဘယ့်ကြောင့်ဆိုသော် ခွဲခြမ်းစိတ်ဖြာမှုအတွင်း အသစ်ဖန်တီးလိုက်သည့် raster သို့မဟုတ် vector layer အသစ်များကို လက်ရှိရွေးချယ်ထားသော LOCATION နှင့် MAPSET ထဲတွင် ပြင်ဆင်မှတ်တမ်းတင်ရန် လိုအပ်သောကြောင့်ဖြစ်ပါသည်။

../../../_images/grass_toolbox_moduletree.png

Fig. 27.3 GRASS Toolbox နှင့် Module Tree

27.14.1. GRASS module များနှင့်အလုပ်လုပ်ခြင်း (Working with GRASS modules)

GRASS Toolbox အတွင်းရှိ GRASS shell သည် အသုံးပြုသူများအား command line interface မှတဆင့် GRASS module အားလုံးနီးပါး (module 300 ကျော်) ကိုအသုံးပြုခွင့်ပေးမည်ဖြစ်ပါသည်။ သို့သော်လည်း ပိုမိုအသုံးပြုရလွယ်ကူ​စေရန် GRASS module 200 ခန့် နှင့် လုပ်ဆောင်နိုင်စွမ်းများကို GRASS plugin Toolbox အတွင်းမှ graphic dialog များမှတဆင့်လည်း ရယူနိုင်သည်။

QGIS 3.28 version ရှိ graphical Toolbox တွင် ရယူအသုံးပြုနိုင်သမျှ GRASS module များ၏စာရင်းအပြည့်အစုံကို GRASS wiki https://grasswiki.osgeo.org/wiki/GRASS-QGIS_relevant_module_list တွင်ကြည့်ရှုနိုင်ပါသည်။

GRASS Toolbox တွင်ပါဝင်သော အကြောင်းအရာများအားစိတ်ကြိုက်ပြင်ဆင်နိုင်ပြီး ပြုလုပ်နည်း လုပ်ငန်းစဉ်အဆင့်ဆင့်အား GRASS Toolbox အား ပြင်ဆင်ခြင်း (Customizing the GRASS Toolbox) အပိုင်းတွင်ဖော်ပြထားပါသည်။

Fig. 27.3 တွင်ပြသထားသည့်အတိုင်း သင့်တော်သော module ကိုရှာရန် Modules Tree သို့မဟုတ် ရှာဖွေနိုင်သော Modules List tab ကို အသုံးပြုနိုင်ပါသည်။

Graphic module သင်္ကေတတစ်ခု အပေါ်တွင် click နှိပ်ခြင်းဖြင့် Toolbox dialog တွင် OptionsOutput နှင့် Manual ဟူသော tab အခွဲသုံးခုပါဝင်သည့် tab အသစ်တစ်ခုကို ပေါင်းထည့်သွားမည်ဖြစ်သည်။

Options (ရွေးချယ်စရာများ)

Options tab တွင် အသုံးပြုရလွယ်ကူပြီး ရိုးရှင်းသော dialog ကိုပံ့ပိုးပေးထားပြီး ၎င်းတွင် raster သို့မဟုတ် vector layer တစ်ခုကို QGIS canvas တွင်ပုံဖော်ကြည့်ရှုရန် ရွေးချယ်နိုင်ပြီး module နှင့် သက်ဆိုင်သည့် parameter များကို ထပ်မံထည့်သွင်းခြင်း ပြုလုပ်နိုင်မည်ဖြစ်ပါသည်။

../../../_images/grass_module_option.png

Fig. 27.4 GRASS Toolbox Module ရွေးချယ်စရာများ

Dialog အား ရိုးရှင်းစေရန် ရည်ရွယ်၍ module parameter များအား အပြည့်အစုံထည့်သွင်းမထားပါ။ နောက်ထပ် module parameter သို့မဟုတ် flag များကို အသုံးပြုလိုပါက GRASS shell ကိုစတင်ရန်လိုအပ်ပြီး command line တွင် module ကို run ရန် လိုအပ်မည်ဖြစ်သည်။

QGIS version 1.8 မှစ၍ Options tab ထဲရှိ ရိုးရှင်းသော module dialog အောက်တွင် ထည့်သွင်းထားသော Show Advanced Options ခလုတ်အတွက် feature တစ်ခုပါဝင်လာသည်။ ဤခလုတ်သည် လက်ရှိတွင် ဥပမာအနေဖြင့် အသုံးပြုရန် v.in.ascii module တွင်သာ ထည့်သွင်းထားပါသည်။ သို့သော် QGIS ၏ အနာဂတ် version များတွင် GRASS Toolbox တွင် ပိုများသော module များ သို့မဟုတ် module အားလုံး၏ အစိတ်အပိုင်းတစ်ခုဖြစ်လာနိုင်ချေရှိပါသည်။ ၎င်းသည် GRASS shell သို့ပြောင်းစရာမလိုဘဲ GRASS module ရွေးချယ်စရာများအား အပြည့်အစုံ ရယူအသုံးပြုနိုင်မည်ဖြစ်ပါသည်။

Output (ရလာဒ်)

../../../_images/grass_module_output.png

Fig. 27.5 GRASS Toolbox Module ရလာဒ်

Output tab သည် module ၏ ရလာဒ်အခြေအနေ နှင့်ပတ်သက်သော အချက်အလက်များကို ဖော်ပြသည့်နေရာဖြစ်သည်။ Run ခလုတ်ကိုနှိပ်လိုက်သည့်အခါ module သည် Output tab သို့ပြောင်းသွားမည်ဖြစ်ပြီး ထို tab တွင် လက်ရှိလုပ်ဆောင်နေသော ခွဲခြမ်းစိတ်ဖြာမှုလုပ်ငန်းစဉ်နှင့် သက်ဆိုင်သည့် အချက်အလက်များကို ကြည့်ရှုနိုင်မည်ဖြစ်သည်။ လုပ်ငန်းစဉ် အောင်မြင်ခဲ့ပါက Successfully finished ဟူသည့် အသိပေးစာတိုကို တွေ့ရလိမ့်မည်ဖြစ်ပါသည်။

Manual

../../../_images/grass_module_manual.png

Fig. 27.6 GRASS Toolbox Module အသုံးပြုသူလက်စွဲ

Manual tab သည် GRASS module ၏ HTML အကူအညီစာမျက်နှာကို ပြသပေးမည်ဖြစ်သည်။ အကူအညီစာမျက်နှာအားအသုံးပြု၍ အခြား module parameter များနှင့် flag များကိုစစ်ဆေးကြည့်ရှုနိုင်သကဲ့သို့ module ၏ ရည်ရွယ်ချက်များနှင့်ပတ်သက်သည့်အကြောင်းအရာများအား ပိုမိုလေးနက်စွာနားလည်လာစေရန်လေ့လာနိုင်မည်ဖြစ်သည်။

Module လက်စွဲစာမျက်နှာတစ်ခုစီ၏အဆုံးတွင် Main Help indexThematic index နှင့် Full index တို့ဆီသို့ ချိတ်ဆက်ထားသည့် နောက်ထပ် link များကို တွေ့ရှိမည်ဖြစ်သည်။ ဤ link များသည် g.manual module ကဲ့သို့ပင် တူညီသောအချက်အလက်များပေးမည်ဖြစ်ပါသည်။

Tip

ရလာဒ်များအားချက်ချင်းပြသစေခြင်း

တွက်ချက်မှုရလာဒ်များကို canvas (မြေပုံမြင်ကွင်း) ထဲတွင်ချက်ချင်း ပြသလိုသည့်အခါ module tab ၏အောက်ခြေရှိ ‘View Output’ ခလုတ်အားအသုံးပြုနိုင်ပါသည်။

27.14.2. GRASS module ဥပမာများ

အောက်ဖော်ပြပါ ဥပမာများသည် အချို့သော GRASS module များ၏ လုပ်ဆောင်နိုင်သောစွမ်းအားကိုသရုပ်ပြပါလိမ့်မည်။

27.14.2.1. ကွန်တိုများဖန်တီးခြင်း (Creating contour lines)

ပထမဥပမာအနေဖြင့် elevation raster (DEM) တစ်ခုမှနေ၍ vector ကွန်တိုမြေပုံတစ်ခုကိုဖန်တီးခြင်းဖြစ်ပါသည်။ ဤနေရာတွင် GRASS LOCATION တစ်ခုထဲသို့ Data များ ထည့်သွင်းခြင်း (Importing data into a GRASS LOCATION) အပိုင်းတွင်ရှင်းလင်းပြသခဲ့သည့် Alaska LOCATION အား သတ်မှတ်ပြီးဖြစ်သည်ဟုယူဆပါမည်။

  • ပထမဦးစွာ grassOpenMapset Open mapset ခလုတ်အား click နှိပ်ပြီး Alaska တည်နေရာကို ရွေးချယ်၍ဖွင့်ပါ။

  • ယခုအခါ grassTools Open GRASS tools ခလုတ်ဖြင့် Toolbox အားဖွင့်ပါ။

  • Tool အမျိုးအစားစာရင်းထဲတွင် Raster ► Surface Management ► Generate vector contour lines ကို click နှစ်ချက်နှိပ်ပါ။

  • ယခုအခါတွင် အပေါ်တွင်ရှင်းပြခဲ့သည့်အတိုင်း r.contour tool ပေါ်တွင် click တစ်ချက်နှိပ်လျှင် tool dialog သည် ပ္ငင့်လာပါလိမ့်မည်။ ( GRASS module များနှင့်အလုပ်လုပ်ခြင်း (Working with GRASS modules) တွင်ကြည့်ပါ)

  • Name of input raster map ထဲတွင် gtopo30 ဟုရိုက်ထည့်ပါ။

  • Increment between Contour levels selectNumber တွင် တန်ဖိုး 100 အားရိုက်ထည့်ပါ။ (ဤသို့ပြုလုပ်ခြင်းဖြင့် ကွန်တိုမျဉ်းများအား အကွာအဝေး ၁၀၀ မီတာစီခြား၍ ဖန်တီးပေးမည်ဖြစ်သည်။)

  • Name for output vector map တွင် ctour_100 ဟုအမည်ရိုက်ထည့်ပါ။

  • လုပ်ငန်းစဉ်အားစတင်ရန်အတွက် Run အား Click နှိပ်ပါ။ Output window တွင် Successfully finished ဆိုသည့် သတိပေးစာတိုပေါ်လာသည်အထိ စောင့်ဆိုင်းပါ။ ထို့နောက် View Output နှင့် Close အား click နှိပ်ပါ။

Region သည်ကြီးမားသောကြောင့် vector ကွန်တိုမျဉ်းများကို ပြသရန်မှာ အချိန်ခေတ္တ ကြာပါလိမ့်မည်။ ပုံဖော်ပြသခြင်းပြီးသည့်နောက်တွင် ကွန်တိုများသည် elevation raster layer ပေါ်တွင် ရှင်းလင်းစွာပေါ်လာစေရန်အတွက် layer properties window အားဖွင့်၍ မျဉ်းအရောင်ပြောင်းလဲခြင်းကိုပြုလုပ်နိုင်ပါသည်။ ၎င်းနှင့်ပတ်သက်၍ အသေးစိတ်ကို Vector ၏ ဂုဏ်သတ္တိများပြ dialog (The Vector Properties Dialog) တွင်ဖော်ပြထားပါသည်။

နောက်တစ်ဆင့်အနေနှင့် Alaska ၏အလယ်ဗဟိုရှိ တောင်ထူထပ်သောဧရိယာတစ်ခုသို့ zoom ချဲ့ကြည့်ပါ။ အနီးကပ် ချဲ့ကြည့်လျှင်ကွန်တိုများတွင် သိသာထင်ရှားသည့်ထောင့်စွန်းများရှိသည်ကိုသတိပြုမိပါလိမ့်မည်။ GRASS တွင် vector မြေပုံများကို ယေဘုယျပုံသဏ္ဍာန်မပျက်စေဘဲ အနည်းငယ်ပြုပြင်ပြောင်းလဲခြင်းပြုလုပ်နိုင်သည့် v.generalize tool အား ပံ့ပိုးပေးထားပါသည်။ Tool သည် ရည်ရွယ်ချက်အမျိုးမျိုးအတွက် များစွာသော algorithm များကို အသုံးပြုထားသည်။ အချို့ algorithm များ (ဥပမာ- Douglas Peuker နှင့် Vertex Reduction နည်း) သည် လိုင်းအဆစ် (vertex) အချို့ကို ရှင်းလင်းခြင်းဖြင့် လိုင်းကို ရိုးရှင်းအောင် ပြုလုပ်ပေးပါသည်။ ရရှိလာသော vector ဖိုင်သည် ပေါ့ပါးလျင်မြန်စွာ ပွင့်လာမည်ဖြစ်သည်။ ဤလုပ်ငန်းစဉ်သည် အလွန်အသေးစိတ်ကျသော vector တစ်ခုဖြင့် စကေးအလွန်သေးသော မြေပုံတစ်ခုကိုရေးဆွဲနေပြီး ထိုအသေးစိတ်အရာများမလိုအပ်သည့်အချိန်တွင် အသုံးဝင်ပါသည်။

Tip

The simplify tool

QGIS တွင် GRASS မှ v.generalize Douglas-Peuker algorithm ၏လုပ်ဆောင်ချက်နှင့်ဆင်တူသော tool ဖြစ်သည့် Vector ► Geometry Tools ► Simplify geometries tool ရှိသည်ကို မှတ်သားထားပါ။

သို့သော်လည်း ယခုဥပမာ၏ရည်ရွယ်ချက်သည် ကွဲပြားခြားနားပါသည်။ r.contour ဖြင့် ဖန်တီးခဲ့သည့် ကွန်တိုမျဉ်းများတွင် ချောမွေ့သင့်သော ထောင့်ချွန်များ ပါရှိနေပါသည်။ ထိုထောင့်ချွန်များကို ချောမွေ့စေရန် v.generalize algorithm များထဲမှ Chaiken’s algorithm အားအသုံးပြုနိုင်ပါသည်။ (Hermite splinesကိုလဲ အသုံးပြုနိုင်ပါသည်။) သို့သော်လည်း ဤကဲ့သို့ algorithm များအသုံးပြုခြင်းသည် vector တွင် အပို မျဉ်းဆစ် (vertex) များ ပေါင်းထည့် နိုင်၍ vector သည် ပိုမိုလေးလံသွားနိုင်ကြောင်း သတိပြုရပါမည်။

  • GRASS Toolbox ကိုဖွင့်၍ Vector ► Develop map ► Generalization ပေါ်တွင် double-click နှိပ်ပါ။ ထို့နောက် v.generalize module အား click နှိပ်၍ ၎င်း၏ options window အားဖွင့်ပါ။

  • Name of input vector တွင် ‘ctour_100’ အမည်ဖြင့်ပေါ်လာခြင်းရှိမရှိစစ်ဆေးပါ။

  • Algorithm စာရင်းများမှ Chaiken’s algorithm အားရွေးချယ်ပါ။ အခြားရွေးချယ်စရာများအား မပြင်ဆင်ဘဲ မူရင်းအတိုင်းသာ ထားရှိ၍ Name for output vector map ဟူသော field တွင် ‘ctour_100_smooth’ အမည်ကို ထည့်ရန် နောက်ဆုံး row အထိသွားပါ။ထို့နောက် Run ကို click နှိပ်ပါ။

  • လုပ်ငန်းစဉ်သည် အချိန်အတော်အသင့် ကြာမြင့်မည်ဖြစ်ပါသည်။ Output windows တွင် Successfully finished ဆိုသည့်စာသားပေါ်ပေါက်လာသည်နှင့်တစ်ပြိုင်နက် View Output အား click နှိပ်ပါ။ ထို့နောက် Close အားနှိပ်ပါ။

  • Vector ၏အရောင်ကိုပြောင်းခြင်းဖြင့် raster နောက်ခံတွင် ရှင်းရှင်းလင်းလင်းမြင်နိုင်မည်ဖြစ်၍ မူရင်း ကွန်တိုလိုင်းများနှင့် အမြင်ပိုင်း ခြားနားမှုရရှိစေမည်ဖြစ်သည်။ ကွန်တိုမျဉ်းအသစ်များ (‘ctour_100_smooth’) သည် မူလပုံသဏ္ဍာန်အတိုင်းအလုံးစုံမပြောင်းလဲဘဲတည်ရှိနေပြီး မူလကွန်တိုမျဉ်းများထက် ပိုမိုချောမွေ့သည့် ထောင့်များရှိနေသည်ကို သတိထားမိပါလိမ့်မည်။

../../../_images/grass_toolbox_vgeneralize.png

Fig. 27.7 Vector မြေပုံတစ်ခုအားချောမွေ့စေရန် အသုံးပြုသည့် v.generalize GRASS module

Tip

r.contour ၏အခြားအသုံးပြုမှုများ

အထက်တွင်ဖော်ပြခဲ့သည့် လုပ်ငန်းစဉ်အား အခြား တူညီသောအခြေအနေများတွင်အသုံးပြုနိုင်ပါသည်။ ဥပမာအားဖြင့် မိုးရွာသွန်းမှုဒေတာ၏ raster မြေပုံတစ်ခုရှိနေလျှင် အထက်ပါနည်းအားသုံး၍ isohyetal (အဆက်မပြတ်မိုးရွာသွန်းမှု) မျဉ်းကြောင်းများ၏ vector မြေပုံကိုဖန်တီးနိုင်ပါလိမ့်မည်။

27.14.2.2. ရုပ်ကြွတောင်အရိပ်အထူးပြုလုပ်ချက်တစ်ခုအားဖန်တီးခြင်း (Creating a Hillshade 3-D effect)

Elevation (မြေပြင်အမြင့်) layer များအား ပြသရန်နှင့် မြေပုံတွင် 3-D effect တစ်ခုရရှိရန် များစွာသော နည်းလမ်းများကို အသုံးပြုကြပါသည်။ ဖော်ပြခဲ့ပြီးသည့်အတိုင်း ကွန်တိုမျဉ်းများအသုံးပြုခြင်းသည် မြေမျက်နှာသွင်ပြင်မြေပုံများထုတ်လုပ်ရန် တွင်ကျယ်စွာအသုံးပြုသည့်နည်းလမ်းတစ်ခုဖြစ်ပါသည်။ 3-D effect ဖြင့်ပြသရန် အခြားနည်းလမ်းတစ်ခုမှာ hillshading(မြေမျက်နှာသွင်ပြင်ကို အလင်းရင်းမြစ်နှင့် အမြင့်မျက်နှာပြင်၏ လျှောစောက်နှင့်ရှုထောင့်မှ တွက်ချက်ပြီး ပုံဖော်ခြင်း) ဖြစ်ပါသည်။ Hillshade effect ကို Digital Elevation Model (DEM) မှ ဖန်တီးရပါသည်။ လုပ်ငန်းစဉ်တွင် ဦးစွာ ဆဲလ်တစ်ခုစီ၏ လျှောစောက်နှင့် ရှုထောင့်ကို တွက်ချက်၍ ကောင်းကင်၌ နေ၏အနေအထားကို ပုံဖော်ပြီး ဆဲလ်တစ်ခုစီသို့ အလင်းပြန်မှုတန်ဖိုးကို သတ်မှတ်ပေးမည်ဖြစ်သည်။ ထို့ကြောင့် နေကိုမျက်နှာမူသော လျှောစောက်များတွင် လင်းနေသည်ကိုတွေ့ရပြီး နေနှင့် ဝေးရာသို့ မျက်နှာမူသောလျှောစောက်များတွင် မှောင်နေသည် (အရိပ်ကျနေသည်) ကိုတွေ့ရမည်။

  • ယခု ဥပမာအား စတင်ရန် gtopo30 အမည်ရှိ elevation raster အား ထည့်သွင်းပါ။ GRASS Toolbox အားဖွင့်၍ Raster category အောက်တွင် double-click နှိပ်၍ Spatial analysis ► Terrain analysis သို့ သွားပါ။

  • ထို့နောက် r.shaded.relief အား click နှိပ်၍ module အားဖွင့်ပါ။

  • azimuth angle selectNumber တန်ဖိုးအား 270 မှ 315 သို့ပြောင်းလဲပါ။

  • Hillshade raster အသစ်အတွက် gtopo30_shade အမည်အားရိုက်ထည့်၍ Run အား click နှိပ်ပါ။

  • လုပ်ငန်းစဉ်ပြီးဆုံးပါက အသစ်ဖန်တီးထားသော hillshade raster ကို မြေပုံတွင် ထည့်သွင်းပါ။ ၎င်းအား grayscale (အဖြူရောင်နှင့်အနက်ရောင်ကြားတလျှောက် အရောင်စဉ်) ဖြင့်ပြနေသည်ကိုတွေ့ရမည်။

  • Hillshade raster နှင့် gtopo30 အရောင်များကို အတူတကွ ကြည့်ရှုရန် Table of contents တွင် hillshade မြေပုံအား မူလ elevation မြေပုံ (gtopo30) အောက်သို့ ရွှေ့ပါ။ ထို့နောက် gtopo30Properties window ကိုဖွင့်ပါ။ ပြီးလျှင် Transparency tab ဘက်သို့ပြောင်းကာ ၎င်း၏အလင်းဖောက်နှုန်းအဆင့်ကို 25% ခန့် သတ်မှတ်ပါ။

ယခုအခါ အရောင်များဖြင့် gtopo30 elevation အား အလင်းဖောက်နှုန်း setting နှင့်အတူ grayscale hillshade map ၏ အပေါ် တွင်ပြသပြီးဖြစ်နေပါမည်။ Hillshading ၏ effects များကိုမြင်သာစေရန်အတွက် gtopo30_shade မြေပုံအား အဖွင့်အပိတ်ပြုလုပ်ကြည့်ပါ။

Using the GRASS shell (GRASS shell အားအသုံးပြုခြင်း)

QGIS ရှိ GRASS plugin သည် GRASS ကိုစတင်အသုံးပြုသူများနှင့် module များအားလုံး၊ ရွေးချယ်စရာများအားလုံးနှင့် မရင်းနှီးသေးသော အသုံးပြုသူများအတွက် ဒီဇိုင်းပြုလုပ်ထားခြင်းဖြစ်ပါသည်။ သို့ဖြစ်၍ Toolbox ရှိ အချို့သော module များ၏ ရရှိနိုင်သောရွေးချယ်စရာများအားလုံးကို ပြသနိုင်မည်မဟုတ်သကဲ့သို့ အချို့ module များကိုလည်းတွေ့ရှိရမည်မဟုတ်ပါ။ GRASS shell (သို့မဟုတ် console) အားသုံးခြင်းဖြင့် Toolbox tree တွင်မပြသထားသည့် နောက်ထပ် GRASS module များကိုဝင်ရောက်အသုံးပြုနိုင်မည် ဖြစ်သကဲ့သို့ Toolbox အတွင်းရှိ module များအတွက် ရွေးချယ်စရာလုပ်ဆောင်ချက်များအားလည်း အရိုးရှင်းဆုံး ပုံသေသတ်မှတ်ချက်များဖြင့် ရယူအသုံးပြုနိုင်မည်ဖြစ်သည်။ ယခုဥပမာ၌ အထက်တွင်ဖော်ပြထားသည့် r.shaded.relief module တွင် ထပ်ဆောင်းရွေးချယ်မှုတစ်ခု အသုံးပြုခြင်းကို ပြသထားပါသည်။

../../../_images/grass_toolbox_shell.png

Fig. 27.8 GRASS shell ၊ r.shaded.relief module

r.shaded.relief module သည် X-Y ကိုဩဒိနိတ်ယူနစ်များနှင့် ဆက်စပ်သော elevation တန်ဖိုး​​များကို အဆနှင့်တိုးစေသည့် zmult parameter ကိုအသုံးပြု၍ hillshade effect ကို ပို၍ထင်ရှားစေပါသည်။

  • အပေါ်တွင်ပြခဲ့သည့်အတိုင်း gtopo30 elevation raster အား ထည့်သွင်းပါ။ ထို့နောက် GRASS Toolbox အားဖွင့်၍ GRASS shell ပေါ်တွင် click နှိပ်ပါ။ Shell window ထဲတွင် r.shaded.relief map=gtopo30 shade=gtopo30_shade2 azimuth=315 zmult=3 ဟူသည့် ကွန်ပျူတာအမိန့်ပေးချက်အားရိုက်ထည့်ပါ။ ထို့နောက် Enter အားနှိပ်ပါ။

  • လုပ်ငန်းစဉ်ပြီးဆုံးပြီးနောက် Browse tab သို့သွားပြီး raster အသစ်ဖြစ်သည့် gtopo30_shade2 အား QGIS တွင်ပြသရန် ၎င်းအပေါ် click နှစ်ချက်နှိပ်ပါ။

  • အပေါ်ဥပမာတွင်ပြသခဲ့သည့်အတိုင်း table of contents ထဲရှိ gtopo30 raster အောက်သို့ shaded relief raster အားရွှေ့ပါ။ ထို့နောက် အရောင်ထည့်ထားသော gtopo30 layer ၏ အလင်းဖောက်နှုန်းတန်ဖိုးမည်မျှပေးထားသည်ကို စစ်ဆေးပါ။ 3-D effect သည် ပထမ shaded relief map နှင့်နှိုင်းယှဉ်ပါက ပို၍ထင်ရှားစွာ ပေါ်လွင်လာသည် ကိုမြင်တွေ့ရမည်ဖြစ်ပါသည်။

../../../_images/grass_toolbox_shadedrelief.png

Fig. 27.9 r.shaded.relief GRASS module ဖြင့် ဖန်တီးထားသော shaded relief များအားပြသခြင်း

27.14.2.3. Vector မြေပုံတစ်ခုထဲရှိ raster ကိန်းဂဏန်းအချက်အလက်များ (Raster statistics in a vector map)

နောက်ဥပမာတစ်ခုတွင် GRASS module တစ်ခုအားသုံးခြင်းဖြင့် raster data များကို မည်သို့ စုစည်းနိုင်ကြောင်းနှင့် vector မြေပုံတစ်ခုထဲရှိ polygon တစ်ခုစီအတွက် စာရင်းအင်းအချက်အလက် column များ မည်သို့ထည့်သွင်းနိုင်ကြောင်း ပြသထားပါသည်။

  • Alaska data များကိုထပ်မံအသုံးပြုလျက် shapefiles/trees.shp file အား GRASS ထဲသို့ ထည့်သွင်းရန် GRASS LOCATION တစ်ခုထဲသို့ Data များ ထည့်သွင်းခြင်း (Importing data into a GRASS LOCATION) ကို ကိုးကားပါ။

  • ယခုအခါ ကြားအဆင့်တစ်ခုအနေဖြင့် ပြည့်စုံသော GRASS ဧရိယာ vector တစ်ခုဖြစ်စေရန် import လုပ်ထားသော trees မြေပုံထဲသို့ အလယ်ဗဟိုမှတ်များ ထပ်ပေါင်းထည့်ရပါမည်။ (နယ်နိမိတ်များ နှင့် အလယ်ဗဟိုမှတ်များ နှစ်မျိုးလုံး အပါအဝင်)

  • Toolbox မှတစ်ဆင့် Vector ► Manage features အားရွေးချယ်၍ v.centroids ဆိုသည့် module အားဖွင့်ပါ။

  • output vector map တွင် ‘forest_areas’ ဟုအမည်ပေးပြီး ထို module အား run ပါ။

  • ယခုအခါ forest_areas vector အားထည့်သွင်းပြီး သစ်တောအမျိုးအစားများ (ရွက်ကြွေ၊ အမြဲစိမ်း၊ ရောနှော) အား မတူညီသောအရောင်များနှင့် ပြသနိုင်ပြီဖြစ်သည်။ Layer Properties window ၏ Symbology tab တွင် Legend type selectString မှ ‘Unique value’ ကိုရွေးချယ်၍ Classification field နေရာတွင် ‘VEGDESC’ ဟု ထားပါ။ (Symbology tab အတွက် ရှင်းလင်းချက်များကို vector section ၏ သင်္ကေတ ဂုဏ်သတ္တိများ (Symbology Properties) တွင် ကိုးကားပါ)

  • ထို့နောက် GRASS Toolbox ကိုတစ်ဖန်ပြန်ဖွင့်၍ အခြားမြေပုံများမှ Vector ► Vector update အားဖွင့်ပါ။

  • v.rast.stats module ပေါ်တွင် click နှိပ်ပါ။ gtopo30 နှင့် forest_areas ဟုအမည်ပေးပါ။

  • Parameter တစ်ခုထပ်မံသတ်မှတ်ရန်သာလိုအပ်ပါတော့သည်။ column prefix တွင် elev ဟုရိုက်ထည့်၍ Run အား click နှိပ်ပါ။ ဤလုပ်ငန်းစဉ်သည် ကြီးမားသောတွက်ချက်မှုဖြစ်သောကြောင့် အချိန်အတော်ကြာမြင့်နိုင်ပါသည်။ (နှစ်နာရီအထိ ကြာကောင်းကြာနိုင်ပါသည်)

  • နောက်ဆုံးအနေဖြင့် forest_areas attribute ဇယားအားဖွင့်၍ forest polygon တစ်ခုစီအတွက် elev_minelev_maxelev_mean စသည်တို့ပါဝင်သော column အသစ်များစွာကို ထည့်သွင်းထားပြီးဖြစ်ကြောင်း စစ်ဆေးပါ။

27.14.3. GRASS Toolbox အား ပြင်ဆင်ခြင်း (Customizing the GRASS Toolbox)

GRASS module များအားလုံးနီးပါးကို GRASS Toolbox ထဲသို့ ထပ်ပေါင်းထည့်နိုင်ပါသည်။ Toolbox အတွင်းရှိ GRASS module များ၏ အသွင်အပြင်နှင့် parameter များကို ပြင်ဆင်သတ်မှတ်နိုင်သည့် ရိုးရှင်းသော XML file များကို ခွဲခြားဖော်ပြ (parse) ရန် XML interface တစ်ခုကို ပံ့ပိုးပေးထားပါသည်။

အောက်တွင် v.buffer (v.buffer.qgm) ဆိုသည့် module ကိုထုတ်ယူရန်အတွက် နမူနာ XML ဖိုင်တစ်ခု အားဖော်ပြထားပါသည်-

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE qgisgrassmodule SYSTEM "http://mrcc.com/qgisgrassmodule.dtd">

<qgisgrassmodule label="Vector buffer" module="v.buffer">
        <option key="input" typeoption="type" layeroption="layer" />
        <option key="buffer"/>
        <option key="output" />
</qgisgrassmodule>

Module ကိုရွေးချယ်လိုက်သောအခါ parser သည် XML အဓိပ္ပါယ်ဖွင့်ဆိုချက်ကို ဖတ်ပြီး Toolbox အတွင်းတွင် tab အသစ်တစ်ခုကို ဖန်တီးပါသည်။ Module အသစ်များပေါင်းထည့်ခြင်း၊ module အုပ်စုတစ်ခုအား ပြောင်းလဲခြင်း စသည်တို့အတွက် ပိုမိုအသေးစိတ်ကျသည့်ရှင်းလင်းဖော်ပြချက်များကို https://qgis.org/en/site/getinvolved/development/addinggrasstools.html တွင်ကြည့်ရှုနိုင်ပါသည်။