KidsCindy@Wiki内検索 / 「コンセプト」で検索した結果
-
コンセプト
日本語対応の「インタラクティブ作図ソフトウエア」を作成するプロジェクトがKidsCindyです。製作に当たって念頭においているソフトが3つあります。 シンデレラ KSEG GRAPES です。grapesは作図ソフトというよりグラフ描画ソフトですが。シンデレラとKSEGは似ていますが、インターフェースがまったく違います。両方の操作性を盛り込みながら進めていきたいと思います。 対象ユーザは中学生・高校生・その先生です。Kidsという名称から、小学生や幼稚園児を想像する人が多いかもしれませんが、幼稚園児に作図は無理です。「幾何の作図さえできればよい」のであればシンデレラやgrapesで十分です。KidsCindyは遊びの要素を盛り込みながら、図形に親しむことを目的としています。範囲は高校数学までを目標にしています。 このソフトの特徴の一つはアピアランス... -
メニュー
メニュー トップページ コンセプト 名称について ダウンロード マニュアル・FAQ サンプルファイル バージョンアップ履歴 KidsCindyデータ構造 KidsCindy作図のアイディア KidsCindyメニューのアイディア KidsCindyモードのアイディア KidsCindyスクリプトのアイディア KidsCindyアピアランスのアイディア KidsCindy音のアイディア? KidsCindyアニメーションのアイディア KidsCindyバグ鳥 KSEG データ構造およびメンバー関数(メモ書き) 雑談 -
名称について
...しく、ソフトウェアのコンセプトとは異なった印象を与えてしまう可能性がある。 別名の候補 CindyJunior YoungCindy Cindy 全く関係がないが、落窪物語はシンデレラに似た日本の物語。 -
星 アピアランステーマ
背景は夜空、テント直線は星。 という素朴なコンセプト。8月9日に点の画像を作り直した。ポイントは、絵を二つに分けたということ。つまり、中心部のいわゆる星型の部分と、その周りのボンやりと輝く部分の二つに分けて描画する。周りの部分はビットマップの上書きではなく、wxORという形で背景画となじませる。(wxORは暗い背景に明るいものをボンヤリと描くのに適している。明るいところに書いても何もおきない。) -
トップページ
...です。 詳細は「コンセプト」を見てください。 このWikiに書き込みをしたい人は、kazuaha(at)aol.comまでメールをください。ゲストアカウントを差し上げます。 カウンター= - (昨日は - 、今日は - ) -
コンパス
3点を指定して、コンパス円を描くモードをつくる。 とりあえず、3点からコンパス、と言う機能を追加した。ツールバーをコンパスモードにしてから、シフトを押さえながら3点を指定すると、円が描かれるようにした。(7月23日) シンデレラでは「補助的な円」が描画される。これはまだ。 だいいち、コンパス、という概念自体が分かりにくい、という説もある。 KSEGでは2アクションで実行される。まず線分の長さをはかりとって、その長さを半径とする円を描く、という手順。 CINDYモードで、 「コンパスモードにする」→ハイライトをクリア →(Shiftなしで)3点をクリック→円が描かれる という手順に変更(Shiftキーがいらなくなった。) さらに、シンデレラ風の補助的な円を表示するようにした。 そのためにクラスMyCanvasに int compas... -
コンパス バグ
点が一つもなく、コンパスモードにすると強制終了します。(7月25日) ← 直しました。(8月17日、阿原) -
点についている文字の大きさ、場所の変更、スクリプトへの記述
点の名前を「文字」モードで変更できる。大きさも変更できる。しかし、それがスクリプトに反映されていない。 とりあえず対応した。(10月3日阿原) -
座標軸を表示する
シンディモード ツールバーの「軸」をクリックする。作図中でも可能である。 最初の表示より目盛りを小さくすしたければ、アイコンの「縮小」を、大きくしたければ、「拡大」をクリックする。 また、軸上に打った点の座標を指定したいときは、メニューの編集から「スクリプトの編集」を選び、指定すればよい。 KSEGモード シンディモードと同様。 -
コンパス(KSEG)
点が3つハイライトしている時、円をを作図できるようにした。(Cindyモードのコンパス) ABを半径とするCを中心とした円が作図できる。 (11月27日、森) 線分が1つと点が1つのがハイライトしている時、円をを作図できるようにした。(Cindyモードのコンパス) 作図した際に円がハイライトするよう設定した。 (12月04日、森) -
KidsCindyスクリプトのアイディア
長さを角度にコンバートする 値の代入 要素の値 文字列を出力する 2点間の距離 非表示モード 点(線)の色 2円の交点のオプション -
長さを角度にコンバートする
長さを角度にコンバートする機能(KSEGのみにある。) たとえば、 var theta=arg(arc); var arc=arcarg(theta); などの関数を用意しても良い。 -
KidsCindyバグ鳥
保存時と読み込み時のウィンドウサイズが異なる場合の文字の調整について wxWidgets(LINUX版)のバグによる障害について KSEG風アピアランスでの点のデザイン初期化不良の訂正 二つのグラフの二つの接線 Linux版の問題点 画面が崩れる KNOPPIX5にwxX11やwxGTKがインストールできない コンパス バグ EraseBackground の編集 なんでこんなに重いんだろ(ToT) ハイライトが出ない クリッピングと残像 文字の大きさ 垂線とクリッピング 円と円との交点 ドラッグしながら窓の外へ行くと クリッピングの不調 円と直線の交点の追跡 円と直線の交点を端点とするクリッピング 点のデザイン、線のデザインを変更するとき 円と円の交点の追跡OK ハイポサイクロイドにおける複素根の病気根治 点のデザイン変更に関するバグ鳥OK 軌跡のバグNG 2点つき直線を引くときに... -
マニュアル・FAQ
マニュアル: 作図機能 点を描画する 直線を描画する 線分を描画する 要素を選択する 円を描画する 垂線を描画する 平行線を描画する 2点の中点を描画する 角の2等分線を描画する グラフを描画する 軌跡を描画する 文字を描画する ファイルに図を保存する・図を読み込む 直線上の点・円上の点・グラフ上の点、軌跡上の点 円の接線・グラフの接線・軌跡の接線 直線の交点、直線と円の交点、円と円の交点 座標軸を表示する 拡大・縮小 要素を見えなくする(不可視) 角度を表示する 選択した要素を消去する 図を貼り付ける カッコを描画する スライド機能 シートを追加する 前のシート・次のシートへ移動する アニメーション設定をする スライドショーを見る アピアランス アピアランステーマ 点・線・背景の選択 アピアランスのデザインを組み合わせる 入力モード シンディ風 KSEG風 スクリプト スク... -
垂線とクリッピング
今回は深刻 point A=Pt(-1.250,0.130); point B=Pt(1.430,-0.610); line a=Join(A,B,clipping); point C=PtOnLine(A,B,0.442,0.558); line b=Perp(a,C,clipping); point D=PtOnParallel(b,C,0.585); で絵が破綻します。こんなくらいで破綻しているようじゃだめだ。問題は5行目の「垂線をクリッピングする」というところ。それではただいま(8月5日午後3時半)よりバグ鳥に入ります。 はー、できたできた。ただいま午後6時。2時間半でできるとは軽症でしたか。つーーか!「垂線上の点」に関する式がほとんどデタラメだったことが判明。(「平行線上の点」モードをマルコピーしていたりして。)垂線上の点を動かすこともできなかったし(できるよ... -
カーブの接線上の点、というモード
カーブの接線 CurveTangent 上にある点、というスクリプトを作った。 PtOnCurveTangent (2月17日)あはら -
ダウンロード
ダウンロードのページです。 1.09b- 1.09d(最新版:2月3日) KNOPPIX上で動くようにバグを取り去った。(細かいところはもう少し直したい・・・・・) 1.09a- 1.09b(12月26日) 角度、カッコをスライド対応にした。(画像とグラフはまだ対応していない。) 1.08- 1.09a(12月6日) ウィンドウのサイズを変えると、配置された文字や作図がウィンドウの大きさに合わせて微調整される。 角度の表示のデザインと色を自由に選べるようにした。 角度の大きさ(度数)をテキスト表示できるようにした。 線分の長さを表わす「カッコ」がつけられるようにした。 「カッコ」の2点間の距離を表示できるようにした。 「カッコ」のデザインを変えられるようにする。 1.07- 1.08(11月11日) 「不可視」指定の要素の上から書き直すと、不可視が解除される。(完了) 写真を張れるよ... -
2点つき直線を引くときに2点が一致したら
2点つき直線を引くときに、思い直して、2点目を1点目に重ねてしまうとスクリプトがバグる。授業で指摘されて発覚。 直した。(10月3日、阿原) -
拡大・縮小・invisibleのUNDO
拡大・縮小・invisibleのUNDOができるようにする。アイディアとしては、CONSTにそういう種類のものを追加する。(セーブしたり、スクリプトを編集したりするときには消えてしまう。) 1月17日阿原 -
Redo(進める)
Undoをするときに、本当に消してしまわないで、 作図はPushしておいて、 点などはinvisibleにしておく ということをやってみた。これで、Redo(Ctrl+Y)ができる。でも、なんだかうまくいっていない。いろんなところで。 直線をUndoしたあと、その上に点を打つとインシデントのメッセージが出てしまう。→これは直した。 スクリプトを確認して「適応」をすると、Redoでソフトが強制的に落ちてしまう。 そのた そのた いろいろまだあるはず。 -
ファイル分割(11月29日)
GConst.cppが巨大(4000行くらい)になってきたので、ファイル分割を始めている。とはいえ、GConst1.cpp,GConst2.cpp、という分割の仕方は、昔痛い目にあったことがあるので却下。できるだけ内容が思い出せるようなファイル名にすることにした。今のところ、 Find.cpp - GConstの列から特定のものを探し出すサブルーチン ConstDef.cpp - KSEGモードの作図確定サブルーチン ConstSrc.cpp - 作図をスクリプト化する、またその逆向きの作業をするサブルーチン の3つを作った。 (11月29日)あはら -
fontsize0
ときたま、スクリプトに fontsize0 というオプションがついてしまう。この原因を探った。要するに、点を新規に作成したときにフォントサイズを設定しているかどうか、という問題だが、意外とNewPointにはそのような記述はなく、NewPointを宣言した後に適宜フォントサイズを決めていることがわかった。フォントサイズは2重に定義しても痛くないので、NewPointで宣言すればいいなと感じたので、そうした。 ConstFreeには完全にフォントサイズの記述がもれていた。が、NewPointでフォローしたので、こちらは変更なし。 (11月15日、あはら) -
要素を見えなくする(不可視)
各モード共通 一度作図した点を見えなくするためには、その要素(点・線)を選択して、ツールバーから「不可視」ボタンを選んでクリックします。(これは要素を削除するのではなく、見えなくするだけです。作図のための補助線のように、作図には必要だが表示したくない、と言う場合に有効です。) 一度「不可視」モードにすると、選択することはできなくなります。「不可視」にしたものをまた見えるようにするときには、「スクリプトの編集」を開き、「不可視」にした要素の行から[invisible]を削除して「適用」ボタンをクリックします。 (例) point A=Pt(1.060,0.200,invisible,color4); → point A=Pt(1.060,0.200,color4); -
非表示モード
各幾何要素ごとにinvisibleという変数を設定した。 (具体的にはint GObject invisible) この変数の値が0の時には表示、999の時には非表示とした。 それ以外の値のときは完全に決めたわけではないが、作図手順を見せるアニメーションのときに1~30を使おうと計画中。ともかく、スクリプトの読み書きに関してinvisibleというオプションを使えるようにした。たとえば、 line a=Join(A,B,invisible); と書けば直線は存在するが、表示されないことになる。Clippingのボタンの隣にInvisibleのボタンを作る作業がまだ終わっていないが、それよりも先に作図手順を見せるアニメーションを作りたい。 (8月21日阿原) -
スライドアニメーションダイアログの設計
「編集」メニューから「アニメーション設定」を選ぶ。(これまであった「作図のアニメーション」を改める。) ダイアログで設定できるようにする。 上部にアニメーションの対象となる要素が、アニメーションの順に表示され、リスト構造で選択できるようにする。 ラジオボタンで 「出現・消滅・強調」 「クリック時・自動」 「フェード・右・左・上・下」 「強調する」「強調しない」 を選べるようにし、下部に「決定」「キャンセル」ボタンを置く。 スライドアニメーションのデータはGObjectで書く要素が保持することにし、ダイアログを開くときにダイアログ用のデータを構築し、ダイアログを閉じるときには捨てる。 (昔、阿原) ダイアログの変更を記録をできるようにした。 (1月22日、森) CONST_EFFECT_・・・のクリアを作成した。 (... -
バージョンアップ履歴
1.08- 1.09a(12月6日) ウィンドウのサイズを変えると、配置された文字や作図がウィンドウの大きさに合わせて微調整される。 角度の表示のデザインと色を自由に選べるようにした。 角度の大きさ(度数)をテキスト表示できるようにした。 線分の長さを表わす「カッコ」がつけられるようにした。 「カッコ」の2点間の距離を表示できるようにした。 「カッコ」のデザインを変えられるようにする。 1.07- 1.08(11月11日) 「不可視」指定の要素の上から書き直すと、不可視が解除される。(完了) 写真を張れるようにする。(BMPファイルの貼り付けはできるようにした。) スクリプト編集や、保存ファイルの最後に雑音が入るのを修正した。 アピアランスのデザインを組み合わせて使えるようにする。 文字の色をRGBで指定できるようにする。 1.06.c- 1.07.e(10月28日) 文字列が半角256文... -
8月17日の雑談
お盆休みもおわり。今日から再開しようかと思っていたら、実に不吉な出だしであった。前回最後に出来上がった「☆アピアランス」の pDC- Blit が正しく動かない。一度自宅のパソコンで動いたのだから、動かぬ理由がわからない。ずいぶんいじってみたが、ワケわからないので、放っておくことにした。 自宅のマシンでコンパイルしなおしたところ、正常に動いた。これではいよいよ理由がわからない。(8月17日夜、阿原) -
KidsCindy作図のアイディア
コンパス 角の二等分線上の点 円と円との交点 -
作業工程
線分モード Shift+右クリック 交点モード 接線モード 角二等分線モード 3点円モード(KSEG) 円と直線の交点(KSEG) 円と円の交点(KSEG) コンパス(KSEG) 軌跡(KSEG) 文字(KSEG) 直線→線分 -
KSEG風アピアランスでの点のデザイン初期化不良の訂正
アピアランスのKSEG,CINDY,PASTELにおいて、立ち上げたばかりの(または最初にファイルを読み込む)時に点のデザインが乱れることがわかっていたので、その点を修正した。 修正点は、MyCanvasのコンターで、prefファイルを読み込むタイミングを遅らせたこと。もう一つは、NewPointで、点の色の設定をしたこと。どちらも、今頃まで残っているバグとは思えないようなものだった! (2月9日阿原) -
ツールバーの構造
シンデレラを使ってて思うのは、ツールバーにたくさんアイコンがあって、よく使うものはいいんだけれど、あまり使わないものがほとんどで、しかもたくさんあるから探しちゃう、なんていうこと。 KSEGでは、基本的と思われるのはツールバーにあって、それ以外はメニューから選べるようになっている。これもひとつの考え方だ。しかも、「それ以外」はユーザが追加できるようになっているらしい。(そういう使い方したことないので。) なんか、このあたりの間を取ってうまくツールバーを設計したい。(9月28日)あはら -
パラメトリックグラフ
パラメトリックグラフという幾何要素GParaGraphを作る。 これは点の列というデータ保持と、座標を式で入力する二つの方法が考えられる。(両方用意する。) パラメトリックグラフ上の点、パラメトリクグラフ上の点での接線、パラメトリクグラフを動く点、直線とパラメトリックグラフとの交点、コニックとパラメトリックグラフの交点、など考えられる。 基本的に、「式による入力」になる。 陰関数を文字列で入力して、パラメトリックグラフに変換することができるかどうかを考察する。 きになったこと 例えば、円としての円と、グラフとしての円は異なるものとして扱うのかどうか (さくがわ8月2日) 決めてません(あはら) 見た目は同じものになると思いますが、決めてません。たぶん、データ構造としては違うものだけれど、コンバートができる?みたいな。どういうのがいいでし... -
円を描画する
シンディモード 「円を描く」モードにして、画面上で1回ドラッグする。 メニューの拡張モードから「3点円」をえらび、「3点円」のツールバーを選択して、3点を選択する。 「コンパス」モードにして、画面上の3点をクリック。これで最初の点と2番目の点の距離を半径、3番目の点を中心とする円が描かれる。 KSEGモード 2点を選択してツールバーの「円」をクリック。この場合には、最初に選択した点が中心、2つ目に選択した点が円上の点になる。 3点を選択してツールバーの「円」をクリック。この場合は、最初に選択したテント2番目に選択した点との距離が半径に、最後に選択した点が中心になる。 直線と点を選択してツールバーの「円」をクリック。この場合、直線が「2点を結ぶ直線」の場合に限り、「2点」の距離を半径、選択した点を中心とする円になる。 3点を選択してツールバーの「3点円」をクリック。その3点を通る円を描く。 -
3点を通る円
「3点を通る円」は「角の2等分線」に続く「長い名前のモード」である。これをツールバーに乗せることは非常に難しい。(なぜだか、最長の名前に横幅がそろってしまうため。) そこで、わかりにくいことは100000も承知だが、「拡張モード」というメニューをつくりここから選び出せるようにすることにした。 せっかくそうする以上、メニューから選んだ瞬間に、ツールバーのほうも「そのモードを選択状態にする」としたいのだが、その方法がわからない。ツールバーのマウスそうあの管理はすでにマウスが決まっていて、ソースのほうからツールバーを選ぶことができないようだ。(探し方が不十分なだけかもしれない。) 現時点では「拡張モード」で「3点で決まる円」をえらんで、ツールバーにアイコンを出し、そして改めてツールバーから選ぶということにした。 少し便利なのは、拡張機能の中でよく使う一つがツールバーに残るとい... -
KidsCindyモードのアイディア
カーブの接線上の点、というモード 取り消し ハイライトに関する概論 直線のモード 座標軸その他 パラメトリックグラフ 長さを角度にコンバートする グラフ上の点 接線 直線とグラフの交点 多項式のグラフ 3点で決まる円 直線を加える 点を加える テキストに関するメモ 線分の両端に関するメモ 線分の両端に関するメモ2 線分の両端に関するメモ3 線分の両端に関するメモ4 線分の両端に関するメモ5 線分の両端に関するメモ6 クリッピングモードの使い勝手 軌跡 軌跡へのスナップ 円のインシデント 3点を通る円 プレゼンテーションモード スライドアニメーション 見えなくする(invisible) 直線上の動点に関する軌跡 自動定理証明機能(直線が点を通る) 自動定理証明機能(円が点を通る) 円のクリッピング Redo(進める) テキストを選択できるようにする シートの消去ができるようにする 円と... -
プリファレンスファイル
プリファレンスファイルを作成する。 (1)KidsCindyをQuitするときにプリファレンスファイルを上書きする。 (2)KidsCindyを起動するとき、プリファレンスファイルを探し、もしあれば設定を変更する。 プリファレンスファイル名はwxKC.pref 内容は未定だが少なくともGMode=KSEG;またはGMode=CINDY;を含むようにすることは決めている。 作業工程(1) KidsCindyをQuitするとき:wxKidsCindy.cppのMyFrameクラスのイベントハンドらを探す。 EVT_MENU (ID_FILE_QUIT, MyFrame OnQuit) を発見。同じくwxKidsCindy.cppに void MyFrame OnQuit(wxCommandEvent WXUNUSED(event... -
GPOintメンバー構成
class GPoint public GObject { public CComplex xx,yy,zz; GPoint(void); GPoint(CComplex x,CComplex y,CComplex z); GPoint(CComplex a,CComplex b); GPoint(double xx, double yy, int rr, int gg, int bb, int radius); GPoint(const GPoint p); ~GPoint(void); GPoint operator = (const GPoint p); friend bool operator == (GPoint p,GPoint q); bool used; GPoint* next; CComplex xz(void); CComp... - @wiki全体から「コンセプト」で調べる