簡體   English   中英

SolidWorks API:測量點坐標

[英]SolidWorks API: Measure point coordinates

有一個包含點“P”和坐標系框架“F”的 SolidWorks 組件。 目標是找到點“P”與框架“F”的x,y,z坐標。 VB代碼看起來像

Sub main()
    Dim swApp As SldWorks.SldWorks
    Dim swModel As SldWorks.ModelDoc2
    Dim bstatus As Boolean
    Dim swMeasure As SldWorks.Measure
    
    Set swApp = Application.SldWorks
    Set swModel = swApp.ActiveDoc

    swModel.ClearSelection2 True
    bstatus = swModel.Extension.SelectByID2("P", "DATUMPOINT", 0, 0, 0, False, 0, Nothing, 0)
    Debug.Assert bstatus

    Set swMeasure = swModel.Extension.CreateMeasure
    bstatus = swMeasure.Calculate(Nothing)
    Debug.Assert bstatus

    Debug.Print ("X: " & swMeasure.X)
    Debug.Print ("Y: " & swMeasure.Y)
    Debug.Print ("Z: " & swMeasure.Z)
End Sub

該腳本有效,但它給出了最近使用的坐標系框架中的坐標。 它可以是框架“F”或默認框架,因此結果不可預測。 我找不到Measure class 的屬性來強制它使用必要的框架。 有沒有辦法明確指定框架? 有解決方法嗎?

您可以像這個示例方法一樣獲取點坐標,然后您可能需要將其與坐標系的矩陣相乘先前的矩陣與分量矩陣變換Transform2

另請參閱此相關帖子

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM