From f589894c84d47b9671eef6d3a8337b6b51b32edb Mon Sep 17 00:00:00 2001
From: lixiaojun <1287241240@qq.com>
Date: 星期二, 21 一月 2025 12:15:39 +0800
Subject: [PATCH] 阀门视图修改

---
 WinFrmUI/Yw.WinFrmUI.Hydro.L3d.Core/02-panel/NetworkPanel.cs |   64 ++++++++++++++++++++++++++-----
 1 files changed, 53 insertions(+), 11 deletions(-)

diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.L3d.Core/02-panel/NetworkPanel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.L3d.Core/02-panel/NetworkPanel.cs
index 13b48da..e4317df 100644
--- a/WinFrmUI/Yw.WinFrmUI.Hydro.L3d.Core/02-panel/NetworkPanel.cs
+++ b/WinFrmUI/Yw.WinFrmUI.Hydro.L3d.Core/02-panel/NetworkPanel.cs
@@ -1,6 +1,4 @@
-锘縰sing DevExpress.CodeParser;
-using DevExpress.XtraCharts.Native;
-using Yw.Untity;
+锘縰sing Yw.Untity;
 
 namespace Yw.WinFrmUI.HydroL3d
 {
@@ -88,12 +86,22 @@
 
             // 鍒涘缓閫忚鎶曞奖鍙樻崲
             gl.Perspective(_paras.Perspective.Fovy, _paras.Perspective.Aspect, _paras.Perspective.Near, _paras.Perspective.Far);
+            //gl.LoadIdentity();
+            //gl.Ortho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0);
+
+            gl.LookAt(_paras.LookAt.Eye.X, _paras.LookAt.Eye.Y, _paras.LookAt.Eye.Z,
+    _paras.LookAt.Center.X, _paras.LookAt.Center.Y, _paras.LookAt.Center.Z,
+    _paras.LookAt.Up.X, _paras.LookAt.Up.Y, _paras.LookAt.Up.Z);
 
             // 璁剧疆褰撳墠鐭╅樀涓烘ā鍨嬭鍥剧煩闃�
             gl.MatrixMode(OpenGL.GL_MODELVIEW);
 
             //閲嶇疆褰撳墠鎸囧畾鐨勭煩闃典负鍗曚綅鐭╅樀,灏嗗綋鍓嶇殑鐢ㄦ埛鍧愭爣绯荤殑鍘熺偣绉诲埌浜嗗睆骞曚腑蹇�
             gl.LoadIdentity();
+
+
+
+
 
             //骞崇Щ
             gl.Translate(_paras.Translation.X, _paras.Translation.Y, _paras.Translation.Z);
@@ -110,9 +118,40 @@
 
             _network.Draw(gl);
 
-            gl.LookAt(_paras.LookAt.Eye.X, _paras.LookAt.Eye.Y, _paras.LookAt.Eye.Z,
-                _paras.LookAt.Center.X, _paras.LookAt.Center.Y, _paras.LookAt.Center.Z,
-                _paras.LookAt.Up.X, _paras.LookAt.Up.Y, _paras.LookAt.Up.Z);
+            //float[] minCorner = { _paras.BoundingBox.Min.X, _paras.BoundingBox.Min.Y, _paras.BoundingBox.Min.Z };
+            //float[] maxCorner = { _paras.BoundingBox.Max.X, _paras.BoundingBox.Max.Y, _paras.BoundingBox.Max.Z };
+
+            //gl.Begin(OpenGL.GL_POINT);
+            //gl.Vertex(minCorner[0], minCorner[1], minCorner[2]);
+            //gl.End();
+
+            //gl.Begin(OpenGL.GL_POINT);
+            //gl.Vertex(maxCorner[0], maxCorner[1], maxCorner[2]);
+            //gl.End();
+
+            //gl.Begin(OpenGL.GL_LINE_LOOP);
+            //// 缁樺埗搴曢潰
+            //gl.Vertex(minCorner[0], minCorner[1], minCorner[2]);
+            //gl.Vertex(maxCorner[0], minCorner[1], minCorner[2]);
+            //gl.Vertex(maxCorner[0], maxCorner[1], minCorner[2]);
+            //gl.Vertex(minCorner[0], maxCorner[1], minCorner[2]);
+
+            //// 缁樺埗椤堕潰
+            //gl.Vertex(minCorner[0], minCorner[1], maxCorner[2]);
+            //gl.Vertex(maxCorner[0], minCorner[1], maxCorner[2]);
+            //gl.Vertex(maxCorner[0], maxCorner[1], maxCorner[2]);
+            //gl.Vertex(minCorner[0], maxCorner[1], maxCorner[2]);
+
+            //// 杩炴帴搴曢潰鍜岄《闈㈢殑杈�
+            //gl.Vertex(minCorner[0], minCorner[1], minCorner[2]);
+            //gl.Vertex(minCorner[0], minCorner[1], maxCorner[2]);
+            //gl.Vertex(maxCorner[0], minCorner[1], minCorner[2]);
+            //gl.Vertex(maxCorner[0], minCorner[1], maxCorner[2]);
+            //gl.Vertex(maxCorner[0], maxCorner[1], minCorner[2]);
+            //gl.Vertex(maxCorner[0], maxCorner[1], maxCorner[2]);
+            //gl.Vertex(minCorner[0], maxCorner[1], minCorner[2]);
+            //gl.Vertex(minCorner[0], maxCorner[1], maxCorner[2]);
+            //gl.End();
 
             gl.Flush();   //寮哄埗鍒锋柊
 
@@ -176,8 +215,8 @@
                         int deltaX = e.X - _mouseLeftDownRotatePoint.X;
                         int deltaY = e.Y - _mouseLeftDownRotatePoint.Y;
 
-                        _rotationX += deltaY * 0.05f;
-                        _rotationY += deltaX * 0.05f;
+                        _rotationX += deltaY * 0.1f;
+                        _rotationY += deltaX * 0.1f;
 
                         _mouseLeftDownRotatePoint = e.Location;
                         return true;
@@ -291,7 +330,6 @@
             {
                 this.openGLControl1.Invalidate();
             }
-
         }
 
         private void openGLControl1_MouseUp(object sender, MouseEventArgs e)
@@ -311,9 +349,13 @@
                 return;
             }
             var pt = this.openGLControl1.PointToClient(MousePosition);
-            var list = this.openGLControl1.OpenGL.UnProject(pt.X, pt.Y, 0);
+            var list = this.openGLControl1.OpenGL.UnProject(pt.X, this.openGLControl1.Height - pt.Y, 0);
             var wpt = new Point3d(list[0], list[1], list[2]);
-            _network.Hover(wpt);
+            var list1 = _network.Hover(wpt);
+            if (list1 != null && list1.Count > 0)
+            {
+
+            }
         }
 
         private void openGLControl1_MouseDoubleClick(object sender, MouseEventArgs e)

--
Gitblit v1.9.3