目的
最近、Rhinocerosを触ってます。 過去に文字情報を使った作品を作っていたので、 そのデータを使ってパラメトリックなモデリングをしたいと思ったのですが、 Rhino7のGrasshopperからTextObjectを生成する方法が見つからなかったのでメモします。
HumanやWombatGHを使った例は出てくるけど、Rhino7には対応していない……
解決方法
参考文献に上げさせていただいた動画に解決方法が載っていました。
この記事のコードは、多少Pythonicなコードにしてあります。
"""Provides a scripting component.
Inputs:
pos: The position script variable
txt: The text script variable
font: The font script variable
size: The text size script variable
Output:
a: The a output variable"""
__author__ = "enkatsu"
import rhinoscriptsyntax as rs
import scriptcontext as sc
import Rhino
sc.doc = Rhino.RhinoDoc.ActiveDoc
rs.EnableRedraw(False)
# テキストを追加して、アウトラインを書き出し
textObj = rs.AddText(txt, [0, 0, 0])
textCurves = rs.ExplodeText(textObj, delete=True)
a = [rs.coercecurve(textCurve) for textCurve in textCurves]
rs.DeleteObjects(textCurves)
rs.EnableRedraw()
sc.doc = ghdoc