تسجيل الدخول

مشاهدة النسخة كاملة : متى احتاج الجافا سكربت



عبدالله بدير
09-29-2010, 11:09 PM
السلام عليكم

اود الاستفسار عن الجافا سكربت في GIS متى اكون بحاجة لها؟ ...واساسا ما هي؟ ...مع اعطاء مثال بسيط على ذلك ..
مع كل التقدير

نجد جمال
09-30-2010, 12:36 AM
الاخ الكريم يعتمد استخدام Javascript على الية العمل التي تريدها وعلى نوع التطبيق المراد عمله فمثلا يكثر استخدام
Javascript
في ال Web App
مثل استخدام ArcGIS Server (.net,Java)


اما من خلال Windows App

لا يستخدم عادة الJavascript

وال
Javascript
تستخدم عادة في الاشياء التي تستدي عملية حركة مثل موقع الاحداثيات على الخرطة

وتسخدام مع الصفحات Html

وكذلك الامر ل Ajax

يستخدم في تسريع استدعاء البيانات دون عمل Refresh

وهو مهم جدا في ال GIS Web Application


وهذا رابط يبين JavaScript API

http://www.gisclub.net/vb/showthread.php?t=6699

وهذا الموضوع يتطلب دراية كافية بالبرمجة وعلومها
من حيث Class,ADF(Java,.net)وغيرها المزيد..............

م.نجد جمال الحناحنه

محمد حمود
09-30-2010, 07:58 AM
جافا سكريبت هي لغة برمجة من جهة المستخدم (Client Side) أي يتم تنفيذها على جهاز المستخدم وليس السيرفر، وهي تستخدم في تطبيقات الويب أو التطبيقات التي تستخدم متصفح الإنترنت لكي تشتغل.

وفي مجال برامج GIS والخرائط فقد بدأت جوجل بتمكين المبرمجين من عمل برامج باستخدام خدمة Google Maps باستخدام جافا سكريبت، وسمت ذلك Google Maps API وتبعتها شركة إيزري مؤخراً بتقديم شيء مشابه لبرمجة خدماتArcGIS Server فأطلقت ArcGIS Server JavaScript API

عبدالله بدير
09-30-2010, 04:53 PM
اشكرالمهندس نجد والاخ محمد على هذا التوضيح ولكن هل هناك مثال اوضح لاستخدام الجافا سكربت؟
لأني قد فهمت من كلامكم ان الجافا سكربت غالبا تستخدم مع الويب ...وانا هذا ما اريد ...انت قلت تستخدم عادة في الاشياء التي تستدي عملية حركة مثل موقع الاحداثيات على الخرطة ...مثال اخر ..
للتوضيح ...واين يكتب كود الجافا سكربت
؟
مع الشكر

محمد حمود
10-01-2010, 10:35 AM
كود جافا سكريبت يتم كتابته ضمن صفحة HTML وفيما يلي مثال:

قم بنسخ النص التالي والصقه في برنامج المفكرة (NotePad) ثم احفظ الملف باسم jsapi.html على سطح المكتب مثلاً. ثم قم بالضغط المزدوج بالماوس على الملف وانظر النتيجة:


<html>
<head>
<title>مثال عن جافا سكريبت إي بي آي</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256"/>
<link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/1.6/js/dojo/dijit/themes/tundra/tundra.css">
<script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=1.6"></script>
<script type="text/javascript">
dojo.require("esri.map");
var myMap, myTiledMapServiceLayer;
function init() {
var startExtent = new esri.geometry.Extent(30, 10, 50, 50,
new esri.SpatialReference({wkid:4326}) );
myMap = new esri.Map("mapDiv", { extent: startExtent });
myTiledMapServiceLayer = new esri.layers.ArcGISTiledMapServiceLayer
("http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapServer");
myMap.addLayer(myTiledMapServiceLayer);
}
dojo.addOnLoad(init);
</script>
</head>
<body>
<div id="mapDiv" class="tundra" style="width:900px; height:600px; border:1px solid #000;"></div>
</body>
</html>

عبدالله بدير
10-01-2010, 07:52 PM
شكرا لك يا اخ محمد حمود على هذا التوضيح وهذا المثال الرائع...

فقط.....بقي سؤال اخير؟


?I found that there are a lot of ESRI's Examples based on dojo library for javaScript ...is it the best for begginers

نجد جمال
10-01-2010, 10:04 PM
الاخ الكريم هذه المكتبة مهمة جدا ي .net and Java

ولكن كمبتدي لا يمكن التعامل معها لانها كبيرة وتحتوي الثير من الاكواد فيجب البديء بالامثلة الصغيرة والتطور.......


وتستخدم Dojo

في عملية الربط مع قواعد البيانات في عمليات Integration

وتستخدم في ArcGIS Server JavaSecript API

للمزيد اطلع على:

http://blogs.esri.com/Dev/blogs/arcgisserver/archive/2010/06/14/OverviewMap-dijit-included-in-ArcGIS-JavaScript-API-2.0.aspx

المهندس نجد جمال الحناحنه

نجد جمال
10-01-2010, 10:05 PM
هذا مثال على ذلك

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<!--The viewport meta tag is used to improve the presentation and behavior of the samples
on iOS devices-->
<meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no"/>
<title>
Overview Map
</title>
<link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/2.1/js/dojo/dijit/themes/claro/claro.css">
<style>
html, body { height: 100%; width: 100%; margin: 0; padding: 0; }
</style>
<script type="text/javascript">
var djConfig = {
parseOnLoad: true
};
</script>
<script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=2.1">
</script>
<script type="text/javascript">
dojo.require("dijit.layout.BorderContainer");
dojo.require("dijit.layout.ContentPane");
dojo.require("esri.map");
dojo.require("esri.dijit.OverviewMap");
var map;

function init() {
var initExtent = new esri.geometry.Extent({
"xmin": -13635568,
"ymin": 4541606,
"xmax": -13625430,
"ymax": 4547310,
"spatialReference": {
"wkid": 102100
}
});
map = new esri.Map("map", {
extent: initExtent
});
//Add the topographic layer to the map. View the ArcGIS Online site for services http://arcgisonline/home/search.html?t=content&f=typekeywords:service
var basemap = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer");
map.addLayer(basemap);

//resize the map when the browser resizes - view the 'Resizing and repositioning the map' section in
//the following help topic for more details http://help.esri.com/EN/webapi/javascript/arcgis/help/jshelp_start.htm#jshelp/inside_guidelines.htm
var resizeTimer;
dojo.connect(map, 'onLoad', function(theMap) {
dojo.connect(dijit.byId('map'), 'resize', function() { //resize the map if the div is resized
clearTimeout(resizeTimer);
resizeTimer = setTimeout(function() {
map.resize();
map.reposition();
}, 500);
});
//add the overview map
var overviewMapDijit = new esri.dijit.OverviewMap({
map: map,
visible:true
});
overviewMapDijit.startup();
});
}

dojo.addOnLoad(init);
</script>
</head>

<body class="claro">
<div dojotype="dijit.layout.BorderContainer" design="headline" gutters="false"
style="width: 100%; height: 100%; margin: 0;">
<div id="map" dojotype="dijit.layout.ContentPane" region="center" style="overflow:hidden;">
</div>
</div>
</body>

</html>

عبدالله بدير
10-02-2010, 10:01 AM
شكرا جزيلا مهندس نجد على هذا المثال ...وشكرا للجميع