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
| Name | Type | Description |
|---|---|---|
| sourceFile | string | 좌현(P) 리뷰 파일 |
| targetFile | string | 저장할 우현(S) 리뷰 파일 |
| centerY | float | 미러 기준 Y 좌표 |
| targetModel | string | S 리뷰 파일에 기록할 모델 파일 경로 (null 또는 빈 문자열이면 원본 유지) |
| titleConverter | Func<string, string> | 노트(TextObject 포함)/사용자 뷰/폴더 제목 변환 (예 : "(P)" → "(S)"), null 이면 원본 유지 |
Returns
| Type | Description |
|---|---|
| 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);
}