机械必威体育网址
标题:
[请教] 如何拾取装配体重心?
[打印本页]
作者:
是成功
时间:
2011-1-21 11:00
标题:
[请教] 如何拾取装配体重心?
计算翻盖机构时,需要知道一个组件的重心位置,SW自带的评估功能可以得到,但是重心点无法拾取。
6 B# }' Q9 S3 C! b: k
% ?. _. T2 @, O! m. _
怎样把重心变成实体点,这样可以用测量工具测量到重心与指定元素(铰链轴等)的距离。
" {2 @1 K0 H( H4 I& W; x3 {8 D- \
- e+ K/ W* j- k$ u* B
谢谢!
. V7 q' ?: N! f8 s8 f
作者:
叶飘零
时间:
2011-1-21 12:55
本帖最后由 叶飘零 于 2011-1-21 13:56 编辑
% V& e8 u5 ?, m L g8 ]/ S
5 N+ i: ~; Y1 T) ^; ?
可以先点装配体的质量特性按钮,软件计算出重心的XYZ坐标,记下这个坐标,在装配体中插入三维草图,新建一草图点,手动设置草图点的XYZ坐标为刚记下的坐标值就可以了。这是手动的笨方法,只有我这种笨人才用,改了图要手动改点坐标才行。
/ x; c# p9 k0 n2 P! ~3 X+ j
下面是转载的高手的方法,我试用过了,好像有问题,可能是版本的问题吧。(以下为转载)
, y0 s2 X/ |* D1 t& M& C
, Y2 I0 z% V% A6 C
3D草图点可以通过宏程序和重心进行关联,具体操作方式步驟如下1. 功能表>工具>宏/巨集>新增
" d3 H( H! B7 t* g7 T% h! ?
2. 選擇儲存位置及給予有意義的名字
8 f2 |; P4 G: e& d$ P% C! _& K( C5 a
3. 刪除新宏內所有內容,貼上以下的程序碼
/ a6 K8 q/ c4 e* z- L7 p1 Y
8 k' h. V( O1 g) r( D; }
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
0 ^. B- U" c5 }* L! q) O1 R* O. s
5. 立即運行也可,或到自定義工具列,新增一個圖示方便使用
$ Z- g3 B @) ~
由于程序簡短編寫,因此有很多禁忌必須注意:
2 _: j6 E$ D6 d: S: F
1. 必定在裝配內運行
/ b, w; i n6 m: b0 {
2. 再多配置/模型組態的情況下,每個重心特徵宏只可再一個配置/模型組態內運行,在其他配置/模型組態內必須抑制
0 C$ p( ? {3 Y4 R" {+ ^ E
3. 3D草圖內的那一個點不可刪除
! {7 `( _4 H2 |. h
4. 這個裝配插入到另一個裝配(成為子裝配),如果多於一個的時候,這些子裝配就不可設定為靈活。
$ v+ v4 z+ r g# ~- E8 g
; D. d- ]: p L% A5 ]4 V) d
转载来源链接:
http://www.5dcad.cn/bbs/thread-39631-1-1.html
,感谢原作者!
6 o: d' {" s, {. I1 c
作者:
jerry_52
时间:
2011-1-21 13:01
质量特性上面不是有个重心的坐标吗,可以自已画一个吗
作者:
紫剑狂风
时间:
2011-1-21 14:22
先工具 质量特性 读出中心点的3维坐标值,然后画3D草图,做一个3D 的点 把点的坐标更改为 中心坐标的值,则3D 点位置就与重心位置是重合的。
作者:
是成功
时间:
2011-1-22 19:14
多谢大家指点迷津,我用草图解决了。
: n( Y; I" C0 a
9 f/ d" G9 p2 W4 H
2楼大侠的宏方法等有时间好好研究一下。
6 |, Z+ G( R7 `4 J
! K. Z7 A/ g# ~4 i4 G! Q3 t
谢谢大家!!
作者:
xiaoyaya6603
时间:
2011-1-23 10:53
都是高手,谢谢了~~~~~~~~~~~~~~~~~~~~~~~~~~
作者:
verysedate
时间:
2011-1-23 22:35
正在学习中,呵呵!!
M; s4 b6 X/ M' I6 _% k _0 `
作者:
silence云
时间:
2011-1-24 13:44
都是高手啊 宏的确是个好帮手 就是不会用
欢迎光临 机械必威体育网址 (//www.szfco.com/)
Powered by Discuz! X3.4