Files
Pier_v1/심수석님 검토 파일/검토_운곡교P1/스크립트/라이노_시작.py
T
ahnyongjooandClaude Sonnet 5.5 964a841de1 chore(rebar): Pier_T_rebar 작업 폴더 초기 구성 및 외부 의존 파일 통합
- Code\rebar_pipeline, review_pipeline, pier-program을 정션에서 실제 폴더로 전환
- Code\rhino_mcp 및 CLAUDE_rhino배경.md 추가, .mcp.json은 PYTHONPATH로 새 위치 사용
- pier-program 내부 .git 제거(이력은 backup\pier-program_20261028.bundle에 보관)
- worktree 가이드 반영(CLAUDE.local.md, HANDOFF.md)
- D:\Rhino-MCP 경로 참조를 새 위치로 치환

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-28 11:20:18 +09:00

39 lines
1.4 KiB
Python

# -*- coding: utf-8 -*-
"""한 번에 시작: (1) Rhino MCP 서버 켜기 (2) 표식 클릭 자동 보기 켜기.
Rhino 명령줄: RunPythonScript → 이 파일 선택 (또는 Rhino 옵션 > 일반 > 시작 시 실행할 명령에 등록)
- MCP 서버(포트 9876)가 이미 떠 있으면 다시 켜지 않는다.
- 표식 자동 보기는 이 스크립트가 켬 상태로 만든다 (실행할 때마다 켜짐, 껐다 켜기 안 함).
"""
import socket
import Rhino
import scriptcontext as sc
CLIENT = u"D:\\★Pier 자료\\pier_v1\\Pier_T_rebar\\Code\\rhino_mcp\\rhino_mcp_client.py"
VIEWER = u"D:\\\u2605Pier \uc790\ub8cc\\\uc2ec\uc218\uc11d\ub2d8 \uac80\ud1a0 \ud30c\uc77c\\\uac80\ud1a0_\uc6b4\uace1\uad50P1\\\uc2a4\ud06c\ub9bd\ud2b8\\\ud45c\uc2dd_\ub0b4\uc6a9\ubcf4\uae30.py"
def port_open(port=9876):
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.settimeout(0.5)
try:
s.connect(("localhost", port))
return True
except Exception:
return False
finally:
s.close()
if port_open():
Rhino.RhinoApp.WriteLine(u"Rhino MCP 서버: 이미 켜져 있음 (9876)")
else:
Rhino.RhinoApp.RunScript(u'-_RunPythonScript "' + CLIENT + u'"', False)
Rhino.RhinoApp.WriteLine(u"Rhino MCP 서버: 켰음 (9876)")
sc.sticky["ungok_marker_launch"] = True
try:
Rhino.RhinoApp.RunScript(u'-_RunPythonScript "' + VIEWER + u'"', False)
finally:
sc.sticky["ungok_marker_launch"] = False