PerformInterferenceCheck
Overloads
| Name | Description |
|---|---|
| PerformInterferenceCheck(int id) | 간섭검사 수행 |
| PerformInterferenceCheck(int id, bool progressForm) | 간섭검사 수행 |
| PerformInterferenceCheck() | 모든 간섭검사 (재)수행 |
| PerformInterferenceCheck(List<int> items) | 모든 간섭검사 (재)수행 |
| PerformInterferenceCheck(List<ClashTest> items) | 모든 간섭검사 (재)수행 |
PerformInterferenceCheck(int id)
public bool PerformInterferenceCheck(int id)
간섭검사 수행
Parameters
| Name | Type | Description |
|---|---|---|
| id | int | 간섭검사 테스트 아이디(ID) |
Returns
| Type | Description |
|---|---|
| bool | 간섭검사 수행 시작 결과 : True(검사 수행 시작 성공), False(검사 수행 시작 실패) |
Examples
// VIZCore3D.NET Control
private VIZCore3D.NET.VIZCore3DControl vizcore3d;
private VIZCore3D.NET.Data.ClashTest clash;
private void Example()
{
clash = new VIZCore3D.NET.Data.ClashTest();
clash.Name = "CLASH TEST #1";
clash.TestKind = VIZCore3D.NET.Data.ClashTest.ClashTestKind.GROUP_VS_GROUP;
clash.UseRangeValue = false;
clash.RangeValue = 2.0f;
clash.UsePenetrationTolerance = true;
clash.PenetrationTolerance = 1.0f;
clash.VisibleOnly = false;
clash.BottomLevel = 2;
List<VIZCore3D.NET.Data.Node> groupA =
vizcore3d.Object3D.Find.QuickSearch(
new List<string>() { "EQUIPMENT" }
, false
, true
, false
, false
, true
, false
);
clash.GroupA = groupA;
List<VIZCore3D.NET.Data.Node> groupB =
vizcore3d.Object3D.Find.QuickSearch(
new List<string>() { "HULL" }
, false
, true
, false
, false
, true
, false
);
clash.GroupB = groupB;
if (clash.ID == -1)
{
bool result = vizcore3d.Clash.Add(clash);
MessageBox.Show(
string.Format("ClashTest : {0} / {1}", result == true ? "OK" : "NG", clash.ID)
, "VIZCore3D.NET.ClashTest"
, MessageBoxButtons.OK
, result == true ? MessageBoxIcon.Information : MessageBoxIcon.Error
);
}
else
{
vizcore3d.Clash.Update(clash);
}
vizcore3d.Clash.OnClashTestFinishedEvent += Clash_OnClashTestFinishedEvent;
// 간섭검사 수행
bool result = vizcore3d.Clash.PerformInterferenceCheck(clash.ID);
}
private void Clash_OnClashTestFinishedEvent(object sender, VIZCore3D.NET.Event.EventManager.ClashEventArgs e)
{
MessageBox.Show(
string.Format("Clash Test Completed. : {0} / {1}"
, e.ID
, clash.ElapsedTimeString)
, "VIZCore3D.NET.ClashTest"
, MessageBoxButtons.OK, MessageBoxIcon.Information
);
bool resultDataKind = true; // True : Assembly, False : Part
List<VIZCore3D.NET.Data.ClashTestResultItem> items = null;
if (clash.TestKind != VIZCore3D.NET.Data.ClashTest.ClashTestKind.GROUP_VS_MOVING_GROUP)
{
items = vizcore3d.Clash.GetResultItem(
clash
, resultDataKind == true
? VIZCore3D.NET.Manager.ClashManager.ResultGroupingOptions.ASSEMBLY
: VIZCore3D.NET.Manager.ClashManager.ResultGroupingOptions.PART
);
}
else
{
//items = vizcore3d.Clash.GetResultItem(clash, 0, ckResultAssembly.Checked == true ? VIZCore3D.NET.Manager.ClashManager.ResultGroupingOptions.ASSEMBLY : VIZCore3D.NET.Manager.ClashManager.ResultGroupingOptions.PART);
items = vizcore3d.Clash.GetResultAllSubItem(
clash
, resultDataKind == true
? VIZCore3D.NET.Manager.ClashManager.ResultGroupingOptions.ASSEMBLY
: VIZCore3D.NET.Manager.ClashManager.ResultGroupingOptions.PART
);
}
}
PerformInterferenceCheck(int id, bool progressForm)
public bool PerformInterferenceCheck(int id, bool progressForm)
간섭검사 수행
Parameters
| Name | Type | Description |
|---|---|---|
| id | int | 간섭검사 테스트 아이디(ID) |
| progressForm | bool | progressForm 보이기/숨기기 |
Returns
| Type | Description |
|---|---|
| bool | 간섭검사 수행 시작 결과 : True(검사 수행 시작 성공), False(검사 수행 시작 실패) |
Examples
// VIZCore3D.NET Control
private VIZCore3D.NET.VIZCore3DControl vizcore3d;
private VIZCore3D.NET.Data.ClashTest clash;
private void Example()
{
clash = new VIZCore3D.NET.Data.ClashTest();
clash.Name = "CLASH TEST #1";
clash.TestKind = VIZCore3D.NET.Data.ClashTest.ClashTestKind.GROUP_VS_GROUP;
clash.UseRangeValue = false;
clash.RangeValue = 2.0f;
clash.UsePenetrationTolerance = true;
clash.PenetrationTolerance = 1.0f;
clash.VisibleOnly = false;
clash.BottomLevel = 2;
List<VIZCore3D.NET.Data.Node> groupA =
vizcore3d.Object3D.Find.QuickSearch(
new List<string>() { "EQUIPMENT" }
, false
, true
, false
, false
, true
, false
);
clash.GroupA = groupA;
List<VIZCore3D.NET.Data.Node> groupB =
vizcore3d.Object3D.Find.QuickSearch(
new List<string>() { "HULL" }
, false
, true
, false
, false
, true
, false
);
clash.GroupB = groupB;
if (clash.ID == -1)
{
bool result = vizcore3d.Clash.Add(clash);
MessageBox.Show(
string.Format("ClashTest : {0} / {1}", result == true ? "OK" : "NG", clash.ID)
, "VIZCore3D.NET.ClashTest"
, MessageBoxButtons.OK
, result == true ? MessageBoxIcon.Information : MessageBoxIcon.Error
);
}
else
{
vizcore3d.Clash.Update(clash);
}
vizcore3d.Clash.OnClashTestFinishedEvent += Clash_OnClashTestFinishedEvent;
//progressForm 보이기/숨기기
bool progressForm = false;
// 간섭검사 수행
bool result = vizcore3d.Clash.PerformInterferenceCheck(clash.ID);
}
private void Clash_OnClashTestFinishedEvent(object sender, VIZCore3D.NET.Event.EventManager.ClashEventArgs e)
{
MessageBox.Show(
string.Format("Clash Test Completed. : {0} / {1}"
, e.ID
, clash.ElapsedTimeString)
, "VIZCore3D.NET.ClashTest"
, MessageBoxButtons.OK, MessageBoxIcon.Information
);
bool resultDataKind = true; // True : Assembly, False : Part
List<VIZCore3D.NET.Data.ClashTestResultItem> items = null;
if (clash.TestKind != VIZCore3D.NET.Data.ClashTest.ClashTestKind.GROUP_VS_MOVING_GROUP)
{
items = vizcore3d.Clash.GetResultItem(
clash
, resultDataKind == true
? VIZCore3D.NET.Manager.ClashManager.ResultGroupingOptions.ASSEMBLY
: VIZCore3D.NET.Manager.ClashManager.ResultGroupingOptions.PART
);
}
else
{
//items = vizcore3d.Clash.GetResultItem(clash, 0, ckResultAssembly.Checked == true ? VIZCore3D.NET.Manager.ClashManager.ResultGroupingOptions.ASSEMBLY : VIZCore3D.NET.Manager.ClashManager.ResultGroupingOptions.PART);
items = vizcore3d.Clash.GetResultAllSubItem(
clash
, resultDataKind == true
? VIZCore3D.NET.Manager.ClashManager.ResultGroupingOptions.ASSEMBLY
: VIZCore3D.NET.Manager.ClashManager.ResultGroupingOptions.PART
);
}
}
PerformInterferenceCheck()
public bool PerformInterferenceCheck()
모든 간섭검사 (재)수행
Returns
| Type | Description |
|---|---|
| bool | 간섭검사 수행 시작 결과 : True(검사 수행 시작 성공), False(검사 수행 시작 실패) |
PerformInterferenceCheck(List<int> items)
public bool PerformInterferenceCheck(List<int> items)
모든 간섭검사 (재)수행
Parameters
| Name | Type | Description |
|---|---|---|
| items | List<int> | 검사 대상 항목 |
Returns
| Type | Description |
|---|---|
| bool | 간섭검사 수행 시작 결과 : True(검사 수행 시작 성공), False(검사 수행 시작 실패) |
PerformInterferenceCheck(List<ClashTest> items)
public bool PerformInterferenceCheck(List<ClashTest> items)
모든 간섭검사 (재)수행
Parameters
| Name | Type | Description |
|---|---|---|
| items | List<ClashTest> | 검사 대상 항목 |
Returns
| Type | Description |
|---|---|
| bool | 간섭검사 수행 시작 결과 : True(검사 수행 시작 성공), False(검사 수행 시작 실패) |