본문으로 건너뛰기

SaveMirror

public ReviewMirrorResult SaveMirror(string sourceFile, string targetFile, float centerY, string targetModel, Func<string, string> titleConverter)

좌현(P) 리뷰 파일을 우현(S) 기준으로 좌우 미러한 리뷰 파일 저장

Remarks​

리뷰 파일(*.cvr)만 직접 읽고 쓰므로 현재 열린 모델과 화면의 리뷰에는 영향을 주지 않음.
선체 좌표계 Y = centerY 평면(기본 : 선체 중심선 Y = 0) 기준으로 노트/측정 위치, 연속거리 정점, 사용자 뷰 카메라를 미러함.
위치 측정의 Y 표시 값은 미러된 좌표로 갱신하며, 지원하지 않는 종류는 원본 그대로 두고 결과의 Warnings 에 남김.
TextObject 노트는 글자가 뒤집히지 않도록 방향을 맞추고, 텍스트 폭을 현재 컨트롤의 폰트로 측정해 위치를 보정함.
사용자 뷰의 노드 보이기/색상/단면 상태는 노드 인덱스 기반이라 원본 그대로 저장됨.

Parameters​

NameTypeDescription
sourceFilestring좌현(P) 리뷰 파일
targetFilestring저장할 우현(S) 리뷰 파일
centerYfloat미러 기준 Y 좌표
targetModelstringS 리뷰 파일에 기록할 모델 파일 경로 (null 또는 빈 문자열이면 원본 유지)
titleConverterFunc<string, string>노트(TextObject 포함)/사용자 뷰/폴더 제목 변환 (예 : "(P)" → "(S)"), null 이면 원본 유지

Returns​

TypeDescription
ReviewMirrorResult미러 결과

Examples​

// VIZCore3D.NET Control
private VIZCore3D.NET.VIZCore3DControl vizcore3d;

private void Example()
{
// 현재 리뷰를 P 리뷰 파일로 저장
vizcore3d.Review.Save("D:\\TEST\\BLOCK_P.cvr");

// 저장된 P 리뷰 파일을 S 리뷰 파일로 미러 저장 (화면의 리뷰는 그대로)
VIZCore3D.NET.Data.ReviewMirrorResult result = vizcore3d.Review.SaveMirror(
"D:\\TEST\\BLOCK_P.cvr"
, "D:\\TEST\\BLOCK_S.cvr"
, 0.0f
, "D:\\TEST\\BLOCK_S.viz"
, title => title.Replace("(P)", "(S)")
);

foreach (string warning in result.Warnings)
System.Diagnostics.Debug.WriteLine(warning);
}