机械社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 19381|回复: 7

[请教] 如何拾取装配体重心?

[复制链接]
发表于 2011-1-21 11:00:45 | 显示全部楼层 |阅读模式
计算翻盖机构时,需要知道一个组件的重心位置,SW自带的评估功能可以得到,但是重心点无法拾取。
8 P( Z6 g; m( Y+ o: j+ x, @- C
7 n6 s  C, o! x/ D怎样把重心变成实体点,这样可以用测量工具测量到重心与指定元素(铰链轴等)的距离。
+ U! l" ?9 ^$ ?+ L7 @/ W' }! [
1 J/ P" y- R) A! g. x  T% {% C- O谢谢!
  A+ F; x& o6 N% Q) ^
回复

使用道具 举报

发表于 2011-1-21 12:55:14 | 显示全部楼层
本帖最后由 叶飘零 于 2011-1-21 13:56 编辑 1 P# d- }; L7 G9 J  y* w; K! h
6 Z+ s5 H. V) {2 ]3 ]" v7 J, X9 p
可以先点装配体的质量特性按钮,软件计算出重心的XYZ坐标,记下这个坐标,在装配体中插入三维草图,新建一草图点,手动设置草图点的XYZ坐标为刚记下的坐标值就可以了。这是手动的笨方法,只有我这种笨人才用,改了图要手动改点坐标才行。
/ D6 F! ?" {! f0 l6 C4 K7 F下面是转载的高手的方法,我试用过了,好像有问题,可能是版本的问题吧。(以下为转载)
$ t8 Y4 x5 Y% N: O- v7 h+ r* J  P5 \
# u* N: P6 V/ T" Z/ F, }3D草图点可以通过宏程序和重心进行关联,具体操作方式步驟如下1. 功能表>工具>宏/巨集>新增
' l# \2 X! C  @7 J2. 選擇儲存位置及給予有意義的名字
! ~( f& v1 ]* s4 O0 P3. 刪除新宏內所有內容,貼上以下的程序碼7 H  W- q- g, H/ r

; _: Z, b* g( p3 _9 X% E! L: j; x
  • Function swmRebuild(swApp As Object, ModelDoc As Object, Feature As Object) As Variant
  • Dim nStatus As Long
  • vMassProp = ModelDoc.Extension.GetMassProperties(1, nStatus)
  • Parents = Feature.GetParents
  • vPoints = Parents(0).GetSpecificFeature2.GetSketchPoints2
  • Set Point = vPoints(0)
  • Point.X = vMassProp(0): Point.Y = vMassProp(1): Point.Z = vMassProp(2)
  • End Function
  • Sub main()
  • Set swApp = Application.SldWorks
  • Dim ModelDoc As SldWorks.ModelDoc2: Set ModelDoc = swApp.ActiveDoc
  • ThisFile = swApp.GetCurrentMacroPathName
  • Dim Methods(8) As String: Methods(0) = ThisFile: Methods(1) = "Module1": Methods(2) = "swmRebuild"
  • ModelDoc.SketchManager.Insert3DSketch True
  • ModelDoc.SketchManager.CreatePoint 0, 0, 0
  • ModelDoc.SketchManager.InsertSketch True
  • Set MacroFeature = ModelDoc.FeatureManager.InsertMacroFeature2("MassCenter_Update", "", (Methods), Empty, Empty, Empty, Empty, Empty, Nothing, Empty, 0)
  • End Sub
    " v0 ~' `4 W+ d  J
5. 立即運行也可,或到自定義工具列,新增一個圖示方便使用
  A- B; J/ k/ C( U由于程序簡短編寫,因此有很多禁忌必須注意:
# l# j% M! ]* z3 a" f- `1. 必定在裝配內運行5 _$ C6 u! T7 w# H5 I! O
2. 再多配置/模型組態的情況下,每個重心特徵宏只可再一個配置/模型組態內運行,在其他配置/模型組態內必須抑制
" {, p& G) b  i- U' Q# Q3. 3D草圖內的那一個點不可刪除& h4 y; S, x3 o2 A
4. 這個裝配插入到另一個裝配(成為子裝配),如果多於一個的時候,這些子裝配就不可設定為靈活。
) I6 z1 K) M# `
$ P2 D3 ~) N! }  {6 g) T转载来源链接:http://www.5dcad.cn/bbs/thread-39631-1-1.html,感谢原作者!
2 L6 g/ C7 Y, n* m- Q% f
回复 支持 反对

使用道具 举报

发表于 2011-1-21 13:01:33 | 显示全部楼层
质量特性上面不是有个重心的坐标吗,可以自已画一个吗
回复 支持 反对

使用道具 举报

发表于 2011-1-21 14:22:04 | 显示全部楼层
先工具 质量特性 读出中心点的3维坐标值,然后画3D草图,做一个3D 的点 把点的坐标更改为 中心坐标的值,则3D 点位置就与重心位置是重合的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2011-1-22 19:14:01 | 显示全部楼层
多谢大家指点迷津,我用草图解决了。# \$ h$ u1 }% N: _0 @% b6 F

6 C0 V( H9 o$ K. I2 G3 Q2 [' t2楼大侠的宏方法等有时间好好研究一下。
7 J) {% d- i4 g# \- O8 P. i4 K; K: s
" \, s3 a& _; E3 t" K% v7 K0 d: [谢谢大家!!
回复 支持 反对

使用道具 举报

发表于 2011-1-23 10:53:31 | 显示全部楼层
都是高手,谢谢了~~~~~~~~~~~~~~~~~~~~~~~~~~
回复 支持 反对

使用道具 举报

发表于 2011-1-23 22:35:08 | 显示全部楼层
正在学习中,呵呵!!: j% S6 o, o( h* W; g9 }/ N
回复 支持 反对

使用道具 举报

发表于 2011-1-24 13:44:32 | 显示全部楼层
都是高手啊  宏的确是个好帮手 就是不会用
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

小黑屋|手机版|Archiver|机械社区 ( 京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号 )

GMT+8, 2024-11-28 09:22 , Processed in 0.051805 second(s), 15 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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