Constructor
new Tracker()
객체 초기 상태를 설정한다.
Methods
handlerClear()
트래커 객체를 삭제한다.
Example
tracker.handlerClear();
select(type, continuity, callback) → {bool}
Example
var tracker = new D2.Core.Tracker(window.map);
tracker.setStyle([0, 0, 255, 1.0], 2, [128, 128, 128, 0.2]);
tracker.select('ellipse', false, function (extent, paramCenter, paramSemiMajor, paraSemiMinor) {
console.log(extent, paramCenter, paramSemiMajor, paraSemiMinor);
var center = ol.proj.transform(paramCenter, 'EPSG:3857', 'EPSG:4326'); //Google Mercator를 경위도로 환산
console.log(center);
var coordinateCenter = paramCenter;
var semiMajor = paramSemiMajor;
var semiMinor = paraSemiMinor;
var coordinates = ellipse(coordinateCenter, semiMajor, semiMinor);
//OL 폴리곤 객체를 생성한다.
//OL 원(Circle)을 사용하지 않고 Polygon으로 생성한 이유는 정확한 반경값 계산을 위해서 이다.
var feature = new ol.Feature(new ol.geom.Polygon([coordinates]));
//원형 객체에 스타일을 설정한다.
var style = new ol.style.Style({
stroke: new ol.style.Stroke({
color: [0, 0, 255, 1.0], //'rgba(0, 0, 255, 0.5)', //배열이나 rgba로 색상처리 모두 가능
width: 2
}),
fill: new ol.style.Fill({
color: [128, 128, 128, 0.3]
}),
zIndex: 500
});
feature.setStyle(style);
feature.setProperties({ properties: { SIDC: 'Circle' }, queryStatus: 0, visible: true });
//객체 도시를 도시하도록 생성된 피쳐를 등록한다.
olSource.addFeature(feature);
//~~~
//트래커 객체 삭제
tracker.handlerClear();
});
Parameters:
Name | Type | Description |
---|---|---|
type |
string | 트래커 종류 설정('rectangle', 'circle', 'ellipse', 'polygon') |
continuity |
bool | 트래커 계속 작동 여부 |
callback |
callback | 트래커 종류별 결과값을 callback으로 반환 |
Returns:
select 성공여부 반환
- Type
- bool
setStyle(lineColor, lineWidth, fillColor)
트래커 스타일을 설정한다.
Example
var tracker = new D2.Core.Tracker(window.map);
tracker.setStyle([0, 0, 255, 1.0], 2, [128, 128, 128, 0.2]);
Parameters:
Name | Type | Description |
---|---|---|
lineColor |
color | 트래커 라인색 설정 |
lineWidth |
number | 트래커 라인 두께 설정 |
fillColor |
color | 트래커 채움색 설정 |