「Vla-put-gradientname」の版間の差分
(ページの作成:「{{AutoLISP}} ; 構文 : (vla-put-gradientname ''vla-object'' '''' '''' '''') ; 機能 : グラデーションのパターン名を指定する。 ; 引数 :* vla-obj...」) |
細編集の要約なし |
||
| 1行目: | 1行目: | ||
{{AutoLISP}} | {{AutoLISP}} | ||
; 構文 | ; 構文 | ||
: (vla-put-gradientname ''vla-object'' '' | : (vla-put-gradientname ''vla-object'' ''name'') | ||
2016年1月14日 (木) 17:04時点における最新版
- 構文
- (vla-put-gradientname vla-object name)
- 機能
- グラデーションのパターン名を指定する。
- 引数
-
- vla-object … HatchのVLAオブジェクト
- name … グラデーションのパターン名。以下が利用可能。
- "Linear"
- "Cylinder"
- "InvCylinder"
- "Spherical"
- "HemiSpherical"
- "Curved"
- "InvSpherical"
- "InvHemiSpherical"
- "InvCurved"
- 戻り値
- nil
- サンプル
(vl-load-com)
(defun c:Example_GradientName()
;; GradientColor1 の値を変更するサンプル
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
;; ハッチングの定義
(setq patternName "CYLINDER")
(setq patternType acPreDefinedGradient)
(setq bAssociativity :vlax-true)
;; ハッチングのオブジェクトを作成
(setq modelSpace (vla-get-ModelSpace doc))
(setq hatchObj (vla-AddHatch modelSpace patternType patternName bAssociativity acGradientObject))
(setq col1 (vlax-create-object "AutoCAD.AcCmColor.20")) ; バージョンに合わせること
(setq col2 (vlax-create-object "AutoCAD.AcCmColor.20")) ; 同上
(vla-SetRGB col1 255 0 0)
(vla-SetRGB col2 0 255 0)
(vla-put-GradientColor1 hatchObj col1)
(vla-put-GradientColor2 hatchObj col2)
;; 境界の円を作成
(setq center (vlax-3d-point 3 3 0)
radius 1)
(setq circle (vla-AddCircle modelSpace center radius))
(setq outerLoop (vlax-make-safearray vlax-vbObject '(0 . 0)))
(vlax-safearray-put-element outerLoop 0 circle)
;; ハッチング境界を作成
(vla-AppendOuterLoop hatchObj outerLoop)
(vla-Evaluate hatchObj)
(vla-Regen doc :vlax-true)
(alert (strcat "GradientName は " (vla-get-GradientName hatchObj)))
(vla-put-GradientName hatchObj "SPHERICAL")
(alert (strcat "新しい GradientName は " (vla-get-GradientName hatchObj)))
(vlax-release-object col1)
(vlax-release-object col2)
)
関連事項