Grasshopperの背景色を変更する方法

Grasshopper

おおくのエディタなどでは背景色などを変更することが簡単にできますが、Grasshopperの画面では見当たらなかったので探してみました。

こんな感じに変更できます。コードはこちら

import rhinoscriptsyntax as rs
import Grasshopper.GUI.Canvas as Canvas
import ghpythonlib.components as gh

if(switch):
    Canvas.GH_Skin.canvas_grid = GridColor
    Canvas.GH_Skin.canvas_back = BackColor
    Canvas.GH_Skin.wire_default = WireColor
    Canvas.GH_Skin.wire_selected_a = WireColorA
    Canvas.GH_Skin.wire_selected_b = WireColorB
else:
    Canvas.GH_Skin.canvas_grid = gh.ColourRGB(30,0,0,0)
    Canvas.GH_Skin.canvas_back = gh.ColourRGB(255,212,208,200)
    Canvas.GH_Skin.wire_default = gh.ColourRGB(150,0,0,0)
    Canvas.GH_Skin.wire_selected_a = gh.ColourRGB(255,125,210,40)
    Canvas.GH_Skin.wire_selected_b = gh.ColourRGB(50,0,0,0)


Grasshopper.GUIのAPIはC#からもアクセスできるので、C#でもほぼ同様のことができます!

  • canvas_gridでGrasshopperの背景のグリッド線の色
  • canvas_backでGrasshopperの背景色
  • wire_defaultでコンポーネント間をつなぐ線の色
  • wore_selected_a, b はコンポーネントを選択したときの始点終点の色です。その間はグラデーションになるようです。

このプログラムを走らせると、ほかのghファイルの色設定も書き換えられてしまいます。なので、戻すときのためにif文を書いています。elseのブロックは、デフォルト値に戻すつもりがないならいりません。

また、C:\Users\***\AppData\Roaming\Grasshopperといった階層にgrasshopper_gui.xmlというファイルがあって、このファイルに、色情報が書かれているようです。デフォルトの値は、ここからもらいました。

コメント

タイトルとURLをコピーしました