지오메트리와 $ geometry QGIS의 차이점


12

이것은 사소한 질문 일지 모르지만 혼란 스럽습니다 .QGIS의 기하학과 $ 기하학의 차이점은 무엇입니까? 이 기능을 사용하는 예를 찾지 못했습니다.

기하학과 $ 기하학

특히 지오메트리에 관심이 있는데 어떤 경우에 도움이됩니까?

답변:


19

스크린 샷의 기능 목록 옆에 현재 선택된 기능의 설명서가 있어야합니다. 나를 위해 2.18.12와 함께 읽는 사람들은 다음과 같습니다.

$ geometry 현재 피쳐의 형상을 반환합니다. 다른 기능으로 처리하는 데 사용할 수 있습니다.

geometry 지형지 물의 지형을 반환합니다.

이것은 객체 지향 프로그래밍에서 함수와 함수의 차이점과 같습니다. $ geometry는 this / self 의 기하학입니다. 속성이나 속성처럼 생각할 수 있습니다.

반면에 지오메트리는 피처를 전달해야하며 해당 지오메트리를 반환 합니다. 문서에서 알 수 있듯이이를 사용하여 속성 기반 형상 선택에서 형상을 가져올 수 있습니다.

geometry(
  get_feature(layer, attributeField, value)
)

그것으로 할 수있는 일은 창의성과 그 기능 을 전달할 소스에 의해 제한됩니다 . :)


따라서 line ((make_line (make_point ( "xlbl"-1000, "ylbl"), make_point (( "xlbl"+ length (( "time")))))))을 형성하는 별도의 점을 변환하려고 할 때 어떻게 사용할 수 있습니까? +7000), "ylbl"),) ... 등 속성 테이블 값의 좌표를 기반으로 모든 줄을 변환하고 싶습니다.
Jane

make_point func에서 라인의 모든 지점을 지오메트리로 표현한 다음 변환 된 전체 지오메트리 make_line이 잘못된 gis.stackexchange.com/questions/253002/…
Jane

확실한 것. 이것은 잘못된 도구를 사용하는 것 같습니다. points2one 플러그인이나 다른 처리를 시도 했습니까?
bugmenot123

1
아니요, 이것은 레이어의 스타일이므로 레이어 속성에 플러그인을 사용할 수 없습니다. qgis 내장 함수를 사용하여 문제를 해결하려고합니다.
Jane

2
속성 비교는 양호하지만 OO 비교는 약간 약하며 $geometryOO 여부에 관계없이 오히려 (const) 변수입니다.
Matthias Kuhn

15

$geometry현재 피처 의 지오메트리를geom_to_wkt($geometry)

geometry다음과 같이 특정 지형지 물의 형상을 반환합니다 .geom_to_wkt(geometry(get_feature('my_layer', 'my_feature', feature_id)))

예를 들어 특정 기능에 대해 현재 기능을 처리하려는 경우 두 번째 경우를 사용합니다.

intersects($geometry,geometry(get_feature(layer,attributeField,value)))

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.