Vla-put-textalignmentpoint

提供:GizmoLabs - だいたい CAD LISP なサイト
2016年1月23日 (土) 11:38時点におけるGizmon (トーク | 投稿記録)による版 (ページの作成:「{{AutoLISP}} ; 構文 : (vla-put-textalignmentpoint ''vla-object'' ''potint'') ; 機能 : 文字と属性の位置合わせ点を指定する。 ; 引数 :* vla-obje...」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
構文
(vla-put-textalignmentpoint vla-object potint)


機能
文字と属性の位置合わせ点を指定する。


引数
  • vla-object … VLAオブジェクト(Attribute、AttributeReference、Text)
  • potint … オブジェクトの位置合わせ点を表す 3D WCS 座標


戻り値
nil


  • MEMO : Text: Alignment プロパティが acAlignmentLeft に設定されている場合、このプロパティは 0, 0, 0 にリセットされ、読み込み専用になる。位置合わせが、左、両端合わせ、フィットの文字の位置を決めるには、InsertionPoint プロパティを使う。


サンプル
(vl-load-com)
(defun c:Example_TextAlignmentPoint()
    ;; 文字を作成して、位置合わせ点と水平位置を変更するサンプル
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
    
    ;; 文字の定義
    (setq insertionPoint (vlax-3d-point 3 3 0)  
          textString "Hello, World."
          height 0.5)
    
    ;; 文字を作成
    (setq modelSpace (vla-get-ModelSpace doc))
    (setq textObj (vla-AddText modelSpace textString insertionPoint height))  
    (vla-ZoomAll acadObj)

    (setq alignmentPoint (vlax-variant-value (vla-get-TextAlignmentPoint textObj)))
    (alert (strcat "現在の位置合わせ点は " 
                   (rtos (vlax-safearray-get-element alignmentPoint 0) 2) ", "
                   (rtos (vlax-safearray-get-element alignmentPoint 1) 2) ", "
                   (rtos (vlax-safearray-get-element alignmentPoint 2) 2)))
    
    ;; 変更
    ;; note : HorizontalAlignmentプロパティを先に変更する必要がある。
    (setq alignmentPoint (vlax-3d-point 5 3 0))
    (vla-put-Alignment textObj acHorizontalAlignmentFit)
    (vla-put-TextAlignmentPoint textObj alignmentPoint)
    (vla-ZoomAll acadObj)

    (setq alignmentPoint (vlax-variant-value (vla-get-TextAlignmentPoint textObj)))
    (alert (strcat "位置合わせ点を次にセット " 
                   (rtos (vlax-safearray-get-element alignmentPoint 0) 2) ", "
                   (rtos (vlax-safearray-get-element alignmentPoint 1) 2) ", "
                   (rtos (vlax-safearray-get-element alignmentPoint 2) 2)))
)

関連事項