CodeIgniter
CodeIgniter is a powerful PHP framework with a very small footprint, built for PHP coders who need a simple and elegant toolkit to create full-featured web applications
CodeIgniter is a powerful PHP framework with a very small footprint, built for PHP coders who need a simple and elegant toolkit to create full-featured web applications
http://www.nutiteq.com/mgmapslib.html
MGMaps Lib is lightweight Mobile Java mapping library
diyelimki elimizde bir dataframe imiz var,
semboloji için haricen bir view kullanmamız gerekli
view ımızı oracle da hazırlayıp, mxd üzerinden istediğimiz geo table ile view ımızı istediğimiz kolon üzerinden join ettikten sonra
sembolojimizi güzelce oluşturuyoruz.
buraya kadar bir sorun yok.
ancak web.adf ye geçip, bu tablo üzerinde Spatial Query çalıştırdığımızda kucağımıza aldığımız datable ın null olduğunu görüyoruz.
fakat ters görünen birşey de yok
o sırada view ı oluşturan kolon isimlerinin bir veya birkaçının ana tablodaki ile aynı olduğunu görüp
yahu buna kızıyor olmasın diye içimizden geçirirken
denemeye karar veriyoruz. oda ne!!
öngörümüzde haklıyız.
çıkartılacak sonuç
1. view ların kolon isimleri asla bağlanacakları ana tablodaki kolon isimlerinden olmamalı
2. veritabanı işini veritabancı, harita işini haritacı yapsın, kimse kimsenin işine karışmasın
HTML
<input type=”text” name=”txtScale” style=”border:1px solid gray; width:55px;font-family:Tahoma; font-size:11px;” maxlength=”7″>
<a href=”javascript:setScale()”>olceği Ayarla</a><input type=”hidden” name=”scaleRegex” value=”^\d{1,7}$” />
function setScale()
{
var FrmTxs = document.getElementById(“txtScale”);
var FrmTxsVal = FrmTxs.value;
var checkReg = document.getElementById(“scaleRegex”);
var re = new RegExp(checkReg.value);
var m = re.exec(FrmTxsVal);
if (m == null)
{
alert(“Olcek bolumune lutfen sadece rakam giriniz.”);
}
else
{
context = “UpdateScale”;
ChangeClientADF(FrmTxsVal);
}
}
function UpdateScaleDdl(scaleVal)
{
var txs = document.getElementById(“txtScale”);
txs.value = scaleVal;
}
ChangeClientADF bildiğimiz gibi ESRI nin CallBack leri için kullandığı fonksyion. Birçok yerde aynı isimle geçiyor.)
page_load içerisine
MapViewer.ScaleChanged += new MapScaleChangeEventHandler(mMap_ScaleChanged);
//scale değiştiğinde textbox taki değeri güncelleyen method
void mMap_ScaleChanged(object sender, ScaleEventArgs args)
{
ESRI.ArcGIS.ADF.Web.DataSources.IMapFunctionality mf = (ESRI.ArcGIS.ADF.Web.DataSources.IMapFunctionality)MapViewer.GetFunctionality(1);
int mWid = Convert.ToInt32(MapViewer.Width.Value);
int mHeg = Convert.ToInt32(MapViewer.Height.Value);
double Scale = mf.GetScale(MapViewer.Extent, mWid, mHeg);
int iScale = Convert.ToInt32(Scale);
string UpdateDdl = “UpdateScaleDdl(’” + String.Format(“{0:n}”,iScale.ToString()) + “‘);”;
MapViewer.CallbackResults.Add(new CallbackResult(MapViewer, “JavaScript”, UpdateDdl));
}
//scale i textbox a yazan değere çeken method
private string SetScaleValue(string newScaleValue)
{
ESRI.ArcGIS.ADF.Web.DataSources.IMapFunctionality mf = (ESRI.ArcGIS.ADF.Web.DataSources.IMapFunctionality)MapViewer.GetFunctionality(1);
int mWid = Convert.ToInt32(MapViewer.Width.Value);
int mHeg = Convert.ToInt32(MapViewer.Height.Value);
double Scale = mf.GetScale(MapViewer.Extent, mWid, mHeg);
double dNewScaleValue = double.Parse(newScaleValue);
double ZoomFactor = Scale / dNewScaleValue;
MapViewer.Zoom(ZoomFactor);
MapViewer.Refresh();
return MapViewer.CallbackResults.ToString();
}
Powered by WordPress