본문으로 건너뛰기

GetCorrectionBasePosition

Overloads​

NameDescription
GetCorrectionBasePosition(int id)보정을 적용하기 전 지시점의 실제 좌표 반환.
GetCorrectionBasePosition(NoteItem note)보정을 적용하기 전 지시점의 실제 좌표 반환.

GetCorrectionBasePosition(int id)​

public Vertex3D GetCorrectionBasePosition(int id)

보정을 적용하기 전 지시점의 실제 좌표 반환.

Remarks​

반영 여부와 무관하게 항상 실제 좌표 반환. 좌표 표기를 지원하지 않는 노트면 null 반환.

Parameters​

NameTypeDescription
idint대상 노트 아이디(ID)

Returns​

TypeDescription
Vertex3D지시점의 실제 좌표. 조회 불가 시 null

Examples​

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

private void Example(int id)
{
// 표기 문자열은 단위·소수 자릿수·표시 축 설정에 따라 달라지므로 파싱하지 않고 좌표를 직접 조회.
VIZCore3D.NET.Data.Vertex3D basePos = vizcore3d.Review.Note.GetCorrectionBasePosition(id);

// null = 좌표 표기 노트가 아님(일반 텍스트 노트이거나 대상이 없음). 좌표 표기 노트 판정에도 쓸 수 있음.
if (basePos == null) return;

// 반영을 켜 두었더라도 이 값은 항상 보정 전 실제 좌표.
float x = basePos.X;
float y = basePos.Y;
float z = basePos.Z;
}

GetCorrectionBasePosition(NoteItem note)​

public Vertex3D GetCorrectionBasePosition(NoteItem note)

보정을 적용하기 전 지시점의 실제 좌표 반환.

Remarks​

반영 여부와 무관하게 항상 실제 좌표 반환. 좌표 표기를 지원하지 않는 노트면 null 반환.

Parameters​

NameTypeDescription
noteNoteItem대상 노트

Returns​

TypeDescription
Vertex3D지시점의 실제 좌표. 조회 불가 시 null

Examples​

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

private void Example()
{
// 전제조건 — 화면에서 노트를 선택해 두어야 함.
List<VIZCore3D.NET.Data.NoteItem> notes = vizcore3d.Review.Note.GetSelectedItems();
if (notes.Count == 0) return;

foreach (VIZCore3D.NET.Data.NoteItem note in notes)
{
VIZCore3D.NET.Data.Vertex3D basePos = vizcore3d.Review.Note.GetCorrectionBasePosition(note);

// null 이면 좌표 표기 노트가 아니므로 목록에서 제외.
if (basePos == null) continue;

VIZCore3D.NET.Data.Vertex3D applied = vizcore3d.Review.Note.GetCorrectionAppliedPosition(note);

// 실제 좌표와 보정 좌표를 나란히 보여 주는 표를 만드는 경우.
float deltaZ = applied.Z - basePos.Z;
}
}