|
| TalMap SDK Libary Reference |
| XLayerCustomList::SetClosed |
| 도형과 라인을 구분하기 위한 기능을 설정 및 해제합니다. |
|
|
|
|
Parameters
| |
| Closed |
| 0: Line, 1: Polygon |
|
|
|
|
Return Value
|
|
Remarks
| |
SetClosed 는 XLayerCustomList 의 Method로 제공됩니다.
사용자는 이 메소드를 호출함으로, 개체의 타입을 설정할 수 있습니다.
이 메소드를 호출함으로 도형을 그릴지 라인을 그릴지 결정할 수 있습니다.
|
|
|
|
Example
| |
|
|
var ctrlman = m_Map.GetCtrlMan();
var ctrlstate = ctrlman.GetControlState();
var layerman = ctrlman.GetLayerMan();
var util = m_Map.GetUtility();
var centerLL = ctrlstate.GetLLCenter(); // 지도의 중심 좌표
// Step 1. Make Layer Style
var style = layerman.FindStyle(200);
if (style == null) {
style = layerman.NewStyle(200);
style.SetPen(util.RGBColor(255, 0, 0), 0.3, util.GetConstToValue("PS_SOLID"));
style.SetBrush(util.RGBAColor(0, 0, 255, 100), util.GetConstToValue("BS_SOLID"));
}
// Step 2. Make Layer Polygon
var layer = layerman.FindLayer(1);
if(layer==null)
layer = layerman.NewLayer(1);
var polygon = layer.NewPolygon(10);
polygon.BeginUpDate();
polygon.AddPoint(centerLL._X + 100, centerLL._Y + 100);
polygon.AddPoint(centerLL._X + 100, centerLL._Y + 500);
polygon.AddPoint(centerLL._X + 500, centerLL._Y + 500);
polygon.AddPoint(centerLL._X + 500, centerLL._Y + 100);
polygon.SetClosed(1); // 0: PolyLine, 1: Polygon
polygon.SetStyle(style);
polygon.EndUpdate();
|
|
|
|
CXLayerMan layerman = ctrlman.GetLayerMan();
CXUtility util = m_Map.GetUtility();
CXControlState ctrlstate = ctrlman.GetControlState();
CXPoint posLL = ctrlstate.GetLLCenter();
// Make Layer Style
CXLayerStyle style = layerman.NewStyle(200);
style.SetPen(util.RGBColor(0, 255, 0), 1, util.GetConstToValue(_T("PS_SOLID")));
style.SetBrush(util.RGBAColor(0, 255, 0, 100), util.GetConstToValue(_T("BS_SOLID")));
style.SetVisibleLevel(1, 0);
style.SetVisibleLevel(2, 0);
CXLayer layer = layerman.FindLayer(200);
if (!layer) {
layer = layerman.NewLayer(200);
}
CXLayerPolygon polygon = layer.NewPolygon(1);
polygon.BeginUpdate();
// 0: PolyLine, 1: Polygone
polygon.SetClosed(1);
polygon.SetStyle(style);
polygon.SetCanClick(0);
polygon.SetCanFocus(0);
polygon.AddPoint(posLL.GetX() + 100 ,posLL.GetY() + 100);
polygon.AddPoint(posLL.GetX() + 100 ,posLL.GetY() + 500);
polygon.AddPoint(posLL.GetX() + 500 ,posLL.GetY() + 500);
polygon.AddPoint(posLL.GetX() + 500 ,posLL.GetY() + 100);
polygon.EndUpdate();
|
|
|
|
See Also
|
|