• <menu id="w2i4a"></menu>
  • logo VectorDraw Developer Framework使用教程

    文檔首頁>>VectorDraw Developer Framework使用教程>>VDF常見問題整理(二十三):如何使用XProperties鏈接圖層和Vdraw實體對象?

    VDF常見問題整理(二十三):如何使用XProperties鏈接圖層和Vdraw實體對象?


       VectorDraw Developer Framework(VDF)是一個用于應用程序可視化的圖形引擎庫。有了VDF提供的功能,您可以輕松地創(chuàng)建、編輯、管理、輸出、輸入和打印2D和3D圖形文件。   

    VectorDraw Developer Framework試用版下載


        點開本篇文章,是否對矢量圖形工具感興趣呢?來看看最新的矢量圖形工具測評吧!點擊此處>>即可直達哦!

    問:

        如何使用XProperty鏈接圖層和Vdraw實體對象?我想在特定圖層中引用多個vdraw實體,并在多個圖層中引用特定vdraw實體。

    答:

        您是擁有一些圖層和一些vdText對象的。在圖層內,您可以設置XProperties文本的句柄ID。因此,您的圖層具有一個或多個Text對象的handle ID。因此,您需要通過存儲在圖層中的handle ID值來獲取這些文本,但是您還想獲取包含特定圖層的handle ID值的圖層。

    VB .net

        要從圖層的xproperties獲取對象,請執(zhí)行以下操作:

    'In this example we are using the documen't active layer.
    Dim layer As VectorDraw.Professional.vdPrimaries.vdLayer = doc.ActiveLayer
    Dim id As Integer
    If (layer.XProperties.Count > 0) Then
        Integer.TryParse(layer.XProperties(0).PropValue, id)
        Dim handle As VectorDraw.Professional.vdObjects.vdHandle = New VectorDraw.Professional.vdObjects.vdHandle(Convert.ToUInt64(id))
        Dim text As VectorDraw.Professional.vdFigures.vdText = doc.FindFromHandle(handle, GetType(VectorDraw.Professional.vdFigures.vdText))
        'After this line, you may want to check if text is a valide object.
        MessageBox.Show("obtained text with the value: " + text.TextString)
    End If
    To get all the layers “referencing” a specific text object:Dim text As New VectorDraw.Professional.vdFigures.vdText
    Dim pickedPoint As New VectorDraw.Geometry.gPoint
    doc.ActionUtility.getUserEntity(text, pickedPoint, VectorDraw.Professional.vdObjects.vdDocument.LockLayerMethodEnum.Default)
    Dim layerArr As New VectorDraw.Generics.vdArray(Of VectorDraw.Professional.vdPrimaries.vdLayer)
    For Each layerObj In doc.Layers
        Dim layer As VectorDraw.Professional.vdPrimaries.vdLayer = layerObj
        For Each xpropObj In layer.XProperties
            Dim xproperty As VectorDraw.Professional.vdObjects.vdXProperty = xpropObj
            If (String.Compare(xproperty.PropValue, text.Handle.ToString()) = 0) Then
                layerArr.AddItem(layer)
            End If
        Next
    Next
    MessageBox.Show(layerArr.Count.ToString() + " layers linked to this text object.")
    In the code XPropeties are assumed to be String values.

        對于以上問答,如果您有任何的疑惑都可以在評論區(qū)留言,我們會及時回復。此系列的問答教程我們會持續(xù)更新,如果您感興趣,可以多多關注本教程。

    相關資料推薦:


        如果您對想要購買正版授權VectorDraw Developer Framework(VDF),可以聯系在線客服>>咨詢相關問題。

        關注慧聚IT微信公眾號 ???,了解產品的最新動態(tài)及最新資訊。

    1561953111.jpg

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();