hfSectionVisualizer 원격 제어 Geometry
Geometry
hfSectionVisualizer --remote [--target <id>] draw-point <yp,zp>
hfSectionVisualizer --remote [--target <id>] draw-lines <yp,zp> <yp,zp> [<yp,zp> ...]
hfSectionVisualizer --remote [--target <id>] draw-bezier <yp,zp> <yp,zp> <yp,zp>
hfSectionVisualizer --remote [--target <id>] draw-spline <yp,zp> <yp,zp> <yp,zp> [<yp,zp> ...]
hfSectionVisualizer --remote [--target <id>] generate-circle <radius> <yp> <zp>
hfSectionVisualizer --remote [--target <id>] generate-circular-points <radius> <yp> <zp> <start-angle-deg> <count>
hfSectionVisualizer --remote [--target <id>] auto-seed --curve-ids <id,id,...>
hfSectionVisualizer --remote [--target <id>] make-face --material <name> --curve-ids <id,id,...>
hfSectionVisualizer --remote [--target <id>] make-rebar --material <name> --point-ids <id,id,...> --diameter <value> [--diameter-right <value>]
hfSectionVisualizer --remote [--target <id>] move-point <point-id> <yp,zp> [--merge <on|off>]
hfSectionVisualizer --remote [--target <id>] delete-point <id,id,...>
hfSectionVisualizer --remote [--target <id>] delete-curve <id,id,...>
hfSectionVisualizer --remote [--target <id>] delete-face <id,id,...>
hfSectionVisualizer --remote [--target <id>] delete-rebar <id,id,...>
hfSectionVisualizer --remote [--target <id>] select <point|curve|face|rebar> <id,id,...> [--mode <replace|add|remove|toggle>]
hfSectionVisualizer --remote [--target <id>] delete-selection
- Geometry 작성 명령은 편집 가능한 geometry section이 있어야 합니다.
- 이미 mesh가 있으면 먼저
make-mesh delete를 실행하기 전까지 geometry 작성 명령을 사용할 수 없습니다. - 좌표 인자는
yp,zp형식을 사용합니다. - 필요하면 좌표 토큰을 따옴표로 감싸십시오. 특히
"-25,10"처럼 음수로 시작하는 경우를 권장합니다. - 좌표 기반 draw 명령은 start-section geometry를 기준으로 좌표를 해석합니다.
- 요청 좌표와 일치하는 기존 point가 있으면, 해당 명령이 중복을 금지하는 경우를 제외하고 기존 point를 재사용합니다.
- 새 point는 start/end 좌표를 동일하게 생성하므로, taper section에서도 초기 geometry는 양쪽이 같은 상태로 시작합니다.
move-point는 기존 point id 하나를 대상으로 하며, 연결된 모든 curve를 함께 갱신합니다.- 직접 삭제 명령은 실제로 삭제된 id를 기록하므로, GUI Delete 재생이 이전 선택 상태 복원에 의존하지 않습니다.
select는 geometry 자체를 바꾸지 않으므로 mesh 삭제 없이 사용할 수 있습니다.delete-selection은 선택된 개체를 실제로 제거하므로 편집 가능한 geometry가 필요합니다.
Draw Point
구문:
hfSectionVisualizer --remote [--target <id>] draw-point <yp,zp>
인자와 동작:
<yp,zp>는 하나의 geometry point 좌표쌍입니다.- 이 명령은 정확히 한 개의 point만 생성합니다.
- 같은 좌표에 다른 point가 이미 있으면 실패합니다.
- 이 명령만으로 curve, face, rebar는 생성되지 않습니다.
예시:
hfSectionVisualizer --remote draw-point "0,0"
Draw Lines
구문:
hfSectionVisualizer --remote [--target <id>] draw-lines <yp,zp> <yp,zp> [<yp,zp> ...]
인자와 동작:
- 좌표쌍을 최소 두 개 이상 전달해야 합니다.
- 인접한 두 점마다 하나의 line segment가 생성됩니다.
- 점 두 개면 line 1개, 점 세 개면 연결된 line 2개가 생성됩니다.
- 연속한 두 점이 완전히 같으면 실패합니다.
- 연속하지 않은 반복 좌표는 허용되므로, polyline이 이전 점으로 되돌아갈 수 있습니다.
- 일치하는 기존 point는 재사용하고, 없는 point는 자동으로 생성합니다.
예시:
hfSectionVisualizer --remote draw-lines "0,0" "300,0" "300,120"
Draw Bezier
구문:
hfSectionVisualizer --remote [--target <id>] draw-bezier <yp,zp> <yp,zp> <yp,zp>
인자와 동작:
- 제어점 세 개를 정확히 전달해야 합니다.
- 세 점은 모두 서로 달라야 합니다.
- 이 명령은 2차 bezier curve 1개를 생성합니다.
- curve seed는 현재 section model의 기본 curve seed로 초기화됩니다.
- 일치하는 기존 point는 재사용하고, 없는 point는 자동으로 생성합니다.
예시:
hfSectionVisualizer --remote draw-bezier "0,0" "150,80" "300,0"
Draw Spline
구문:
hfSectionVisualizer --remote [--target <id>] draw-spline <yp,zp> <yp,zp> <yp,zp> [<yp,zp> ...]
인자와 동작:
- 제어점은 최소 세 개 이상 전달해야 합니다.
- 이 명령은 전달한 점들을 지나는 spline curve 1개를 생성합니다.
- 반복 좌표는 기본적으로 허용되지 않으며, 아래 한 가지 닫힘 경우만 예외입니다.
- 마지막 점이 첫 번째 점과 같으면 closed spline으로 생성됩니다.
- curve seed는 현재 section model의 기본 curve seed로 초기화됩니다.
- 일치하는 기존 point는 재사용하고, 없는 point는 자동으로 생성합니다.
예시:
hfSectionVisualizer --remote draw-spline "0,0" "120,80" "240,40" "240,-40" "0,0"
Move Point
구문:
hfSectionVisualizer --remote [--target <id>] move-point <point-id> <yp,zp> [--merge <on|off>]
인자와 동작:
<point-id>는 기존 geometry point id 하나입니다.<yp,zp>는 해당 point의 목적 좌표쌍입니다.- 이 명령은 point를 이동한 뒤, 연결된 모든 curve를 함께 갱신합니다.
--merge on이면 이동한 point id를 유지하면서 목적지의 중복 point를 그 id로 병합합니다.--merge off이면 목적지에 다른 point가 이미 있어도 그 point는 건드리지 않고 좌표만 이동합니다.- 목적지 좌표가 현재 좌표와 같으면 no-op으로 성공합니다.
예시:
hfSectionVisualizer --remote move-point 12 "250,100" --merge off
Delete Point
구문:
hfSectionVisualizer --remote [--target <id>] delete-point <id,id,...>
인자와 동작:
<id,id,...>는 쉼표로 구분한 point id 목록입니다.- point는 남아 있는 curve 또는 rebar가 참조하지 않을 때만 삭제됩니다.
- 안전하게 지울 수 있는 id는 삭제되고, 막힌 id는 JSON 결과의
blockedIds로 보고됩니다.
예시:
hfSectionVisualizer --remote delete-point "8,12"
Delete Curve
구문:
hfSectionVisualizer --remote [--target <id>] delete-curve <id,id,...>
인자와 동작:
<id,id,...>는 쉼표로 구분한 curve id 목록입니다.- curve는 남아 있는 face가 참조하지 않을 때만 삭제됩니다.
- 안전하게 지울 수 있는 id는 삭제되고, 막힌 id는 JSON 결과의
blockedIds로 보고됩니다.
예시:
hfSectionVisualizer --remote delete-curve "3,7"
Delete Face
구문:
hfSectionVisualizer --remote [--target <id>] delete-face <id,id,...>
인자와 동작:
<id,id,...>는 쉼표로 구분한 face id 목록입니다.- 요청한 face id는 직접 삭제됩니다.
예시:
hfSectionVisualizer --remote delete-face "4,5"
Delete Rebar
구문:
hfSectionVisualizer --remote [--target <id>] delete-rebar <id,id,...>
인자와 동작:
<id,id,...>는 쉼표로 구분한 rebar id 목록입니다.- 요청한 rebar id는 직접 삭제됩니다.
예시:
hfSectionVisualizer --remote delete-rebar "2,9"
Select
구문:
hfSectionVisualizer --remote [--target <id>] select <point|curve|face|rebar> <id,id,...> [--mode <replace|add|remove|toggle>]
인자와 동작:
<point|curve|face|rebar>는 선택할 geometry 개체 종류입니다.<id,id,...>는 양의 정수 id를 쉼표로 나열한 목록입니다.--mode replace는 요청한 id 집합으로 선택을 다시 구성합니다.--mode add,remove,toggle은 현재 선택 상태를 기준으로 갱신합니다.- 이 명령은 선택만 변경하며 geometry를 생성하거나 삭제하지 않습니다.
예시:
hfSectionVisualizer --remote select curve "3,7,9" --mode add
Delete Selection
구문:
hfSectionVisualizer --remote [--target <id>] delete-selection
인자와 동작:
- 현재 활성 section에서 선택된 삭제 가능한 개체를 제거합니다.
- 선택된 face와 rebar는 즉시 삭제됩니다.
- face가 참조하는 curve는 삭제되지 않고 선택 상태로 남습니다.
- curve 또는 rebar가 참조하는 point는 삭제되지 않고 선택 상태로 남습니다.
- 삭제 가능한 선택이 없으면 no-op으로 성공합니다.
예시:
hfSectionVisualizer --remote select face "4"
hfSectionVisualizer --remote delete-selection