마이그레이션 체크리스트
node.pos,node.size,boundingRect,getBounding(),setPos(),setSize()를 계속 사용하세요: 시그니처 변경은 필요하지 않습니다.repositionNodesVueMode()호출을applyNodePositions()로 바꾸세요.node.size가 측정/렌더링된 콘텐츠를 반영한다고 의존했다면getBounding()/boundingRect로 전환하세요. Vue 렌더러에서는 이제size가 요청된 값을 엄격하게 반영합니다. 레거시 렌더러는 여전히 위젯에 맞도록size를 늘립니다.- 백킹 스토어가 아니라 노드/그룹 지오메트리 API를 사용하세요.
layoutStore를 가져오거나 내부 형식에 의존하지 마세요. - 제거된 참조를 통한 쓰기는 공유 레이아웃 상태가 아닌 분리된 객체를 업데이트합니다.
변경 사항
LGraphNode.pos, size, boundingRect, getBounding(), setPos(), setSize()는 시그니처가 그대로 유지됩니다. 이러한 호출은 소스 호환성을 유지합니다. 동작은 아래 세 가지 경우에서 변경되었습니다.
size와 렌더링된 경계
node.size는 요청한 크기이며, 직렬화되는 값입니다. Vue 렌더러에서는 렌더링이 이 값을 변경하지 않습니다. getBounding()과 boundingRect는 렌더링된 경계를 반환하며, 위젯 콘텐츠에 더 많은 공간이 필요할 때 size보다 클 수 있습니다. 레거시 캔버스 렌더러에서는 노드가 setSize()를 호출해 위젯에 맞게 계속 커지므로, 그리기 이후에 node.size와 저장된 크기가 변경될 수 있습니다. 노드의 실제 화면상 크기가 필요할 때는 렌더링된 경계를 사용하세요.
캔버스는 각 프레임이 시작될 때 getBounding()과 boundingRect를 다시 계산합니다. pos 또는 size를 변경한 뒤 같은 프레임에서 이 값을 읽으려면 먼저 node.updateArea()를 호출하세요. Vue 렌더러에서는 DOM 콘텐츠로 인한 크기 증가가 노드 측정이 끝난 뒤에만 반영됩니다.
repositionNodesVueMode()가 applyNodePositions()로 이름 변경됨
repositionNodesVueMode()는 지원 중단된 별칭으로 여전히 호출할 수 있습니다.