현재 TikZ "라벨 거리"를 어떻게 읽어야 합니까?

현재 TikZ "라벨 거리"를 어떻게 읽어야 합니까?

나는 TikZ의 레이블 기능 동작이 마음에 들지 않는다고 결정했습니다. 지정된 라벨 각도 반대쪽 앵커를 사용하여 배치된 라벨을 가져오고 싶습니다. 예를 들어 레이블이 노드 옵션 목록에 명시되는 경우 [..., label = {210: my label}, ...]레이블은 해당 레이블의 앵커를 사용하여 각도 210에 배치되어야 합니다 30(210 +/- 180은 30 모듈로 360임). (TikZ 라벨 위치 지정 논리는 이 작업을 수행하지 않습니다. 대신(3.00 매뉴얼에 따라) 각도에 따라 라벨에 대해 8개의 앵커 north, north east, east, ... 중 하나를 선택합니다.)north west

레이블이 지정된 노드는 실제로 TikZ 코드를 직접 입력하는 것이 아니라 매크로 내부에서 생성될 예정이므로 실제로 "레이블" 기능을 사용하지 않고 직접 레이블 노드를 생성하는 것만으로도 충분할 것 같았습니다. 그러나 여전히 label distance권리를 얻어야 합니다. 그리고 label distance실제 TikZ 레이블처럼 TikZ 키 변경에 응답하기 위한 레이블 거리를 원합니다 .

그러나 label distance. 가 있지만 /tikz/label distance라벨 거리를 저장하는 대신 설정하는 데 사용되는 것 같습니다. 를 사용하여 읽으려고 \pgfkeysgetvalue하면 \relax. TikZ의 코드를 살펴보면 현재 라벨 거리가 이라는 매크로에 저장되어 있는 것으로 보입니다 \tikz@label@distance. 그래서 이 매크로의 값을 복사하고 이를 사용하여 ersatz 레이블을 배치하는 코드를 시도했는데 올바르게 작동하는 것 같습니다.

제 질문은 이것이 제가 라벨 ​​거리를 결정하는 "방법"입니까?입니다. 이는 내가 여기서 하고 있는 작업이 Tikz/PGF의 "내부"를 살펴보고 내부를 만지작거리는 것임을 의미합니다. TikZ/PGF의 최신 버전이 \tikz@label@distance매크로 이름을 바꾸거나 이를 저장하기 위해 PGFkeys 키를 사용하기 시작하면 코드가 손상됩니다. 더 좋은 방법이 있나요?

관련 정보