先祝家人们、宝子门、搬砖工等各行各业的节日快乐。

在这里插入图片描述
感觉是走错了直播间的感觉哈。。。

开始正题

最近项目比较满,所以交付的各种文档就上了来了,再加上有些公司要各种说明 ,SOP文档,使用帮助等东西, 弄起来好头疼。
刚好就在那个时间,我的QQ邮箱接收到了一个广告,提示阿里出了一个Qoder 属于类似于Cursor的AI智能辅助工具。我就想起来试一下,之前测试Cursor和github Copilot ,感觉效果都不是太好,所以本来也没做太大指望,只是阿里出的,对于国内用户应该是要友好一点的吧。至少文档应该有个中文嘛。
所以我就去找了Qoder的主页在这里插入图片描述
结果没发现中文,好伤心。
在这里插入图片描述

算了,虽然 其它单词不认识,但是中间的个绿色的我好像在哪见过。
你懂的。。。

其它的我就不多说了,登录–注册–上号 一条龙。
启动手其实让你选是从vs code导入设置还是从cursor导入设置。可能 我电脑上都有安装,所以让 我选的。
我还是习惯我的黑暗模式。
然后打我的代码仓库。
在这里插入图片描述
在这里插入图片描述
我在右侧写了一些内容,让它帮我优化输入,这里指的是让AI更容易听懂的一个办法。点完就变成了这个了,当然可以退回去。明显要专业很多,对于刚入门的选手还是比较友好的。
在这里插入图片描述
我们选的智能体,这个是能在本地自动修改文档,全自动处理相关操作的。
我现在能看到执行过程:
在这里插入图片描述
完成
写的那是相当的好,反正比我自己写的好。转成pdf后 ,有模有样。
在这里插入图片描述
这只是文档的整理,代码的读取。我也测试了一些帮我优化代码的工作,比如性能可能 发生在哪些地方。
使用下来还不错,目前是注册后有1000个积用,试用半个月时间。
用用还是不错的。
顺便打个广告,注册可以用我这推荐的**[注册链接]**(https://qoder.com/referral?referral_code=4YOX04lhJ7TYDEy7SwUKey2RuXpGLAzK)。
虽然我现在已经为它充值,万一还有用呢。哈哈

在这里插入图片描述
说完优点,说一下缺点,有时候会修改c# .net framework的项目信息,导致直接打不开。 还经常有同一个错误。
这个对于使用git管理代码的人来说,也不是什么大事,知道它改了啥。

到目前,我大概用了半个月,用它写了一部分代码功能,写了几个文档,使用说明,SOP手册,而且还支持你截图让它帮你设计winform窗体。 还有些的方法的优化,同时还学到了一些新的知识点,我觉得还是物有所值 。 相当于请了个小助手,虽然 太专业的事情它确实也干不了,但当个小学生肯定没有问题。
后面有啥问题,再聊吧。
今天1024 就聊这么多。
顺便贴一点它写的代码:

 var swApp = Connect.GetRunningSolidWorks();

 if (swApp!=null)
 {
     // 获取当前活动的装配体文档
     var swAsm = swApp.IActiveDoc2 as AssemblyDoc;
     if (swAsm == null)
     {
         MessageBox.Show("请先打开一个装配体文档!");
         return;
     }
     swApp.DocumentVisible(false,(int)swDocumentTypes_e.swDocPART);
     
     var swAsmModel = swAsm as ModelDoc2;

     // 设置要打开的零件路径(请根据实际需要修改)
     string partPath ="";
     


     // 定义长宽高尺寸(单位:毫米)
     double length = 100.0; // 长度
     double width = 50.0;   // 宽度
     double height = 30.0;  // 高度

     // 定义在装配体中的位置(单位:毫米)
     double posX = 0.0;
     double posY =500;
     double posZ = 0.0;

     // 定义X、Y在装配体中的方向向量(归一化向量)
     double[] xVector = new double[] { 0, 1, 0 }; // X方向
     double[] yVector = new double[] { 0, 0, 1 }; // Y方向

     try
     {
         swApp.CommandInProgress = true;

         int errors = 0;
         int warnings = 0;

         // 1. 隐藏方式打开零件(使用OpenDoc6的隐藏标志)
         // swOpenDocOptions_Silent (1) | swOpenDocOptions_ReadOnly (2) | swOpenDocOptions_ViewOnly (16)
         var swPart = swApp.OpenDoc6(partPath, (int)swDocumentTypes_e.swDocPART, 
             (int)swOpenDocOptions_e.swOpenDocOptions_Silent, 
             "", ref errors, ref warnings) as ModelDoc2;

         if (swPart == null)
         {
             MessageBox.Show($"无法打开零件:{partPath}\n错误代码:{errors}");
             return;
         }

         var partDoc = swPart as PartDoc;

         // 2. 修改零件中的长宽高尺寸
         // 注意:这里假设零件有全局变量或尺寸特征可以修改
         // 方法1: 通过Equation(全局变量)修改
         //ModifyPartDimensionsByEquation(swPart, length, width, height);

         // 方法2: 通过特征尺寸修改(如果知道具体的尺寸名称)
         

          ModifyDimensionBYDimName(swPart, "D1@草图1", length);
          ModifyDimensionBYDimName(swPart, "D2@草图1", width);
          ModifyDimensionBYDimName(swPart, "D1@凸台-拉伸1", height);



         // 3. 重建零件
         swPart.EditRebuild3();

         // 4. 获取零件Body的备份
         var bodyCopies = GetBodyCopies(partDoc);

         if (bodyCopies == null || bodyCopies.Length == 0)
         {
             MessageBox.Show("零件中没有实体!");
             swApp.CloseDoc(partPath);
             return;
         }

         // 切换回装配体
         //swApp.ActivateDoc3(swAsmModel.GetPathName(), false, (int)swRebuildOnActivation_e.swDontRebuildActiveDoc, ref errors);

         // 5. 将Body显示在装配体中
         // 创建坐标变换矩阵
         MathTransform transform = CreateTransformFromPositionAndVectors(swApp, posX, posY, posZ, xVector, yVector);

         // 将Body插入到装配体中
         InsertBodiesIntoAssembly(swApp, swAsmModel, bodyCopies, transform);

         // 关闭隐藏打开的零件
         //swApp.CloseDoc(partPath);

         // 重建装配体
         swAsmModel.EditRebuild3();
         swAsmModel.GraphicsRedraw2();

         MessageBox.Show($"成功插入 {bodyCopies.Length} 个实体到装配体中!");
     }
     catch (Exception ex)
     {
         MessageBox.Show($"操作失败:{ex.Message}\n{ex.StackTrace}");
     }
     finally
     {
         swApp.CommandInProgress = false;
     }
 }
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐