SetAngleMeasureDimensionRadius
Overloads
| Name | Description |
|---|---|
| SetAngleMeasureDimensionRadius(int nReviewID, float radius) | 각도 측정 객체의 치수선 크기를 반경 기준으로 변경한다. |
SetAngleMeasureDimensionRadius(int nReviewID, float radius)
public void SetAngleMeasureDimensionRadius(int nReviewID, float radius)
각도 측정 객체의 치수선 크기를 반경 기준으로 변경한다.
Parameters
| Name | Type | Description |
|---|---|---|
| nReviewID | int | 객체 ID |
| radius | float | 반경 크기 |
Examples
// VIZCore3D.NET Control
private VIZCore3D.NET.VIZCore3DControl vizcore3d;
private void Example()
{
// 3점 각도 측정 추가
Node node = vizcore3d.Object3D.FromDepth(0)[0];
VIZCore3D.NET.Data.Vertex3D angle1_p1 = new VIZCore3D.NET.Data.Vertex3D(node.GetBoundBox().MinX, node.GetBoundBox().MinY, node.GetBoundBox().MinZ);
VIZCore3D.NET.Data.Vertex3D angle1_vertex = new VIZCore3D.NET.Data.Vertex3D(node.GetBoundBox().MaxX, node.GetBoundBox().MinY, node.GetBoundBox().MinZ);
VIZCore3D.NET.Data.Vertex3D angle1_p3 = new VIZCore3D.NET.Data.Vertex3D(node.GetBoundBox().MaxX, node.GetBoundBox().MaxY, node.GetBoundBox().MinZ);
int id = vizcore3d.Review.Measure.AddCustom3PointAngle(angle1_p1, angle1_vertex, angle1_p3);
// 2D 뷰 화면 개체 생성
vizcore3d.Drawing2D.Object2D.Create2DViewObjectWithModelAtCanvasOrigin(Drawing2D_ModelViewKind.CURRENT);
// 3D 뷰 측정 2D 뷰에 측정 추가
vizcore3d.Drawing2D.Measure.Add2DMeasureFrom3DMeasure(new int[] { id });
// 생성된 모든 개체 반환
List<Object2D> list = vizcore3d.Drawing2D.Object2D.GetObjectAllinfoBy2DView();
List<Object2D> angleList = new List<Object2D>();
if (list.Count == 0) return;
// 2D 개체 유형이 각도 인 경우만
foreach (Object2D obj in list)
{
if (obj.Kind == Object2D_Types.MEASURE_ANGLE)
{
angleList.Add(obj);
}
}
if (angleList.Count > 0)
{
int id1 = angleList[0].ID; // 첫 번째 각도 측정 오브젝트 ID
// ----------------------------------------------------------
// [현재 상태 조회] 라벨 정렬 방향 및 자동 정렬 여부 확인
// - GetLabelAlignmentOnDimension : 현재 설정된 가로/세로 앵커 반환
// - IsLabelAlignedOnDimension : true이면 치수호 위 자동 정렬 상태
// ----------------------------------------------------------
vizcore3d.Drawing2D.Measure.GetLabelAlignmentOnDimension(id1, out LabelHorizontalAnchor hAlign1, out LabelVerticalAnchor vAlign1);
bool isAligned1 = vizcore3d.Drawing2D.Measure.IsLabelAlignedOnDimension(id1);
// ----------------------------------------------------------
// [치수호 반지름 조회] GetAngleMeasureDimensionRadius
// 현재 반지름 값 반환
// ----------------------------------------------------------
float r1 = vizcore3d.Drawing2D.Measure.GetAngleMeasureDimensionRadius(id1);
// ----------------------------------------------------------
// [치수호 반지름 변경]
// - SetAngleMeasureDimensionRadius : 기존 반지름의 1.2배로 확대 (조금 더 크게)
// 배율은 목적에 따라 자유롭게 조정 가능
// ----------------------------------------------------------
vizcore3d.Drawing2D.Measure.SetAngleMeasureDimensionRadius(id1, 1.2f * r1);
// ----------------------------------------------------------
// [라벨 정렬 변경]
// - SetLabelAlignmentOnDimension : Right + Top → 치수호 오른쪽 위에 라벨 고정
// ----------------------------------------------------------
vizcore3d.Drawing2D.Measure.SetLabelAlignmentOnDimension(id1, LabelHorizontalAnchor.Right, LabelVerticalAnchor.Top);
}
}