Affinity 3.3でパンク図形を作成する
Affinityが3.3でスクリプト機能が大幅に強化されて以降、ずっと「Affinity SDKスクリプトリファレンス」を作成しています。まだ完成していません。さすがにね、3本分の機能を持つアプリケーションだけに、スクリプトも膨大で追いつきません。
機能のリストアップは完了しててExcelにまとめています(Claudeが)。そしてノードツリーや呼び出し方、動作させて分かったことなどはMarkdownファイルにまとめています(Claudeが)。おかげさまで、スクリプトを作成するときはいちいちSDKドキュメントや定義しているJSファイルを検索しなくていいので、めちゃくちゃ早くできるようになりました。残念ながらClaudeにしかわからないことが書いてある部分もあるので公開できません。公開してもAffinityの更新の速さに追いつけないので、全くメンテナンスできない状態なんですけどね。
そんな中「AffinityにはIllustratorのパンク・膨張がないから」というのを見かけました。
え? それでAffinityを否定する? 膨張の代わりはクラウドツールがあるでしょ? でもパンクはないよね。
「じゃあ、パンクはスクリプトで作りましょう」ということです。使う人がいるかどうかは知らんけど。
ダウンロードとインストール
こちらをクリックして、「punk.zip」をダウンロードします。解凍すると「パンク図形.afscript」ファイルが作成されます。
Affinityのスクリプトライブラリパネルの[デフォルト]カテゴリの三本メニューをクリックして「スクリプトをインポート」をクリックします(パネルメニューではないです。間違えやすいので注意)。
ファイル選択ダイアログが表示されるので「パンク図形.afscript」を選択します。
実行方法
パンク図形を作成したい大きさの長方形や楕円を1つ作成して選択します。選択した状態でスクリプトライブラリパネルの「パンク図形」をクリックします。ダイアログが表示されますので、いろいろ設定を変えて遊んでください。
特徴
Illustratorそのままでは全然面白くないので、「とげの鋭さ」パラメータを追加しました。これは内側のノード(丸くなっている部分)のハンドルの長さを調整します。初期状態では39.5%で、これはコンテキストツールバーの「スムーズに変換」をクリックしたときの状態、つまりAffinityの初期値です。0%だとハンドルがない状態と同じなので、星形ツールで作れる図形と同じになります。100%は外側のノードの角度が0になるときとしました。
これはリファレンスを完成させるための一環で、「シェイプを作成→カーブに変換→ノードとハンドルを操作する」をプレビューモードで実行できるのか、ということを確認するために作ったものです。だから誰も使わなくても全然かまいません。もし「必要だった」「探してた」という奇特な方は、どのシーンで使うのかをコメントで教えていただけると幸いです。




