QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 4214|回复: 7
收起左侧

[求助] Solidworks 二次开发 装配体中移动旋转零件

[复制链接]
发表于 2013-3-8 15:40:44 | 显示全部楼层 |阅读模式 来自: 中国江苏南京

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
对装配体中的零件实现平移功能,在X,Y,Z方向分别实现平移,程序如下:6 S- r0 o9 D- }/ S+ O9 D$ m+ u
        //X方向平移
9 r$ y' e7 r' i. ?        private void button3_Click(object sender, EventArgs e) . t6 e4 K8 _  ]' B; l1 N
        {1 j% a8 e: E  O  ]0 _
            IAssemblyDoc iAssemblyDoc = (IAssemblyDoc)iModelDoc;//装配体8 f  S/ Q( X$ l* D) G
            IComponent2 Xaxis = iAssemblyDoc.GetComponentByName("xx-1"); //选定组件- b- |* _5 W6 n0 ?) R* F2 n
            double[] arraydataX = { 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.2, 0, 0, 1, 0, 0, 0 }; //变换矩阵
  |+ d* _6 s" p/ e+ c7 p) C            IMathTransform transformX = (IMathTransform)iMUtility.CreateTransform(arraydataX);0 c2 K. Y/ Z  Q& l, h7 I% _. N
            Xaxis.Transform2 = (MathTransform)transformX;9 j! N) o2 A+ d
            iModelDoc.EditRebuild3(); //重塑模型
+ S3 m# ^8 ]$ R8 \( g( c# q4 j+ E        }
7 f0 P# h( z/ t1 d6 z/ J9 |# W7 r& Q
能够实现移动,但是明显不是X方向的移动,而且移动一次之后便不能继续移动了,有哪位朋友知道是为啥呢?帮帮忙
' v6 l8 h1 a  c7 B7 l, q+ _
0(5INRUA8%8J{E]I71CVD4X.jpg
发表于 2013-3-8 15:54:37 | 显示全部楼层 来自: 中国广东广州
看不懂啊,不过楼主貌似发错地方了,有二次开发的区
 楼主| 发表于 2013-3-8 16:00:21 | 显示全部楼层 来自: 中国江苏南京
zhjailfq 发表于 2013-3-8 15:54 static/image/common/back.gif' B/ ]9 N3 C# p$ o- w6 G' c
看不懂啊,不过楼主貌似发错地方了,有二次开发的区
1 d( j' e; q! r
好的,那我找找
 楼主| 发表于 2013-3-8 16:04:11 | 显示全部楼层 来自: 中国江苏南京
zhjailfq 发表于 2013-3-8 15:54 static/image/common/back.gif. o2 S2 @3 H3 |/ o( Z3 A
看不懂啊,不过楼主貌似发错地方了,有二次开发的区

( {0 _) L& h! k% L( H' H好像没有专门是Solidworks二次开发的区
发表于 2013-3-8 20:18:50 | 显示全部楼层 来自: 中国湖北咸宁
楼主是编程高手啊
发表于 2014-7-24 15:07:09 | 显示全部楼层 来自: 中国重庆
你好,我最近也在做Solidworks二次开发,现在遇到点问题。你是怎么实现零件移动的,能不能指导一下我啊!十分感谢!我的qq:1633578693
发表于 2014-7-24 15:34:37 | 显示全部楼层 来自: 中国辽宁丹东
朋友用的语言是C吧?代码看不懂,如果VB略还懂些。- l3 ^- i5 a9 z9 [; P
我按VB的运用方式大致解释,供你参考。$ A% t* r4 c( S3 x' m$ ]. `
我感觉应该是变量问题,移动要有坐标值,起点至终点,如果只能移动一次,说明你只给它一个终点的值,点击按钮或用时钟控件,它也只能移动在这个位置后不动了。
* a3 K& n* k" I2 U应该设一个变量,假如X方向每次移动单位26 q$ a- ^7 K' y! O( C0 u
X目的值变量=X目的值变量+2) O: j3 Z* \, `% g& K1 Z
这样运用时钟控件的启动和停止,X目的值变量不断增加,运行N个周期,就出现连续移动效果。
发表于 2019-7-19 09:00:28 | 显示全部楼层 来自: 中国重庆
谢谢楼主分享,解决了我的问题
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

快速回复 返回顶部 返回列表