کتابخانه GMap.Net
نویسنده: علی یگانه مقدم
تاریخ: ۱۳۹۴/۱۲/۲۹ ۲۱:۳۰
آدرس: www.dntips.ir
| مطالب | ۳۶۹۴ |
| نویسندگان | ۲۷۶ |
| گروههای مطالب | ۱۰۲۴ |
| نقشههای راه | ۱۱۹ |
| دورهها | ۱۴ |
| اشتراکها | ۱۷۹۱۴ |
Install-Package GMap.Net
| عنوان | توضیحات |
| Marker | یک نشانه گذار که برای مشخص کردن یک محل بر روی نقشه به کار میرود. این علامت گذار شامل خصوصیتهایی چون نقطهی قرارگیری، آیکن، عنوان و انیمیشنی برای نحوهی نمایش آن میباشد. همچنین شامل یک خصوصیت دیگر از نوع InfoWindow است که به شما امکان نمایش یک پنجرهی توضیحات را نیز بر روی مارکر میدهد. این محتوا میتواند به صورت HTML نمایش یابد. |
| Circle | در صورتیکه بخواهید ناحیهای دایرهای شکل را بر روی نقشه مشخص کنید، کاربرد دارد. با دادن نقطهی مرکزی و شعاع میتوانید دایره را ترسیم کنید. همچنین شامل خصوصیات ظاهری چون رنگ داخل و حاشیهها و میزان شفافیت نیز میباشد. |
| Rectangle | به رسم یک مستطیل میپردازد و تنها لازم است دو مختصات را به آن بدهید و بر اساس این دو نقطه، ناحیهی مستطیلی شکل ترسیم میگردد. در صورتیکه نقاط بیشتری را به آن اضافه کنید، فقط دوتای اولی در نظر گرفته میشوند. این گزینه شامل خصوصیات ظاهری نیز میگردد. |
| Polyline | برای ترسیم مسیرها به صورت چند ضلعی به کار میرود و الزامی به بستن مسیرها نیست. دارای خصوصیات ظاهری نیز میباشد. |
| polygon | کاملا شبیه Ployline است؛ با این تفاوت که یک چند ضلعی بسته است و میتواند داخل آن با رنگ پر باشد. برای بستن این چند ضلعی لازم نیست تا کاری انجام دهید. خود کلاس، نقطهی اول و آخر را به هم وصل میکند. |
خصوصیات آیتمهای بالا، شامل موارد زیر میشود:
| نام خصوصیت | توضیحات |
| Id | در سازندهی هر کدام به طور اجباری قرار گرفته است. این id برای زمانی است که بخواهید با استفاده از جاوااسکرپیت با آن ارتباط برقرار کنید. |
| Editable | با فعال کردن این خاصیت، به کاربر این اجازه را میدهید که بتواند روی Overlay ویرایش انجام دهد. |
| StrokeWeight | ضخامت لبهها را مشخص میکند. |
| StrokeColor | رنگ لبه را مشخص میکند. |
| StrokeOpacity | میزان شفافیت لبه را بین 0 تا 1 مشخص میکند. |
| FillColor | بعضی از المانها مانند چند ضلعیهای بسته و مستطیل که ناحیهی داخلی دارند، شامل این گزینه هستند و رنگ داخل این ناحیه را مشخص میکنند. |
| FillOpacity | میزان شفافیت خصوصیت بالا را از 0 تا 1 مشخص میکند. |
| Points | با استفاده از این خاصیت میتوانید مختصات را با استفاده از کلاس Location به آن اضافه کنید. برای دایره خصوصیت Point وجود دارد. |
| Radius | برای دایره کاربرد دارد. با مقدار نوع Int میتوانید شعاع آن را مقدار دهی کنید. |
public class MiladTower
{
public GoogleMapApi TestMarker()
{
var map=new GoogleMapApi(true);
var location = new Location(35.7448416, 51.3753212);
map.SetLocation(location);
map.SetZoom(17);
map.SetMapType(MapTypes.ROADMAP);
map.SetBackgroundColor(Color.Aqua);
map.ZoomControlVisibilty(true);
map.ZoomOptions = new zoomControlOptions()
{
Position = Position.TOP_LEFT,
ZoomStyle = ZoomStyle.SMALL
};
Marker marker=new Marker("mymarker1");
marker.InfoWindow=new InfoWindow("iw1")
{
Content = "<b>Milad Tower</b><i>in Tehran</i><br/>Milad Tower is the highest tower in iran,many people and tourists visit it each year, but it's so expensive that i cant afford it as iranian citizen<br/>please see more info at <a href=\"https://en.wikipedia.org/wiki/Milad_Tower\"><img width='16px' height='16px' src='https://en.wikipedia.org/favicon.ico'/>wikipedia</a>"
};
marker.MarkerPoint = location;
map.Markers.Add(marker);
var circle=new CircleMarker("mymarker2");
circle.FillColor = Color.Green;
circle.FillOpacity = 0.6f;
circle.StrokeColor = Color.Red;
circle.StrokeOpacity = 0.8f;
circle.Point = location;
circle.Radius = 30;
circle.Editable = true;
circle.StrokeWeight = 3;
map.Circles.Add(circle);
Rectangle rect=new Rectangle("rect1");
rect.FillColor = Color.Black;
rect.FillOpacity = 0.4f;
rect.Points.Add(new Location(35.74728723483808, 51.37550354003906));
rect.Points.Add(new Location(35.74668641224311, 51.376715898513794));
map.Rectangles.Add(rect);
Polyline polyline=new Polyline("poly1");
polyline.Points.Add(new Location(35.74457043569041, 51.373915672302246));
polyline.Points.Add(new Location(35.74470976097927, 51.37359380722046));
polyline.Points.Add(new Location(35.744378863020074, 51.37337923049927));
polyline.StrokeColor = Color.Blue;
polyline.StrokeWeight = 2;
map.Polylines.Add(polyline);
Polygon polygon=new Polygon("poly2");
polygon.Points.Add(new Location(35.746494844665094, 51.374655961990356));
polygon.Points.Add(new Location(35.74635552250061, 51.37283205986023));
polygon.Points.Add(new Location(35.74598109297522, 51.372681856155396));
polygon.Points.Add(new Location(35.7454934611854, 51.37361526489258));
polygon.FillColor = Color.Black;
polygon.FillOpacity = 0.5f;
polygon.StrokeColor = Color.Gray;
polygon.StrokeWeight = 1;
map.Polygons.Add(polygon);
return map;
}
} @section javascript
{
@{
var map = new MiladTower().TestMarker();
@map.ShowMapForMvc("mapdiv")
}
}
<br/><br/>
<div id="mapdiv" style="width:600px;height:600px;"></div>
public ActionResult MiladJs()
{
var output = new MiladTower().TestMarker().GiveJustJs("mapdiv");
Response.ContentType = "text/javascript";
return Content(output);
} @section javascript
{
@{
var map = new MiladTower().TestMarker();
@map.CallJs()
<script type="text/javascript" src="@Url.Action("MiladJs","Home")"></script>
}
}
<br/><br/>
<div id="mapdiv" style="width:600px;height:600px;"></div>