// ================================================ // Construction // ================================================ public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; panelView.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; // GUI nodeDialog = null; // Message EnableMessage = false; vizcore3d.ToolbarAnimation.Visible = false; vizcore3d.ToolbarSimulation.Visible = false; vizcore3d.ToolbarMeasure.Visible = false; vizcore3d.ToolbarClash.Visible = false; vizcore3d.ToolbarPrimitive.Visible = false; }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction string backgroudImagePath = System.IO.Path.Combine(Application.StartupPath, "background.jpg"); if (System.IO.File.Exists(backgroudImagePath) == true) { Image background = Image.FromFile(backgroudImagePath); vizcore3d = new VIZCore3D.NET.VIZCore3DControl(background, VIZCore3D.NET.Data.ImageMode.CENTER, Color.Gray); } else { vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); } vizcore3d.Dock = DockStyle.Fill; this.splitContainer1.Panel2.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; splitContainer1.Panel2.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; // Sample Position lvList.Items.Add(new ListViewItem(new string[] { "CCTV #1", "18200", "4095", "17354" })); lvList.Items.Add(new ListViewItem(new string[] { "CCTV #2", "18300", "-7741", "12679" })); lvList.Items.Add(new ListViewItem(new string[] { "CCTV #3", "18415", "-5890", "17340" })); // Timer loopTimer = new System.Timers.Timer(); loopTimer.Interval = 10; loopTimer.Enabled = false; loopTimer.Elapsed += LoopTimer_Elapsed; loopTimer.AutoReset = true; }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; groupBox1.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; // Web Browser webView.ScriptErrorsSuppressed = true; JavaScriptInterface javascript = new JavaScriptInterface(); javascript.OnOpenModel += Javascript_OnOpenModel; javascript.OnCloseModel += Javascript_OnCloseModel; webView.ObjectForScripting = javascript; // Load Sample Page string startPath = string.Format("{0}\\SamplePage.html", Application.StartupPath); webView.Navigate(startPath); }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction vizcore1 = new VIZCore3D.NET.VIZCore3DControl(); vizcore1.Dock = DockStyle.Fill; splitContainer2.Panel1.Controls.Add(vizcore1); // Event vizcore1.OnInitializedVIZCore3D += VIZCore3D1_OnInitializedVIZCore3D; // Construction vizcore2 = new VIZCore3D.NET.VIZCore3DControl(); vizcore2.Dock = DockStyle.Fill; splitContainer2.Panel2.Controls.Add(vizcore2); // Event vizcore2.OnInitializedVIZCore3D += VIZCore3D2_OnInitializedVIZCore3D; splitContainer2.SplitterDistance = this.Width / 2; }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Main { vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; splitContainer1.Panel2.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; } // Mini { vizcore3d_MiniView = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d_MiniView.Dock = DockStyle.Fill; groupBox2.Controls.Add(vizcore3d_MiniView); // Event vizcore3d_MiniView.OnInitializedVIZCore3D += VIZCore3D_MiniView_OnInitializedVIZCore3D; } }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); vizcore3d = new VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; splitContainer1.Panel2.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; }
public ShowModelDialog() { InitializeComponent(); // Initialize VIZCore3D.NET //VIZCore3D.NET.ModuleInitializer.Run(); // Construction vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; this.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; splitContainer2.Panel2.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; clash = new Data.ClashTest(); }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction Image background = Image.FromFile(System.IO.Path.Combine(Application.StartupPath, "BACKGROUND_SOFTHILLS.jpg")); vizcore3d = new VIZCore3D.NET.VIZCore3DControl(background, Data.ImageMode.CENTER, Color.Gray); vizcore3d.Dock = DockStyle.Fill; splitContainer1.Panel2.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; splitContainer1.Panel2.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; // Demo Mode DemoMode = System.Environment.MachineName.ToUpper() == "GJKIM-ADELL" ? true : false; }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; splitContainer1.Panel1.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; AttributeHelper = new ShxAttributeHelper(); AttributeHelper.OutputLogEvent += AttributeHelper_OutputLogEvent; }
public RotateBlockDialog(string block, string matrix) { InitializeComponent(); Block = block; txtMatrix.Text = matrix; // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; splitContainer1.Panel2.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; splitContainer1.Panel2.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; Models = new List <string>(); SpaceManager = new Dictionary <string, Data.BoundBox3D>(); }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); #region Construction { vizcore3dMain = new VIZCore3D.NET.VIZCore3DControl(); vizcore3dMain.Dock = DockStyle.Fill; splitContainer3.Panel1.Controls.Add(vizcore3dMain); } { vizcore3dDisassembly = new VIZCore3D.NET.VIZCore3DControl(); vizcore3dDisassembly.Dock = DockStyle.Fill; splitContainer3.Panel2.Controls.Add(vizcore3dDisassembly); } { vizcore3dGrid = new VIZCore3D.NET.VIZCore3DControl(); vizcore3dGrid.Dock = DockStyle.Fill; splitContainer4.Panel1.Controls.Add(vizcore3dGrid); } { vizcore3dView = new VIZCore3D.NET.VIZCore3DControl(); vizcore3dView.Dock = DockStyle.Fill; splitContainer4.Panel2.Controls.Add(vizcore3dView); } #endregion #region Event vizcore3dMain.OnInitializedVIZCore3D += VIZCore3D_Main_OnInitializedVIZCore3D; vizcore3dDisassembly.OnInitializedVIZCore3D += VIZCore3D_Disassembly_OnInitializedVIZCore3D; vizcore3dGrid.OnInitializedVIZCore3D += VIZCore3D_Grid_OnInitializedVIZCore3D; vizcore3dView.OnInitializedVIZCore3D += VIZCore3D_View_OnInitializedVIZCore3D; #endregion }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; splitContainer1.Panel2.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; btnSourceColor.BackColor = Color.FromArgb(102, 204, 255); btnTargetColor.BackColor = Color.FromArgb(255, 125, 0); }
public FrmMain(string[] args) { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Background int background_mode = 0; if (args != null && args.Length == 2) { if (args[0].ToUpper() == "BACKGROUND") { background_mode = Convert.ToInt32(args[1]); } } // Construction string backgroudImagePath = System.IO.Path.Combine(Application.StartupPath, "background.jpg"); if (background_mode != 0) { // 30 : HHI // 31 : HSHI vizcore3d = new VIZCore3DControl((VIZCore3D.NET.BackgroundImage)background_mode); } else if (System.IO.File.Exists(backgroudImagePath) == true) { Image background = Image.FromFile(backgroudImagePath); vizcore3d = new VIZCore3D.NET.VIZCore3DControl(background, VIZCore3D.NET.Data.ImageMode.CENTER, Color.Gray); } else { vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); } vizcore3d.Dock = DockStyle.Fill; this.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; plView.Controls.Add(vizcore3d); lvSnapshot.Dock = DockStyle.Fill; lvSnapshot.SendToBack(); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; splitContainer1.Panel2.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; MiniViewDlg = new MiniViewDialog(); MiniViewDlg.FormClosing += MiniViewDlg_FormClosing; MiniViewCtrl = new MiniViewControl(); }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; splitContainer1.Panel2.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; // Load Sample string path = System.IO.Path.Combine(Application.StartupPath, "Sample"); string[] files = System.IO.Directory.GetFiles(path, "*.*", System.IO.SearchOption.TopDirectoryOnly); LoadSample(files); }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; splitContainer1.Panel2.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; CVR_Path = string.Format("{0}\\CVR", Application.StartupPath); if (System.IO.Directory.Exists(CVR_Path) == false) { System.IO.Directory.CreateDirectory(CVR_Path); } }
// ================================================ // Construction // ================================================ public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction vizcore3d = new VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; panelView.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; // GUI nodeDialog = null; // Message EnableMessage = false; }
public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction vizcore3d = new VIZCore3D.NET.VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; //splitContainer1.Panel1.Controls.Add(vizcore3d); groupBox2.Controls.Add(vizcore3d); DrawingCtrl = new DrawingControl(); DrawingCtrl.Dock = DockStyle.Fill; //splitContainer1.Panel2.Controls.Add(DrawingCtrl); groupBox3.Controls.Add(DrawingCtrl); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; }
// ================================================ // Construction // ================================================ public FrmMain() { InitializeComponent(); // Initialize VIZCore3D.NET VIZCore3D.NET.ModuleInitializer.Run(); // Construction vizcore3d = new VIZCore3DControl(); vizcore3d.Dock = DockStyle.Fill; splitContainer1.Panel2.Controls.Add(vizcore3d); // Event vizcore3d.OnInitializedVIZCore3D += VIZCore3D_OnInitializedVIZCore3D; fileExplorer = new FileExplorerControl(); fileExplorer.Dock = DockStyle.Fill; splitContainer1.Panel1.Controls.Add(fileExplorer); // Event fileExplorer.OnToVIZEvent += FileExplorer_OnToVIZEvent; }
public Object3dTestDialog(VIZCore3D.NET.VIZCore3DControl ctrl) { InitializeComponent(); vizcore3d = ctrl; }
/// <summary> /// 이벤트 등록 /// </summary> private static void InitializeVIZCore3DEvent(VIZCore3D.NET.VIZCore3DControl vizcore3d) { }
// ================================================ // Event - VIZCore3D.NET // ================================================ #region Event - OnInitializedVIZCore3D public static bool OnInitializedVIZCore3D(VIZCore3D.NET.VIZCore3DControl vizcore3d) { //MessageBox.Show("OnInitializedVIZCore3D", "VIZCore3D.NET"); // ================================================================ // Example // ================================================================ //vizcore3d.License.LicenseFile("C:\\Temp\\VIZCore3D.NET.lic"); // 라이선스 파일 //vizcore3d.License.LicenseServer("127.0.0.1", 8901); // 라이선스 서버 - 제품 오토 선택 //vizcore3d.License.LicenseServer("127.0.0.1", 8901, Data.Products.AUTO); // 라이선스 서버 - 제품 오토 선택 //vizcore3d.License.LicenseServer("127.0.0.1", 8901, Data.Products.VIZZARD_MANAGER); // 라이선스 서버 - 지정된 제품으로 인증 //vizcore3d.License.LicenseServer("127.0.0.1", 8901, Data.Products.VIZZARD_STANDARD); // 라이선스 서버 - 지정된 제품으로 인증 //vizcore3d.License.LicenseServer("127.0.0.1", 8901, Data.Products.VIZCORE3D_MANAGER); // 라이선스 서버 - 지정된 제품으로 인증 //vizcore3d.License.LicenseServer("127.0.0.1", 8901, Data.Products.VIZCORE3D_STANDARD); // 라이선스 서버 - 지정된 제품으로 인증 // ================================================================ // TEST // ================================================================ //VIZCore3D.NET.Data.LicenseResults result = vizcore3d.License.LicenseFile("C:\\License\\VIZCore3D.NET.lic"); //VIZCore3D.NET.Data.LicenseResults result = vizcore3d.License.LicenseServer("127.0.0.1", 8901); //VIZCore3D.NET.Data.LicenseResults result = vizcore3d.License.LicenseServer("192.168.0.215", 8901); //if (result != VIZCore3D.NET.Data.LicenseResults.SUCCESS) //{ // MessageBox.Show(string.Format("LICENSE CODE : {0}", result.ToString()), "VIZCore3D.NET", MessageBoxButtons.OK, MessageBoxIcon.Error); // return; //} // ================================================================ // License Helper // ================================================================ #region 라이선스 // 라이선스 정보 조회 VIZCore3D.NET.Utility.LicenseHelper.LicenseData licenseData = VIZCore3D.NET.Utility.LicenseHelper.GetLicenseDataKind(); // 등록된 정보 없는 경우, 설정 다이얼로그 실행 if (licenseData == VIZCore3D.NET.Utility.LicenseHelper.LicenseData.NONE) { VIZCore3D.NET.Dialogs.LicenseDialog dlg = new VIZCore3D.NET.Dialogs.LicenseDialog(); if (dlg.ShowDialog() != DialogResult.OK) { return(false); } } // 라이선스 정보 재조회 licenseData = VIZCore3D.NET.Utility.LicenseHelper.GetLicenseDataKind(); // 등록된 정보 조회 Dictionary <string, string> licenseInfo = VIZCore3D.NET.Utility.LicenseHelper.GetLicenseInformation(); VIZCore3D.NET.Data.LicenseResults licenseResult = VIZCore3D.NET.Data.LicenseResults.NONE; // 라이선스 서버 if (licenseData == VIZCore3D.NET.Utility.LicenseHelper.LicenseData.SERVER) { licenseResult = vizcore3d.License.LicenseServer( licenseInfo.ContainsKey("LICENSE_IP") == true ? licenseInfo["LICENSE_IP"] : String.Empty , licenseInfo.ContainsKey("LICENSE_PORT") == true ? Convert.ToInt32(licenseInfo["LICENSE_PORT"]) : 8901 ); } // 라이선스 파일 else if (licenseData == VIZCore3D.NET.Utility.LicenseHelper.LicenseData.FILE) { licenseResult = vizcore3d.License.LicenseFile( licenseInfo.ContainsKey("LICENSE_FILE") == true ? licenseInfo["LICENSE_FILE"] : String.Empty ); } // 인증 결과 if (licenseResult != VIZCore3D.NET.Data.LicenseResults.SUCCESS) { MessageBox.Show(string.Format("LICENSE CODE : {0}", licenseResult.ToString()), "VIZCore3D.NET", MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } #endregion // Init. VIZCore3D.NET InitializeVIZCore3D(vizcore3d); InitializeVIZCore3DEvent(vizcore3d); return(true); }
// ================================================ // Function - VIZCore3D.NET : Initialize // ================================================ #region Function - VIZCore3D.NET : Initialize private static void InitializeVIZCore3D(VIZCore3D.NET.VIZCore3DControl vizcore3d) { // ================================================================ // 모델 열기 시, 3D 화면 Rendering 차단 // ================================================================ vizcore3d.BeginUpdate(); // ================================================================ // 설정 - 기본 // ================================================================ #region 설정 - 기본 // 모델 자동 언로드 (파일 노드 언체크 시, 언로드) vizcore3d.Model.UncheckToUnload = false; // 모델 열기 시, Edge 정보 로드 활성화 vizcore3d.Model.LoadEdgeData = false; // 모델 열기 시, Edge 정보 생성 활성화 vizcore3d.Model.GenerateEdgeData = false; // 모델 조회 시, 하드웨어 가속 vizcore3d.View.EnableHardwareAcceleration = true; // Undo/Redo (비)활성화 vizcore3d.Model.EnableUndoRedo = false; // 모델 열기 시, 스트럭처 병합 설정 vizcore3d.Model.OpenMergeStructureMode = VIZCore3D.NET.Data.MergeStructureModes.NONE; // 모델 저장 시, 스트럭처 병합 설정 vizcore3d.Model.SaveMergeStructureMode = VIZCore3D.NET.Data.MergeStructureModes.NONE; // 실린더 원형 품질 개수 : Nomal(12~36), Small(6~36) vizcore3d.Model.ReadNormalCylinderSide = 12; vizcore3d.Model.ReadSmallCylinderSide = 6; // 보이는 모델만 저장 // VIZXML to VIZ 옵션 vizcore3d.Model.VIZXMLtoVIZOption = VIZCore3D.NET.Data.ExportVIZXMLToVIZOptions.LOAD_UNLOADED_NODE; // 선택 가능 개체 : 전체, 불투명한 개체 vizcore3d.View.SelectionObject3DType = VIZCore3D.NET.Data.SelectionObject3DTypes.ALL; // 개체 선택 유형 : 색상, 경계로 선택 (개체), 경계로 선택 (전체) vizcore3d.View.SelectionMode = VIZCore3D.NET.Data.Object3DSelectionOptions.HIGHLIGHT_COLOR; // 개체 선택 색상 vizcore3d.View.SelectionColor = Color.Red; // 모델 조회 시, Pre-Select 설정 vizcore3d.View.PreSelect.Enable = false; // 모델 조회 시, Pre-Select 색상 설정 vizcore3d.View.PreSelect.HighlightColor = Color.Lime; // 모델 조회 시, Pre-Select Label vizcore3d.View.PreSelect.Label = VIZCore3D.NET.Data.PreSelectStyle.LabelKind.HIERACHY_BOTTOM_UP; // 모델 조회 시, Pre-Select Font vizcore3d.View.PreSelect.LabelFont = new Font("Arial", 10.0f); #endregion // ================================================================ // 설정 - 보기 // ================================================================ #region 설정 - 보기 // 자동 애니메이션 : 박스줌, 개체로 비행 등 기능에서 애니메이션 활성화/비활성화 vizcore3d.View.EnableAnimation = true; // 자동화면맞춤 vizcore3d.View.EnableAutoFit = false; // 연속회전모드 vizcore3d.View.EnableInertiaRotate = false; // 확대/축소 비율 : 5.0f ~ 50.0f vizcore3d.View.ZoomRatio = 30.0f; // 회전각도 vizcore3d.View.RotationAngle = 90.0f; // 회전 축 vizcore3d.View.RotationAxis = VIZCore3D.NET.Data.Axis.X; #endregion // ================================================================ // 설정 - 탐색 // ================================================================ #region 설정 - 탐색 // Z축 고정 vizcore3d.Walkthrough.LockZAxis = true; // 선속도 : m/s vizcore3d.Walkthrough.Speed = 2.0f; // 각속도 vizcore3d.Walkthrough.AngularSpeed = 30.0f; // 높이 vizcore3d.Walkthrough.AvatarHeight = 1800.0f; // 반지름 vizcore3d.Walkthrough.AvatarCollisionRadius = 400.0f; // 숙임높이 vizcore3d.Walkthrough.AvatarBowWalkHeight = 1300.0f; // 충돌 vizcore3d.Walkthrough.UseAvatarCollision = false; // 중력 vizcore3d.Walkthrough.UseAvatarGravity = false; // 숙임 vizcore3d.Walkthrough.UseAvatarBowWalk = false; // 모델 vizcore3d.Walkthrough.AvatarModel = (int)VIZCore3D.NET.Data.AvatarModels.MAN1; // 자동줌 vizcore3d.Walkthrough.EnableAvatarAutoZoom = true; // 충돌상자보기 vizcore3d.Walkthrough.ShowAvatarCollisionCylinder = false; #endregion // ================================================================ // 설정 - 조작 // ================================================================ #region 설정 - 조작 // 시야각 vizcore3d.View.FOV = 60.0f; // 광원 세기 vizcore3d.View.SpecularGamma = 30.0f; // 모서리 굵기 vizcore3d.View.EdgeWidthRatio = 0.0f; // X-Ray 모델 조회 시, 개체 색상 - 선택색상, 모델색상 vizcore3d.View.XRay.ColorType = VIZCore3D.NET.Data.XRayColorTypes.SELECTION_COLOR; // 배경유형 //vizcore3d.View.BackgroundMode = VIZCore3D.NET.Data.BackgroundModes.COLOR_ONE; // 배경색1 //vizcore3d.View.BackgroundColor1 = Color.Gray; // 배경색2 //vizcore3d.View.BackgroundColor2 = Color.Gray; #endregion // ================================================================ // 설정 - 노트 // ================================================================ #region 설정 - 노트 // 배경색 vizcore3d.Review.Note.BackgroundColor = Color.Yellow; // 배경 투명 vizcore3d.Review.Note.BackgroudTransparent = false; // 글자색 vizcore3d.Review.Note.FontColor = Color.Black; // 글자 크기 vizcore3d.Review.Note.FontSize = VIZCore3D.NET.Data.FontSizeKind.SIZE16; // 글자 굵게 vizcore3d.Review.Note.FontBold = true; // 지시선(라인) 색상 vizcore3d.Review.Note.LineColor = Color.White; // 지시선(라인) 두께 vizcore3d.Review.Note.LineWidth = 2; // 지시선 중앙 연결 vizcore3d.Review.Note.LinkArrowTailToText = VIZCore3D.NET.Manager.NoteManager.LinkArrowTailToTextKind.OUTLINE; // 화살표 색상 vizcore3d.Review.Note.ArrowColor = Color.Red; // 화살표 두께 vizcore3d.Review.Note.ArrowWidth = 10; // 텍스트상자 라인 색상 vizcore3d.Review.Note.TextBoxLineColor = Color.Black; // 심볼 배경색 vizcore3d.Review.Note.SymbolBackgroundColor = Color.Red; // 심볼 글자색 vizcore3d.Review.Note.SymbolFontColor = Color.White; // 심볼 크기 vizcore3d.Review.Note.SymbolSize = 10; // 심볼 글자 크기 vizcore3d.Review.Note.SymbolFontSize = VIZCore3D.NET.Data.FontSizeKind.SIZE16; // 심볼 글자 굵게 vizcore3d.Review.Note.SymbolFontBold = false; #endregion // ================================================================ // 설정 - 측정 // ================================================================ #region 설정 - 측정 // 반복 모드 vizcore3d.Review.Measure.RepeatMode = false; // 기본 스타일 VIZCore3D.NET.Data.MeasureStyle measureStyle = vizcore3d.Review.Measure.GetStyle(); // Prefix 조회 measureStyle.Prefix = true; // Frame(좌표계)로 표시 measureStyle.Frame = true; // DX, DY, DZ 표시 measureStyle.DX_DY_DZ = true; // 측정 단위 표시 measureStyle.Unit = true; // 측정 단위 유형 measureStyle.UnitKind = VIZCore3D.NET.Data.MeasureUnitKind.RUT_MILLIMETER; // 소수점 이하 자리수 measureStyle.NumberOfDecimalPlaces = 2; // 연속거리 표시 measureStyle.ContinuousDistance = true; // 배경 투명 measureStyle.BackgroundTransparent = false; // 배경색 measureStyle.BackgroundColor = Color.Blue; // 글자색 measureStyle.FontColor = Color.White; // 글자크기 measureStyle.FontSize = VIZCore3D.NET.Data.FontSizeKind.SIZE14; // 글자 두껍게 measureStyle.FontBold = false; // 지시선 색 measureStyle.LineColor = Color.White; // 지시선 두께 measureStyle.LineWidth = 2; // 화살표 색 measureStyle.ArrowColor = Color.Red; // 화살표 크기 measureStyle.ArrowSize = 10; // 보조 지시선 표시 measureStyle.AssistantLine = true; // 보조 지시선 표시 개수 measureStyle.AssistantLineCount = -1; // 보조 지시선 라인 스타일 measureStyle.AssistantLineStyle = VIZCore3D.NET.Data.MeasureStyle.AssistantLineType.DOTTEDLINE; // 선택 위치 표시 measureStyle.PickPosition = true; // 거리 측정 텍스트 정렬 measureStyle.AlignDistanceText = true; // 거리 측정 텍스트 위치 measureStyle.AlignDistanceTextPosition = 2; // 거리 측정 텍스트 오프셋 measureStyle.AlignDistanceTextMargine = 5; // 측정 스타일 설정 vizcore3d.Review.Measure.SetStyle(measureStyle); #endregion // ================================================================ // 설정 - 단면 // ================================================================ #region 설정 - 단면 // 단면 좌표간격으로 이동 vizcore3d.Section.MoveSectionByFrameGrid = true; // 단면 보기 vizcore3d.Section.ShowSectionPlane = true; // 단면선 표시 vizcore3d.Section.ShowSectionLine = true; // 단면 단일색 표시 vizcore3d.Section.ShowSectionLineColor = false; // 단면 단일색 vizcore3d.Section.SectionLineColor = Color.Red; #endregion // ================================================================ // 설정 - 간섭검사 // ================================================================ // 다중간섭검사 vizcore3d.Clash.EnableMultiThread = true; // ================================================================ // 설정 - 프레임(SHIP GRID) // ================================================================ #region 설정 - 프레임 // 프레임 평면 설정 vizcore3d.Frame.XYPlane = true; vizcore3d.Frame.YZPlane = true; vizcore3d.Frame.ZXPlane = true; vizcore3d.Frame.PlanLine = true; vizcore3d.Frame.SectionLine = true; vizcore3d.Frame.ElevationLine = true; // 좌표값 표기 vizcore3d.Frame.ShowNumber = true; // 모델 앞에 표기 vizcore3d.Frame.BringToFront = false; // Frame(좌표계, SHIP GRID) 색상 vizcore3d.Frame.ForeColor = Color.Black; // 홀수번째 표시 vizcore3d.Frame.ShowOddNumber = true; // 짝수번째 표시 vizcore3d.Frame.ShowEvenNumber = true; // 단면상자에 자동 맞춤 vizcore3d.Frame.AutoFitSectionBox = true; #endregion // ================================================================ // 설정 - 툴바 // ================================================================ #region 설정 - 툴바 vizcore3d.ToolbarMain.Visible = true; vizcore3d.ToolbarNote.Visible = false; vizcore3d.ToolbarMeasure.Visible = false; vizcore3d.ToolbarSection.Visible = false; vizcore3d.ToolbarClash.Visible = false; vizcore3d.ToolbarAnimation.Visible = false; vizcore3d.ToolbarSimulation.Visible = false; vizcore3d.ToolbarPrimitive.Visible = false; #endregion // ================================================================ // 설정 - 상태바 // ================================================================ vizcore3d.Statusbar.Visible = false; // ================================================================ // 모델 열기 시, 3D 화면 Rendering 재시작 // ================================================================ vizcore3d.EndUpdate(); }
private void ResetViewFunc(VIZCore3D.NET.VIZCore3DControl ctrl) { ctrl.View.XRay.Clear(); ctrl.View.XRay.Enable = false; ctrl.View.ResetView(); }
/// <summary> /// 패드 연결 /// </summary> /// <returns></returns> public bool Connect(VIZCore3D.NET.VIZCore3DControl vizcore) { if (IsConnected) { return(true); } var controllers = new[] { new Controller(UserIndex.One), new Controller(UserIndex.Two), new Controller(UserIndex.Three), new Controller(UserIndex.Four) }; // Get 1st controller available Controller controller = null; foreach (var selectControler in controllers) { if (selectControler.IsConnected) { controller = selectControler; break; } } if (controller == null) { return(false); } IsConnected = true; System.Threading.Tasks.Task task = new System.Threading.Tasks.Task(() => { //이전 상태 if (!IsConnected) { return; } bool bButtonADown = false; bool bButtonBDown = false; bool bButtonXDown = false; bool bButtonYDown = false; var previousState = controller.GetState(); while (IsConnected && controller.IsConnected) { var state = controller.GetState(); while (previousState.PacketNumber != state.PacketNumber) { if (!vizcore.Walkthrough.Avatar) { if (state.Gamepad.Buttons.HasFlag(GamepadButtonFlags.Start)) { //동기화 함수로 호출 필요 //vizcore.Walkthrough.Avatar = !vizcore.Walkthrough.Avatar; } break; } else { if (state.Gamepad.Buttons.HasFlag(GamepadButtonFlags.Start)) { if (OnObjectSelectEvent != null) { OnObjectSelectEvent(this, new EventArgs()); } } } float moveX = 0, moveY = 0, avatarRot = 0; float rotateX = 0, rotateY = 0; //이동 { if (state.Gamepad.LeftThumbX > 0) { avatarRot = ((float)state.Gamepad.LeftThumbX / 32767.0f); } else if (state.Gamepad.LeftThumbX < 0) { avatarRot = ((float)state.Gamepad.LeftThumbX / 32768.0f); } if (state.Gamepad.Buttons.HasFlag(GamepadButtonFlags.DPadLeft)) { moveX = 1.0f; } if (state.Gamepad.Buttons.HasFlag(GamepadButtonFlags.DPadRight)) { moveX = -1.0f; } if (state.Gamepad.LeftThumbY > 0) { moveY = ((float)state.Gamepad.LeftThumbY / 32767.0f); } else if (state.Gamepad.LeftThumbY < 0) { moveY = ((float)state.Gamepad.LeftThumbY / 32768.0f); } vizcore.Walkthrough.Move(moveY, moveX); vizcore.Walkthrough.Rotate(avatarRot * -1.0f); } // 회전 { if (state.Gamepad.RightThumbX > 0) { rotateX = ((float)state.Gamepad.RightThumbX / 32767.0f); } else if (state.Gamepad.RightThumbX < 0) { rotateX = ((float)state.Gamepad.RightThumbX / 32768.0f); } if (state.Gamepad.RightThumbY > 0) { rotateY = ((float)state.Gamepad.RightThumbY / 32767.0f); } else if (state.Gamepad.RightThumbY < 0) { rotateY = ((float)state.Gamepad.RightThumbY / 32768.0f); } vizcore.Walkthrough.ViewRotate(rotateY * -1.0f, rotateX * -1.0f); } //Up { if (state.Gamepad.Buttons.HasFlag(GamepadButtonFlags.DPadUp)) { vizcore.Walkthrough.Up(1.0f); } if (state.Gamepad.Buttons.HasFlag(GamepadButtonFlags.DPadDown)) { vizcore.Walkthrough.Up(-1.0f); } } // 숙임 if (state.Gamepad.Buttons.HasFlag(GamepadButtonFlags.A)) { if (!bButtonADown) { bButtonADown = true; vizcore.Walkthrough.UseAvatarBowWalk = !vizcore.Walkthrough.UseAvatarBowWalk; if (OnKeyDownEvent != null) { OnKeyDownEvent(this, new EventArgs()); } } } else { bButtonADown = false; } // 충돌 if (state.Gamepad.Buttons.HasFlag(GamepadButtonFlags.B)) { if (!bButtonBDown) { bButtonBDown = true; vizcore.Walkthrough.UseAvatarCollision = !vizcore.Walkthrough.UseAvatarCollision; if (OnKeyDownEvent != null) { OnKeyDownEvent(this, new EventArgs()); } } } else { bButtonBDown = false; } // 전체 활성화 / 비활성화 if (state.Gamepad.Buttons.HasFlag(GamepadButtonFlags.X)) { if (!bButtonXDown) { bButtonXDown = true; EnableOption = !EnableOption; vizcore.Walkthrough.UseAvatarGravity = EnableOption; vizcore.Walkthrough.UseAvatarCollision = EnableOption; vizcore.Walkthrough.UseAvatarBowWalk = EnableOption; if (OnKeyDownEvent != null) { OnKeyDownEvent(this, new EventArgs()); } } } else { bButtonXDown = false; } // 중력 if (state.Gamepad.Buttons.HasFlag(GamepadButtonFlags.Y)) { if (!bButtonYDown) { bButtonYDown = true; vizcore.Walkthrough.UseAvatarGravity = !vizcore.Walkthrough.UseAvatarGravity; if (OnKeyDownEvent != null) { OnKeyDownEvent(this, new EventArgs()); } } } else { bButtonYDown = false; } break; } previousState = state; } }); task.Start(); return(true); }