토폴로지가 완벽하다고 가정하면 표현식을 사용하여 'WKT'필드를 작성하십시오.
geom_to_wkt( $geometry)
포인트 레이어에서 다음 표현식을 사용할 수 있습니다.
min( attribute( get_feature('points','WKT', geom_to_wkt(start_point($geometry) )),'year'),attribute( get_feature('points','WKT', geom_to_wkt(end_point($geometry) )),'year'))||'-'|| max( attribute( get_feature('points','WKT', geom_to_wkt(start_point($geometry) )),'year'),attribute( get_feature('points','WKT', geom_to_wkt(end_point($geometry) )),'year'))
파이프 레이어의 필드 계산기에서 텍스트 문자열을 만듭니다.
- 속성 (기능, ATTRIBUTE_NAME)는 기능에서 지정된 속성의 값을 돌려, 여기에 포인트 기능의 해
를 얻을.
- get_feature (layer, attribute, value)는 주어진 속성 값과 일치하는 레이어의 첫 번째 기능을 반환합니다. 여기에서
선의 시작 정점과 끝 정점의 좌표와 동일한 좌표 (WKT 형식)를 가진 점을 찾을 수 있는지 확인합니다 .
- start_point (geometry)는 형상에서 첫 번째 노드를 반환합니다. 여기 선의 첫 번째 정점이 있습니다.
- end_point (geometry)는 지오메트리에서 마지막 노드를 반환합니다. 여기 선의 마지막 정점이 있습니다.
- geom_to_wkt (geometry)는 지오메트리의 Well-Known Text (WKT) 표현을 반환합니다.
당신은 그것을 업데이트 할 수 있습니다 :
CASE
WHEN attribute( get_feature('points','WKT', geom_to_wkt(start_point($geometry) )),'year') = attribute( get_feature('points','WKT', geom_to_wkt(end_point($geometry) )),'year')
THEN attribute( get_feature('points','WKT', geom_to_wkt(end_point($geometry) )),'year')
ELSE min( attribute( get_feature('points','WKT', geom_to_wkt(start_point($geometry) )),'year'),attribute( get_feature('points','WKT', geom_to_wkt(end_point($geometry) )),'year'))||'-'|| max( attribute( get_feature('points','WKT', geom_to_wkt(start_point($geometry) )),'year'),attribute( get_feature('points','WKT', geom_to_wkt(end_point($geometry) )),'year'))
END
같은 연도의 두 점이 연결된 경우 1 년만 표시하기 위해 (200X-200X 대신 200X를 얻음).
이 방법의 주요 장점은 데이터가 포인트에서 변경되면 하나의 필드 계산기로 매우 빠르게 업데이트 할 수 있다는 것입니다. 새 줄을 만들 때이
규칙을 자동 필드로 추가 할 수도 있습니다 .
건배,