⬆️ upstream そのまま — upstream の実装をほぼそのまま利用
- Smalruby ランタイム対応: ✅(
ruby/smalruby3/lib/smalruby3/extension/pen.rbあり) - デフォルト表示: ✅(拡張機能ライブラリにデフォルトで表示される)
スプライトの軌跡を線として残すペン拡張機能。スタンプ機能(スプライトの形状をそのまま描画)も含む。upstream Scratch 標準。Smalruby の Ruby SDL2 デスクトップランタイムでも動作する。
- 小学生として、スプライトの動きで絵を描きたい(タートルグラフィックス)
- 算数好きな子として、図形を描くプログラムを作りたい
- アート好きな子として、ランダムな模様や万華鏡のような作品を作りたい
- 拡張機能登録:
packages/scratch-gui/src/lib/libraries/extensions/index.jsxのextensionId: 'pen' - VM 実装:
packages/scratch-vm/src/extensions/scratch3_pen/ - Ruby Generator:
packages/scratch-gui/src/lib/ruby-generator/pen.js - Ruby ランタイム:
ruby/smalruby3/lib/smalruby3/extension/pen.rb
| opcode | 説明 |
|---|---|
pen_clear |
すべてのペンを消す |
pen_stamp |
スタンプ(現在の見た目を描画) |
pen_penDown / pen_penUp |
ペンを下ろす / 上げる |
pen_setPenColorToColor |
ペンの色設定 (HSL) |
pen_changePenColorParamBy / pen_setPenColorParamTo |
ペン色パラメータ変更 |
pen_changePenSizeBy / pen_setPenSizeTo |
ペンサイズ変更 |
