「Vla-get-alttoleranceprecision」の版間の差分
(ページの作成:「{{AutoLISP}} ; 構文 : (vla-get-alttoleranceprecision ''vla-object'' ) ; 機能 : 変換寸法値の許容差の精度を取得する。 ; 引数 :* vla-object … V...」) |
細編集の要約なし |
||
14行目: | 14行目: | ||
; 戻り値 | ; 戻り値 | ||
: acDimPrecision 列挙型 | : acDimPrecision 列挙型 | ||
::* acDimPrecisionZero : 0. | |||
::* acDimPrecisionOne : 0.0 | |||
::* acDimPrecisionTwo : 0.00 | |||
::* acDimPrecisionThree : 0.000 | |||
::* acDimPrecisionFour : 0.0000 | |||
::* acDimPrecisionFive : 0.00000 | |||
::* acDimPrecisionSix : 0.000000 | |||
::* acDimPrecisionSeven : 0.0000000 | |||
::* acDimPrecisionEight : 0.00000000 | |||
2016年2月8日 (月) 13:17時点における最新版
- 構文
- (vla-get-alttoleranceprecision vla-object )
- 機能
- 変換寸法値の許容差の精度を取得する。
- 引数
-
- vla-object … VLAオブジェクト(DimAligned、DimArcLength、DimDiametric、DimOrdinate、DimRadial、DimRadialLarge、DimRotated)
- 戻り値
- acDimPrecision 列挙型
- acDimPrecisionZero : 0.
- acDimPrecisionOne : 0.0
- acDimPrecisionTwo : 0.00
- acDimPrecisionThree : 0.000
- acDimPrecisionFour : 0.0000
- acDimPrecisionFive : 0.00000
- acDimPrecisionSix : 0.000000
- acDimPrecisionSeven : 0.0000000
- acDimPrecisionEight : 0.00000000
- MEMO : このプロパティの初期値は acDimPrecisionTwo 。
- このプロパティは ToleranceDisplay プロパティが acTolNone 以外の値に設定されている場合にのみ使用できる。
- 注 : このプロパティは、指定された寸法でシステム変数 DIMTDEC[寸法許容差精度]の値を変更する。
- サンプル
(vl-load-com) (defun c:Example_AltTolerancePrecision() ;; 寸法を作成して変換寸法値の許容差の精度を変更するサンプル (setq acadObj (vlax-get-acad-object)) (setq doc (vla-get-ActiveDocument acadObj)) ;; 寸法の定義 (setq point1 (vlax-3d-point 0 5 0) point2 (vlax-3d-point 5.12345678 5 0) location (vlax-3d-point 5 7 0)) ;; 寸法を作成 (setq modelSpace (vla-get-ModelSpace doc)) (setq dimObj (vla-AddDimAligned modelSpace point1 point2 location)) ;; 変換寸法値を有効 (vla-put-AltUnits dimObj :vlax-true) (vla-put-ToleranceDisplay dimObj acTolLimits) (vla-ZoomAll acadObj) ;; 変換寸法値の許容差の精度を保持 (setq oldTolerance (vla-get-AltTolerancePrecision dimObj)) ;; 変更 (setq newTolerance (vla-GetInteger (vla-get-Utility doc) (strcat "\n新しい変換寸法値の許容差の精度を入力 (0 to 8) <" (itoa oldTolerance) ">: "))) (if (= newTolerance nil) (setq newTolerance oldTolerance)) (setq newTolerance (cond ((= newTolerance 0) acDimPrecisionZero) ((= newTolerance 1) acDimPrecisionOne) ((= newTolerance 2) acDimPrecisionTwo) ((= newTolerance 3) acDimPrecisionThree) ((= newTolerance 4) acDimPrecisionFour) ((= newTolerance 5) acDimPrecisionFive) ((= newTolerance 6) acDimPrecisionSix) ((= newTolerance 7) acDimPrecisionSeven) ((= newTolerance 8) acDimPrecisionEight) (progn (setq newTolerance nil) (alert "それは無理。")) )) (if (/= newTolerance nil) (progn (vla-put-AltTolerancePrecision dimObj newTolerance) ;; コミット (vla-Regen doc acAllViewports) ;; 戻す (alert (strcat "変換寸法値の許容差の精度を次に戻しました " (itoa (vla-get-AltTolerancePrecision dimObj)) " decimal places")) ) ) )
関連事項