Casio Python - ユーザー関数 circle()

Python Casio Python
 Casioグラフ関数電卓の Python を使ってみる
     - リファレンス 
目次
circle()

ユーザーモジュール u.py に含まれる関数 u.py ver 1.5 ダウンロード

初版:2020/11/08

[対応モデル] - fx-CG50 OS3.20 以降、fx-9750GIII / fx-9860GIII OS3.21 以降

円を描画します。

書 式circle(x, y, r, color=1, show=1)

引 数
- 第1引数 - x: 描画する円の中心の x座標、0 以上の浮動小数点
- 第2引数 - y: 描画する円の中心の y座標、0 以上の浮動小数点
- 第3引数 - r: 描画する円の半径、0 以上の浮動小数点
- 第4引数 -  color: パラメータ引数で、省略可能でデフォルトは 1 です。
       具体的な設定は grp_color() のリファレンスを参照。
- 第5引数 - show: パラメータ引数で、省略可能でデフォルトは 1 です。

引数を4つ、値だけを指定するとエラーになります ⇒ 関数の引数は こちら を参照。
引数を4つだけ設定する場合は、パラメータと共に設定します。
  例) circle(100, 50, 30, color=4) / circle(100, 50, 30, show=0)


使用例:

CGモデルの場合 - circleCG.py

from u import *
px = 290
py = 96
r = 91
circle(px, py, r, color=3, show=0)
circle(px, py, r/2, 2)

circle_CG 


FXモデルの場合 - circleFX.py

CGモデルの画面は 384 x 192 ピクセル、一方 FXモデルは 128 x 64 ピクセルで、CGモデルのちょうど 1/3 です。つまり CGモデルで設定する座標値や長さを 1/3 にすれば FXモデルに適用できます。

from u import *
px = 290/3
py = 96/3
r = 91/3

circle(px, py, r, color=3, show=0)
circle(px, py, r, r/2, 2)


circle_FX 


CGモデルとFXモデル共用の場合 - circle.py

from u import *
if isCG():
 px=290
 py=96
 r=91

else:
 px=290/3
 py=96/3
 r=91/2

circle(px, py, r, color=3, show=0)
circle(px, py, r, r/2, 2)


CGモデルとFXモデルを判別する isCG() を使い、円の中心座標 (px, py) と半径 r を場合分けした上で、円を描画します。

circle_CG circle_FX 


関数定義:
from casioplot import *
def
circle(x, y, r, color=1, show=1):
 if isCG():
  px_max = 383
  py_max = 191
 else:
  px_max = 127
  py_max = 63
 rgb = grp_color(color)
 p = r*6.283 #number of plots
 a = 2*pi/p #angle step in radian
 for i in range(p):
  px = x + r*cos(i*a)
  if px<0 or px>px_max:
   continue
  py = y + r*sin(i*a)
  if py<0 or py>py_max:
   continue
  set_pixel(int(px), int(py), rgb)
  if show: #data transfer to screen
   show_screen()


スクリプトの解説:
  CGモデル用 モノクロ 描画 circle() の作成 ⇒ こちら
  CGモデル用 カラー描画 circle() の作成 ⇒ こちら
  CGモデル/FXモデル共用 描画 circle() の作成 ⇒ こちら


円描画のためのユーティリティ:ckCircle.py (ダウンロード)
グラフィック画面で円描画する際、中心の座標と半径を設定した時に実際にどのように見えるかを確認するために作りました。CGモデルとFXモデル共用にしています。

起動画面:
ckCircle_CG1 ckCircle_FX1
デフォルトの値が、CGモデルとFXモデルで異なります。

デフォルト設定で円描画した画面: 起動画面で [4] + [EXE] を押す
ckCircle_CG2 ckCircle_FX2
デフォルトでは、ほぼ同じ位置と同じ半径で描画される設定にしています。

起動画面で [1] + [EXE] を押して、半径 (Radius) を変更できます
ckCircle_CG3 ckCircle_FX3
数値を入力して [EXE] を押す。
そのまま [EXE] を押せば、現在の値で設定します。

起動画面で [2] + [EXE] を押して、中心座標 (Position) を変更できます
ckCircle_CG4 ckCircle_FX4
x座標の数値を入力して [EXE] を押す。
そのまま [EXE] を押せば、現在の値で設定します。

ckCircle_CG5 ckCircle_FX5
y座標の数値を入力して [EXE] を押します。
そのまま [EXE] を押せば、現在の値で設定します。

起動画面で [3] + [EXE] を押して、色 (Color) を変更できます。
ckCircle_CG6 ckCircle_FX6
カラーコード 0 ~ 7 を入力して [EXE] を押します。
そのまま [EXE] を押せば、現在の値で設定します。






応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 


keywords: fx-CG50Pythonfx-9750GIIIfx-9860GIIIプログラム関数電卓

リンク集 | ブログ内マップ
関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

コメントの投稿

非公開コメント

最新記事
検索フォーム
最新コメント
カテゴリ
C# (3)
Visitors
Online Counter
現在の閲覧者数:
プロフィール

やす (Krtyski)

Author:やす (Krtyski)
since Oct 30, 2013


プログラム電卓は、プログラムを作って、使ってナンボ!

プログラム電卓を実際に使って気づいたこと、自作プログラム、電卓での Casio Basic や Casio Python プログラミングについて書いています。

なお管理人はカシオ計算機の関係者ではなく、Casio Basicが面白いと感じる1ユーザーです。


写真: 「4駆で泥んこ遊び@オックスフォード郊外」

リンク
月別アーカイブ
Sitemap

全ての記事を表示する

ブロとも申請フォーム

この人とブロともになる

QRコード
QR