osman hömek / not defteri

May 16, 2009

CodeIgniter

Filed under: programlama — osman @ 11:49 am

http://codeigniter.com/

 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

MGMaps Lib (java)

Filed under: programlama — osman @ 9:42 am

http://www.nutiteq.com/mgmapslib.html

 MGMaps Lib is lightweight Mobile Java mapping library

May 14, 2009

arcgis 9.2 join - view temaşası

Filed under: arcobjects — osman @ 1:52 pm

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

May 7, 2009

getscale & setscale esri arcgis server 9.2

Filed under: arcobjects — osman @ 10:03 am

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