QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

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

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

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

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

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

x
对装配体中的零件实现平移功能,在X,Y,Z方向分别实现平移,程序如下:+ @6 \5 E0 y" M
        //X方向平移
: d2 Y9 _4 r5 h% d. v3 |* I0 E        private void button3_Click(object sender, EventArgs e) * _; f0 U/ y: ?& I5 T; X2 ?
        {$ b; p! H3 A; q4 \& f0 h  R
            IAssemblyDoc iAssemblyDoc = (IAssemblyDoc)iModelDoc;//装配体
% l7 @9 P6 B/ m. z; v            IComponent2 Xaxis = iAssemblyDoc.GetComponentByName("xx-1"); //选定组件$ v: L, W( x$ M% r4 Y( {
            double[] arraydataX = { 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.2, 0, 0, 1, 0, 0, 0 }; //变换矩阵
+ e+ m' T9 }) ^0 p& N, V- C            IMathTransform transformX = (IMathTransform)iMUtility.CreateTransform(arraydataX);* |2 `& J9 M- ^
            Xaxis.Transform2 = (MathTransform)transformX;8 s* a+ y, L. L" |+ [
            iModelDoc.EditRebuild3(); //重塑模型9 W0 M! c4 H( y/ X! x1 w- s' R9 X
        }7 L0 X: W' G6 c; [4 \) Y& r

# D( s6 x7 V+ H- @# `8 t) ]6 k能够实现移动,但是明显不是X方向的移动,而且移动一次之后便不能继续移动了,有哪位朋友知道是为啥呢?帮帮忙
8 P' [7 N# h- K) n) M
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.gif2 r% K4 I: m/ n& m
看不懂啊,不过楼主貌似发错地方了,有二次开发的区
$ x2 J, Y, Q6 H) g0 a8 R
好的,那我找找
 楼主| 发表于 2013-3-8 16:04:11 | 显示全部楼层 来自: 中国江苏南京
zhjailfq 发表于 2013-3-8 15:54 static/image/common/back.gif
& \( Y* E1 L  ^看不懂啊,不过楼主貌似发错地方了,有二次开发的区

6 ^0 c  Y1 I# o/ R' m; a9 B好像没有专门是Solidworks二次开发的区
发表于 2013-3-8 20:18:50 | 显示全部楼层 来自: 中国湖北咸宁
楼主是编程高手啊
发表于 2014-7-24 15:07:09 | 显示全部楼层 来自: 中国重庆
你好,我最近也在做Solidworks二次开发,现在遇到点问题。你是怎么实现零件移动的,能不能指导一下我啊!十分感谢!我的qq:1633578693
发表于 2014-7-24 15:34:37 | 显示全部楼层 来自: 中国辽宁丹东
朋友用的语言是C吧?代码看不懂,如果VB略还懂些。) @8 \; |; K( U8 f
我按VB的运用方式大致解释,供你参考。
- T3 l8 U7 P% e5 K8 L# n6 j/ _( a, Y我感觉应该是变量问题,移动要有坐标值,起点至终点,如果只能移动一次,说明你只给它一个终点的值,点击按钮或用时钟控件,它也只能移动在这个位置后不动了。
2 l1 v. s( D8 {/ P应该设一个变量,假如X方向每次移动单位2
! W$ g9 U. X2 ~! \X目的值变量=X目的值变量+29 [/ @0 n  U  y9 D
这样运用时钟控件的启动和停止,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 )

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