うしブログ

うしブログ

趣味で運営する、GeoGebraの専門ブログ。

(作業メモ)StartPoint要検証(2行の場合;テキスト変更時未定義問題)

(要修復)ToggleButton・RollPolygonWithoutSlipping・貯金時計・直感力トレーニング

2つの円の両方に接する円

「2つの円の両方に接する円」は、赤と青の2種類ある。 赤は「片方の円に内接し、かつもう片方の円に外接する」円。中心の軌道は楕円のようだ。 青は「両方の円に内接する、または両方の円に外接する」円。中心の軌道は双曲線のようだ。

円錐を転がす動きの描画

円錐を転がす_軽量版 – GeoGebra 参考:主要なオブジェクトの定義式 詳細は上記アプレットを参照ください。 円錐 Rotate(Cone( (slantHeight - radius² / slantHeight, 0, radius sqrt(slantHeight² - radius²) / slantHeight ), (0, 0, 0), radius), rotati…

球面三角形

Twitter界隈で流行っていたので挑戦。 課題 単位球面(中心O)の表面上に、異なる3点A,B,Cをとる。 球面三角形ABCを、Surfaceコマンドで描画したい。 方針 まずは、球面三角形の辺ABを、パラメータt(0〜1)を使って表現することから。 Surfaceコマンドの癖…

「平面を平面で切断した片側」の描画

目次 課題 サンプル 解説 方針 目的の図形の描画 オリジナルツール「HalfPlane3D」 使用例 参考:ツールの定義 課題 3点A(1,-1,0), B(-1,1,1), C(-1,-1,2)がある。 3点A,B,Cを通る平面p: Plane(A, B, C)を作成する。 平面q: z=1を作成する。 pをqによって切…

グローバルJavaScript入力欄をAceエディタ化 & jQueryライクにオブジェクトスタイルを編集 [geoEditor-1-4]

下記記事で紹介したスクリプトの改良版です(v.4)。 usidesu.hatenablog.com v.3からの改善点 GeoGebraオブジェクトを、jQueryライクにセレクトして、スタイル情報を参照・変更できるようになりました(後述)。 機能紹介 グローバルJavaScript入力欄を綺麗…

正規表現マッチ確認

.textlines { border: 2px solid #dcdcdc; /* 枠線 */ border-radius: 0.67em; /* 角丸 */ padding: 0.5em; /* 内側の余白量 */ background-color: #f5f5f5; /* 背景色 */ width: 100%; /* 横幅いっぱいにする */ box-sizing: border-box; /* ※これがないと…

グローバルJavaScript入力欄をAceエディタ化 & jQuery対応 [geoEditor-1-3]

下記記事で紹介したスクリプトの改良版です(v.3)。 usidesu.hatenablog.com v.2からの改善点 エディタ上部の確定ボタンを廃止しました。自動で変更内容を確定します。 保守性を高めるため、スクリプトを全面改訂しました(スクリプトの全体像の説明を冒頭…

GeoGebraのXMLデータを、jQueryで操作する

前提 ブラウザ版 GeoGebra Classic 6を前提とした記事である。以下で「GeoGebra」という場合は、特に断らない限り、ブラウザ版 GeoGebra Classic 6を指す。 以下の表中の「jQuery」の列を実行可能にするには、GeoGebraのページで、jQueryの導入が必要である…

グローバルJavaScript入力欄をAceエディタ化 & jQuery対応 [geoEditor-1-2]

下記記事で紹介したスクリプトの改良版です(v.2)。 usidesu.hatenablog.com 主な改善点 エディタを導入すると、jQueryが使えるようになります。ggbOnInit関数内でも使えます。 エディタに記述したスクリプトにエラーがあっても、次回読み込み時にエディタ…

グローバルJavaScript入力欄をAceエディタ化 [geoEditor-1-1]

動作を確認した環境 GeoGebra:web版GeoGebra クラシック6 Version: 6.0.659.0-w (10 August 2021) ブラウザ:chrome バージョン: 92.0.4515.131(Official Build) (x86_64) OS:MacOs 10.14.1(18B2107) ※その他の環境での動作確認はしていません。環境…

webページにJavaScriptエディタを生成する

ドラッグで移動可能、ダブルクリックでコードを整形 function makeJsEditor() { //インポートしたいJSのURL const scriptUrl1 = "https://cdnjs.cloudflare.com/ajax/libs/ace/1.4.12/ace.js"; const scriptUrl2 = "https://cdnjs.cloudflare.com/ajax/libs/…

最前面のテキストエリアにエラーメッセージを表示させる実験

function ggbOnInit() { seizureErrorDialog(10); } // テキストエリアをhtmlに生成 document.body.insertAdjacentHTML('afterBegin', '<textarea id="usitext"></textarea>'); document.getElementById('usitext').style.position = "fixed"; document.getElementById('usitext').style.width …

geogebra.org/classic でのエラーメッセージを横取りする

//web版GeoGebraのエラーダイヤログを出ないようにして、エラーメッセージのみを横取りする(console記録+テキストオブジェクトに書き出し) // ggbOnInit関数内に、seizureErrorDialog(); を記述しておくとよい // seizureErrorDialog(10);←10行分をテキス…

単振動花火

1つ1つの点は、単振動しているだけ。ズレによって模様が描かれる。 単振動花火 – GeoGebra 点の数や速度を操作できるバージョン↓ www.geogebra.org

ggbApplet.registerClientListenerのテスト

apiでクリック位置を取得するテスト

GeoGebraでピタゴラスツリー

本記事は、下記ツイートに触発されて、「ピタゴラスツリー」をGeoGebraで作成した際の記録である。 ピタゴラスの定理により、各色の面積はずっと同じです。 pic.twitter.com/GY2RueVXcG — ζWalker (@walker0226) May 15, 2021 なお、本記事で解説する作成方…

デジタル整数表示器

入力した整数をデジタル表示する、シンプルなアプレットです。 デジタル整数表示器 – GeoGebra

デジタル数字の作り方

スライダーn=1~10、点C、数値ratioを所与として、以下の数式は、nに対応するデジタル数字を返す。 RemoveUndefined(Zip(If(γ, β, ?), β, {Translate(Rotate(Dilate(Polygon(Zip(C + α ratio, α, {(-9, 0), (-7, -2), (7, -2), (9, 0), (7, 2), (-7, 2)})), 0…

f(x)=∫_0^1 |e^t-x|dtをGeoGebraで図示する

謝辞 永島 豪 先生(@Go_Nagashima)には、本稿の着想を得るきっかけを与えて頂きました。感謝申し上げます。 課題 のグラフをGeoGebraで図示したい。どのようにすればよいか。 うまくいかない方法 定積分を返すコマンドである Integral[<関数>,<開始値>,<終…

lcc

簡易時計を作成

www.geogebra.org サクッと時計を作りたいときに便利です。 構文は、Clock[<中心点>, <半径>, <時刻データのリスト>] です。 例えば、 timeList=GetTime[ ] を作成し、入力バーに Clock[(0,0),2,timeList] と入力すると、下図のような時計が作成されます。 …

ミニ時計webアプリ

ミニ時計(ポップアップウインドウで開きます)

リストの値にスライダーを吸い付かせる+ラベルを数式表示(CAS利用版)

(ご注意) 本記事で紹介する情報は、web版GeoGebra(クラシック6)にのみ有効です。ローカル版GeoGebraではうまく機能しません。また、記事公開後のGeoGebraのアップデートにより、正常に機能しなくなる可能性があります。あらかじめご了承ください。 課題 …

XMLデータを利用する

データの取得(DOM)およびシリアライズ //アプレットの設計をDOMとして取得 function getGGBDom() { //ggbApplet+idの場合に対応 var idStr; if (typeof document.getElementsByClassName('notranslate')[0] === 'undefined') { idStr = 'ggbApplet'; } els…

有名角に吸い付き、ラベルをπを用いた表記に切り替える

pi_display – GeoGebra

スライダーを特定の値に吸い付かせ、ラベルのルート(や分数)表記を可能にする

(ご注意) 本記事で紹介する情報は、web版GeoGebra(クラシック6)にのみ有効です。ローカル版GeoGebraではうまく機能しません。また、記事公開後のGeoGebraのアップデートにより、正常に機能しなくなる可能性があります。あらかじめご了承ください。 課題 …

テキストの開始位置(相対座標または点オブジェクト)を設定するJavaScript

//テキストの開始位置を設定 //setTextStartPoint('text1','(3,4)'); //setTextStartPoint('text1','A'); //setTextStartPoint('text1','Midpoint[(0,0),(1,1)]'); function setTextStartPoint(objName,expText){ //オブジェクト存在確認 var isexist = ggbA…

(web版GeoGebra限定)スライダーの情報を取得するJavaScript関数

//スライダーの情報を取得(戻り値eval済み) function getSliderInfo(name) { //xmlデータを取得 var xmlStr = ggbApplet.getXML(name); //DOMにパース var parser = new DOMParser(); var dom = parser.parseFromString(xmlStr, "text/xml"); //sliderタグ…

直線を、楕円の接線に吸い付かせる

課題 自由な点オブジェクトA,B,C,D,E および 楕円c=Ellipse(A, B, C)と、直線f=Line(D, E)がある。 下図のように、直線を動かして、楕円に近づけていって、直線が楕円に接する位置付近に来たときに、接線に吸い付くような挙動を実現するには、どうすればよい…

(覚書)wordフィールド

フィールドの作成:command + fn + F9 フィールドの表示・非表示:option + fn + F9 フィールドの更新:Shift + option + command + U または fn + F9 現在時刻 2020年10月10日23時27分56秒 { DATE ¥@ "yyyy年M月d日HH時mm分ss秒" } "yyyy":4桁西暦(2020)…