外摆线的生成与参数方程演示
2018-06-13 06:48
本范例动态演示了外摆线的几何生成过程。通过设定半径为r的小圆在半径为R的大圆外侧无滑动地滚动,追踪小圆上一定点的运动轨迹,直观展示外摆线的形成。同时,利用参数方程和三角函数精确描述该轨迹,帮助学习者深入理解其几何性质及与圆、向量等概念的联系。
所属专题
微积分
GeoGebra 画板及绘图内容加载中,请稍等……
<?xml version="1.0" encoding="utf-8"?>
<geogebra format="5.0" version="5.0.467.0" app="classic" platform="w" id="394275EF-7116-42D5-AA23-6D018B349006" xsi:noNamespaceSchemaLocation="http://www.geogebra.org/ggb.xsd" xmlns="" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<gui>
<window width="917" height="584" />
<perspectives>
<perspective id="tmp">
<panes>
<pane location="" divider="0.1723009814612868" orientation="1" />
</panes>
<views>
<view id="512" toolbar="0 | 1 501 5 19 , 67 | 2 15 45 18 , 7 37 | 514 3 9 , 13 44 , 47 | 16 | 551 550 11 , 20 22 21 23 , 55 56 57 , 12 | 69 | 510 511 , 512 513 | 533 531 , 534 532 , 522 523 , 537 536 , 535 | 521 520 | 36 , 38 49 560 | 571 30 29 570 31 33 | 17 | 540 40 41 42 , 27 28 35 , 6 , 502" visible="false" inframe="false" stylebar="false" location="1,1,1" size="500" window="100,100,600,400" />
<view id="4" toolbar="0 || 2020 , 2021 , 2022 || 2001 , 2003 , 2002 , 2004 , 2005 || 2040 , 2041 , 2042 , 2044 , 2043" visible="false" inframe="false" stylebar="false" location="1,1" size="300" window="100,100,600,400" />
<view id="8" toolbar="1001 | 1002 | 1003 || 1005 | 1004 || 1006 | 1007 | 1010 || 1008 | 1009 || 6" visible="false" inframe="false" stylebar="false" location="1,3" size="300" window="100,100,600,400" />
<view id="4097" visible="false" inframe="false" stylebar="true" location="1,1" size="385" window="288,64,685,651" />
<view id="1" visible="true" inframe="false" stylebar="false" location="1" size="915" window="100,100,600,400" />
<view id="2" visible="false" inframe="false" stylebar="true" location="3" size="158" window="683,364,356,696" />
<view id="16" visible="false" inframe="false" stylebar="false" location="1" size="300" window="50,50,500,500" />
<view id="32" visible="false" inframe="false" stylebar="true" location="1" size="300" window="50,50,500,500" />
<view id="64" toolbar="0" visible="false" inframe="false" stylebar="false" location="1" size="480" window="50,50,500,500" />
<view id="128" visible="false" inframe="true" stylebar="false" location="1" size="480" window="50,50,500,500" />
<view id="70" toolbar="0 || 2020 || 2021 || 2022" visible="false" inframe="false" stylebar="true" location="1" size="900" window="50,50,500,500" />
<view id="43" visible="false" inframe="false" stylebar="false" location="1" size="450" window="50,50,500,500" />
</views>
<toolbar show="false" items="0 73 62 | 1 501 67 , 5 19 , 72 75 76 | 2 15 45 , 18 65 , 7 37 | 4 3 8 9 , 13 44 , 58 , 47 | 16 51 64 , 70 | 10 34 53 11 , 24 20 22 , 21 23 | 55 56 57 , 12 | 36 46 , 38 49 50 , 71 14 68 | 30 29 54 32 31 33 | 25 17 26 60 52 61 | 40 41 42 , 27 28 35 , 6" position="1" help="false" />
<input show="false" cmd="true" top="algebra" />
<dockBar show="false" east="false" />
</perspective>
</perspectives>
<labelingStyle val="3"/>
<font size="16"/>
</gui>
<euclidianView>
<viewNumber viewNo="1"/>
<size width="915" height="582"/>
<coordSystem xZero="585.0361522742539" yZero="279.23086065412144" scale="26.80631718261392" yscale="26.806317182613764"/>
<evSettings axes="false" grid="true" gridIsBold="false" pointCapturing="2" rightAngleStyle="1" checkboxSize="26" gridType="0"/>
<bgColor r="255" g="255" b="255"/>
<axesColor r="255" g="0" b="0"/>
<gridColor r="96" g="96" b="96"/>
<lineStyle axes="1" grid="20"/>
<axis id="0" show="false" label="" unitLabel="" tickStyle="1" showNumbers="true" tickDistance="1" tickExpression="1"/>
<axis id="1" show="false" label="" unitLabel="" tickStyle="1" showNumbers="true" tickDistance="1" tickExpression="1"/>
</euclidianView>
<kernel>
<continuous val="false"/>
<usePathAndRegionParameters val="true"/>
<decimals val="2"/>
<angleUnit val="degree"/>
<algebraStyle val="0" spreadsheet="0"/>
<coordStyle val="0"/>
<startAnimation val="true"/>
</kernel>
<scripting blocked="false" disabled="false"/>
<construction title="epicycloid" author="" date="">
<expression label ="O" exp="(0, 0)" type="point"/>
<element type="point" label="O">
<show object="false" label="true" ev="4"/>
<objColor r="77" g="77" b="255" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<fixed val="true"/>
<coords x="0" y="0" z="1"/>
<pointSize val="5"/>
<pointStyle val="0"/>
</element>
<expression label ="i" exp="(1, 0)" type="vector"/>
<element type="vector" label="i">
<show object="false" label="false" ev="4"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<fixed val="true"/>
<selectionAllowed val="false"/>
<coords x="1" y="0" z="0"/>
<lineStyle thickness="9" type="0" typeHidden="1" opacity="178"/>
<coordStyle style="cartesian"/>
</element>
<command name="Point">
<input a0="Ray[O + i, O + (2 * i)]"/>
<output a0="A"/>
</command>
<element type="point" label="A">
<show object="true" label="false" ev="4"/>
<condition showObject="showControls"/>
<objColor r="255" g="255" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<animation step="1" speed="1" type="1" playing="false"/>
<coords x="6" y="0" z="1"/>
<pointSize val="7"/>
<pointStyle val="0"/>
</element>
<expression label="R" exp="x(A)" />
<element type="numeric" label="R">
<value val="6"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<command name="Point">
<input a0="Line[O, A]"/>
<output a0="D"/>
</command>
<element type="point" label="D">
<show object="true" label="false" ev="4"/>
<condition showObject="showControls"/>
<objColor r="255" g="127" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<animation step="1" speed="1" type="1" playing="false"/>
<coords x="8" y="0" z="1"/>
<pointSize val="7"/>
<pointStyle val="0"/>
</element>
<expression label="r" exp="x(D - A)" />
<element type="numeric" label="r">
<value val="2"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="k" exp="R / r" />
<element type="numeric" label="k">
<value val="3"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<element type="numeric" label="t">
<value val="6.84"/>
<symbolic val="true" />
<show object="true" label="true"/>
<objColor r="0" g="0" b="255" alpha="0.10000000149011612"/>
<bgColor r="224" g="224" b="224" alpha="255"/>
<layer val="2"/>
<labelOffset x="-2" y="9"/>
<labelMode val="1"/>
<slider min="0" max="maxT" absoluteScreenLocation="true" width="100" x="45" y="309" fixed="false" horizontal="true" showAlgebra="true"/>
<pointSize val="10"/>
<lineStyle thickness="10" type="0" typeHidden="1"/>
<animation step="0.02" speed="ω" type="1" playing="true"/>
</element>
<element type="numeric" label="ω">
<value val="0.2"/>
<symbolic val="true" />
<show object="true" label="true"/>
<objColor r="51" g="153" b="0" alpha="0.10000000149011612"/>
<bgColor r="224" g="224" b="224" alpha="255"/>
<layer val="2"/>
<labelOffset x="-10" y="8"/>
<labelMode val="1"/>
<slider min="0.1" max="1" absoluteScreenLocation="true" width="100" x="45" y="362" fixed="false" horizontal="true" showAlgebra="false"/>
<pointSize val="10"/>
<lineStyle thickness="10" type="0" typeHidden="1"/>
<animation step="0.1" speed="1" type="0" playing="false"/>
<caption val="角速度"/>
</element>
<expression label="θ" exp="(ω * t)" />
<element type="numeric" label="θ">
<value val="1.368"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="v_P" exp="(-(r; ((1 + k) * θ)))" type="vector" />
<element type="vector" label="v_P">
<show object="false" label="false" ev="4"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="3"/>
<coords x="-1.3772788920169656" y="1.4502078656539272" z="0"/>
<lineStyle thickness="5" type="0" typeHidden="1" opacity="178"/>
<coordStyle style="polar"/>
<caption val="圓 r 圓心指向 P 的向量"/>
</element>
<expression label="C" exp="(R + r; θ)" type="point" />
<element type="point" label="C">
<show object="true" label="false" ev="4"/>
<objColor r="255" g="204" b="51" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="1.611273095316138" y="7.83605761925666" z="1"/>
<coordStyle style="polar"/>
<pointSize val="7"/>
<pointStyle val="0"/>
</element>
<expression label="v2" exp="((-abs(r)) * ((-sin(θ)), cos(θ)))" type="vector" />
<element type="vector" label="v2">
<show object="false" label="false" ev="4"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="1.959014404814165" y="-0.4028182738290345" z="0"/>
<lineStyle thickness="5" type="0" typeHidden="1" opacity="178"/>
<coordStyle style="cartesian"/>
</element>
<command name="Corner">
<input a0="2"/>
<output a0="C2"/>
</command>
<element type="point" label="C2">
<show object="false" label="true" ev="4"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="2"/>
<labelMode val="1"/>
<auxiliary val="true"/>
<coords x="12.346487041509866" y="-11.331998247894319" z="1"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<command name="Corner">
<input a0="5"/>
<output a0="C5"/>
</command>
<element type="point" label="C5">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="915" y="582" z="1"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<command name="Corner">
<input a0="1"/>
<output a0="C1"/>
</command>
<element type="point" label="C1">
<show object="false" label="true" ev="4"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="2"/>
<labelMode val="1"/>
<auxiliary val="true"/>
<coords x="-21.861867420353665" y="-11.331998247894319" z="1"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<expression label="pixels" exp="x(C2 - C1) / x(C5)" />
<element type="numeric" label="pixels">
<value val="0.03738617973974156"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<caption val="unit per pixel"/>
</element>
<expression label="θu" exp="((2 * π) * r / R)" />
<element type="numeric" label="θu">
<value val="2.0943951023931953"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<caption val="小圓跑一圈所對應的大圓圓心角"/>
</element>
<expression label="s" exp="(θ * R)" />
<element type="numeric" label="s">
<value val="8.208"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<command name="Div">
<input a0="s" a1="((2 * π) * r)"/>
<output a0="m"/>
</command>
<element type="numeric" label="m">
<value val="0"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="θ0" exp="θ - (m * θu)" />
<element type="numeric" label="θ0">
<value val="1.368"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<command name="Circle">
<input a0="O" a1="R"/>
<output a0="cir1"/>
</command>
<element type="conic" label="cir1">
<show object="true" label="false" ev="4"/>
<objColor r="32" g="32" b="32" alpha="0"/>
<layer val="1"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<lineStyle thickness="5" type="0" typeHidden="1" opacity="178"/>
<eigenvectors x0="1" y0="0" z0="1.0" x1="0" y1="1" z1="1.0"/>
<matrix A0="1" A1="1" A2="-36" A3="0" A4="0" A5="0"/>
<eqnStyle style="specific"/>
</element>
<expression label="ϕ" exp="((θ * R)) / abs(r)" />
<element type="numeric" label="ϕ">
<value val="4.104"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="P" exp="C + v_P" type="point" />
<element type="point" label="P">
<show object="true" label="false" ev="4"/>
<objColor r="0" g="0" b="255" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="0.23399420329917242" y="9.286265484910587" z="1"/>
<coordStyle style="polar"/>
<pointSize val="7"/>
<pointStyle val="0"/>
</element>
<expression label="B" exp="(R; θ)" type="point" />
<element type="point" label="B">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="1.2084548214871036" y="5.8770432144424944" z="1"/>
<coordStyle style="polar"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<command name="Vector">
<input a0="C" a1="B"/>
<output a0="u"/>
</command>
<element type="vector" label="u">
<show object="true" label="false" ev="4"/>
<condition showObject="showCoords"/>
<objColor r="102" g="153" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<coords x="-0.40281827382903446" y="-1.9590144048141651" z="0"/>
<lineStyle thickness="9" type="0" typeHidden="1" opacity="229"/>
<coordStyle style="cartesian"/>
<startPoint exp="C"/>
</element>
<expression label="E" exp="C + v2" type="point" />
<element type="point" label="E">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="3.570287500130303" y="7.433239345427625" z="1"/>
<coordStyle style="polar"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<command name="Vector">
<input a0="C" a1="E"/>
<output a0="v"/>
</command>
<element type="vector" label="v">
<show object="true" label="false" ev="4"/>
<condition showObject="showCoords"/>
<objColor r="0" g="0" b="255" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<coords x="1.959014404814165" y="-0.4028182738290349" z="0"/>
<lineStyle thickness="9" type="0" typeHidden="1" opacity="178"/>
<coordStyle style="cartesian"/>
<startPoint exp="C"/>
</element>
<command name="Angle">
<input a0="B" a1="C" a2="P"/>
<output a0="angA"/>
</command>
<element type="angle" label="angA">
<angleStyle val="0"/>
<value val="4.104"/>
<show object="true" label="false" ev="4"/>
<condition showObject="showPhi ∧ r > 0"/>
<objColor r="128" g="0" b="128" alpha="0.10000000149011612"/>
<layer val="0"/>
<labelMode val="1"/>
<decoration type="6"/>
<lineStyle thickness="5" type="0" typeHidden="2" opacity="178"/>
<arcSize val="25"/>
<selectionAllowed val="false"/>
</element>
<element type="image" label="earth">
<file name="9ce52a30e0968fbd5c5e23ed28a6c4c1/devicePicture.png"/>
<inBackground val="false"/>
<startPoint number="0" exp="PinEarth1"/>
<startPoint number="1" exp="PinEarth2"/>
<startPoint number="2" exp="PinEarth4"/>
<show object="true" label="false"/>
<condition showObject="r ≥ 0"/>
<objColor r="0" g="0" b="0" alpha="0.8500000238418579"/>
<layer val="0"/>
<labelMode val="0"/>
<animation step="1" speed="1" type="0" playing="false"/>
<selectionAllowed val="false"/>
</element>
<expression label ="j" exp="(0, 1)" type="vector"/>
<element type="vector" label="j">
<show object="false" label="false" ev="4"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<fixed val="true"/>
<selectionAllowed val="false"/>
<coords x="0" y="1" z="0"/>
<lineStyle thickness="9" type="0" typeHidden="1" opacity="178"/>
<coordStyle style="cartesian"/>
</element>
<expression label ="kEarth1_x" exp="0.07"/>
<element type="numeric" label="kEarth1_x">
<value val="0.07"/>
<symbolic val="true" />
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="1"/>
<labelMode val="1"/>
<animation step="0.1" speed="1" type="0" playing="false"/>
</element>
<expression label ="kEarth1_y" exp="0.05"/>
<element type="numeric" label="kEarth1_y">
<value val="0.05"/>
<symbolic val="true" />
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="1"/>
<labelMode val="1"/>
<animation step="0.1" speed="1" type="0" playing="false"/>
</element>
<expression label="PinEarth1" exp="O - (R * (1 + kEarth1_x, 1 + kEarth1_y))" type="point" />
<element type="point" label="PinEarth1">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="-6.42" y="-6.300000000000001" z="1"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<expression label ="kEarth2_x" exp="0.01"/>
<element type="numeric" label="kEarth2_x">
<value val="0.01"/>
<symbolic val="true" />
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="1"/>
<labelMode val="1"/>
<animation step="0.1" speed="1" type="0" playing="false"/>
</element>
<expression label ="kEarth2_y" exp="0.05"/>
<element type="numeric" label="kEarth2_y">
<value val="0.05"/>
<symbolic val="true" />
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="1"/>
<labelMode val="1"/>
<animation step="0.1" speed="1" type="0" playing="false"/>
</element>
<expression label="PinEarth2" exp="O + (R * (1 + kEarth2_x, -1 - kEarth2_y))" type="point" />
<element type="point" label="PinEarth2">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="6.0600000000000005" y="-6.300000000000001" z="1"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<expression label ="kEarth4_x" exp="0.07"/>
<element type="numeric" label="kEarth4_x">
<value val="0.07"/>
<symbolic val="true" />
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="1"/>
<labelMode val="1"/>
<animation step="0.1" speed="1" type="0" playing="false"/>
</element>
<expression label ="kEarth4_y" exp="0.01"/>
<element type="numeric" label="kEarth4_y">
<value val="0.01"/>
<symbolic val="true" />
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
<layer val="1"/>
<labelMode val="1"/>
<animation step="0.1" speed="1" type="0" playing="false"/>
</element>
<expression label="PinEarth4" exp="O + (R * (-1 - kEarth4_x, 1 + kEarth4_y))" type="point" />
<element type="point" label="PinEarth4">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="-6.42" y="6.0600000000000005" z="1"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<command name="Circle">
<input a0="O" a1="R + r"/>
<output a0="cir_r"/>
</command>
<element type="conic" label="cir_r">
<show object="true" label="false" ev="4"/>
<condition showObject="showControls"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="1"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<lineStyle thickness="3" type="20" typeHidden="1" opacity="178"/>
<eigenvectors x0="1" y0="0" z0="1.0" x1="0" y1="1" z1="1.0"/>
<matrix A0="1" A1="1" A2="-64" A3="0" A4="0" A5="0"/>
<eqnStyle style="specific"/>
</element>
<expression label="kPinR" exp="(20 * pixels)" />
<element type="numeric" label="kPinR">
<value val="0.7477235947948312"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="txR" exp=""R""/>
<element type="text" label="txR">
<show object="true" label="false" ev="20"/>
<condition showObject="showLabels"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.4" size="7" style="1"/>
<startPoint exp="PinR"/>
<labelOffset x="-16" y="-16"/>
</element>
<expression label="kPinThetaAngle" exp="(m * θu) + θ0 / 2" />
<element type="numeric" label="kPinThetaAngle">
<value val="0.684"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="kPinThetaR" exp="(50 * pixels)" />
<element type="numeric" label="kPinThetaR">
<value val="1.8693089869870778"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="PinTheta" exp="(kPinThetaR; kPinThetaAngle)" type="point" />
<element type="point" label="PinTheta">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="1.4488104217578897" y="1.1812131266779846" z="1"/>
<coordStyle style="polar"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<expression label="txTheta" exp=""θ""/>
<element type="text" label="txTheta">
<show object="true" label="false" ev="20"/>
<condition showObject="showTheta ∧ showLabels"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.4" size="7" style="1"/>
<startPoint exp="PinTheta"/>
<labelOffset x="-12" y="-14"/>
</element>
<element type="numeric" label="n">
<value val="5"/>
<symbolic val="true" />
<show object="true" label="true"/>
<objColor r="255" g="127" b="0" alpha="0.10000000149011612"/>
<bgColor r="224" g="224" b="224" alpha="255"/>
<layer val="2"/>
<labelOffset x="-3" y="5"/>
<labelMode val="1"/>
<slider min="1" max="5" absoluteScreenLocation="true" width="100" x="45" y="416" fixed="false" horizontal="true" showAlgebra="true"/>
<pointSize val="10"/>
<lineStyle thickness="10" type="0" typeHidden="1"/>
<animation step="1" speed="1" type="0" playing="false"/>
<caption val="圈數"/>
</element>
<expression label="maxT" exp="((2 * n) * π / ω)" />
<element type="numeric" label="maxT">
<value val="157.07963267948966"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<command name="Segment">
<input a0="C" a1="P"/>
<output a0="segCP"/>
</command>
<element type="segment" label="segCP">
<show object="true" label="false" ev="4"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="1"/>
<labelMode val="0"/>
<coords x="-1.450207865653927" y="-1.3772788920169656" z="13.129117672174926"/>
<lineStyle thickness="5" type="0" typeHidden="1" opacity="178"/>
<outlyingIntersections val="false"/>
<keepTypeOnTransform val="true"/>
</element>
<command name="Segment">
<input a0="O" a1="B"/>
<output a0="segOB"/>
</command>
<element type="segment" label="segOB">
<show object="true" label="false" ev="4"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<coords x="-5.8770432144424944" y="1.2084548214871036" z="0"/>
<lineStyle thickness="5" type="0" typeHidden="1" opacity="178"/>
<outlyingIntersections val="false"/>
<keepTypeOnTransform val="true"/>
</element>
<element type="boolean" label="showCoords">
<value val="false"/>
<show object="true" label="true"/>
<objColor r="255" g="255" b="255" alpha="0"/>
<layer val="2"/>
<labelOffset x="28" y="479"/>
<labelMode val="3"/>
<checkbox fixed="true"/>
<caption val="圓心座標系"/>
</element>
<command name="Mod">
<input a0="s" a1="((2 * π) * r)"/>
<output a0="s0"/>
</command>
<element type="numeric" label="s0">
<value val="8.208"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="F" exp="(R; (m * θu))" type="point" />
<element type="point" label="F">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="6" y="0" z="1"/>
<coordStyle style="polar"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<command name="CircleArc">
<input a0="O" a1="F" a2="B"/>
<output a0="arc1"/>
</command>
<element type="conicpart" label="arc1">
<show object="true" label="false" ev="4"/>
<objColor r="255" g="0" b="0" alpha="0"/>
<layer val="1"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<lineStyle thickness="11" type="0" typeHidden="1" opacity="178"/>
<eigenvectors x0="1" y0="0" z0="1.0" x1="0" y1="1" z1="1.0"/>
<matrix A0="1" A1="1" A2="-36" A3="0" A4="0" A5="0"/>
<eqnStyle style="implicit"/>
<outlyingIntersections val="false"/>
<keepTypeOnTransform val="true"/>
</element>
<command name="Segment">
<input a0="O" a1="F"/>
<output a0="segOF"/>
</command>
<element type="segment" label="segOF">
<show object="true" label="false" ev="4"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="1"/>
<labelMode val="0"/>
<coords x="0" y="6" z="0"/>
<lineStyle thickness="5" type="0" typeHidden="1" opacity="178"/>
<outlyingIntersections val="false"/>
<keepTypeOnTransform val="true"/>
</element>
<command name="CircleSector">
<input a0="O" a1="F" a2="B"/>
<output a0="sec1"/>
</command>
<element type="conicpart" label="sec1">
<show object="true" label="false" ev="4"/>
<objColor r="224" g="224" b="224" alpha="0.550000011920929"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<lineStyle thickness="1" type="0" typeHidden="1" opacity="178"/>
<eigenvectors x0="1" y0="0" z0="1.0" x1="0" y1="1" z1="1.0"/>
<matrix A0="1" A1="1" A2="-36" A3="0" A4="0" A5="0"/>
<eqnStyle style="implicit"/>
<outlyingIntersections val="false"/>
<keepTypeOnTransform val="true"/>
</element>
<command name="Angle">
<input a0="F" a1="O" a2="B"/>
<output a0="angT"/>
</command>
<element type="angle" label="angT">
<angleStyle val="0"/>
<value val="1.368"/>
<show object="true" label="false" ev="4"/>
<condition showObject="θ0 > 0.4"/>
<objColor r="128" g="0" b="128" alpha="0.10000000149011612"/>
<layer val="1"/>
<labelMode val="1"/>
<decoration type="6"/>
<lineStyle thickness="5" type="0" typeHidden="2" opacity="178"/>
<arcSize val="30"/>
<selectionAllowed val="false"/>
</element>
<expression label="showTheta" exp="θ0 > 0.3" />
<element type="boolean" label="showTheta">
<value val="true"/>
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<checkbox fixed="true"/>
</element>
<element type="boolean" label="showControls">
<value val="false"/>
<show object="true" label="true"/>
<objColor r="255" g="255" b="255" alpha="0"/>
<layer val="2"/>
<labelOffset x="28" y="506"/>
<labelMode val="3"/>
<checkbox fixed="true"/>
<caption val="顯示控制點"/>
</element>
<command name="Vector">
<input a0="O" a1="F"/>
<output a0="e_1"/>
</command>
<element type="vector" label="e_1">
<show object="false" label="false" ev="4"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="3"/>
<selectionAllowed val="false"/>
<coords x="6" y="0" z="0"/>
<lineStyle thickness="5" type="0" typeHidden="1" opacity="178"/>
<coordStyle style="cartesian"/>
<startPoint exp="O"/>
<caption val="圓 R 上的座標系 (用於計算圓弧用)"/>
</element>
<expression label="e_2" exp="((-y(e_1)), x(e_1))" type="vector" />
<element type="vector" label="e_2">
<show object="false" label="false" ev="4"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="3"/>
<selectionAllowed val="false"/>
<coords x="0" y="6" z="0"/>
<lineStyle thickness="5" type="0" typeHidden="1" opacity="178"/>
<coordStyle style="cartesian"/>
<caption val="圓 R 上的座標系 (用於計算圓弧用)"/>
</element>
<expression label="PinR" exp="F / 2 - (kPinR * e_2 / R)" type="point" />
<element type="point" label="PinR">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="3" y="-0.7477235947948312" z="1"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<expression label="kPhiR" exp="(40 * pixels)" />
<element type="numeric" label="kPhiR">
<value val="1.4954471895896624"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="kPhiAngle" exp="θ + If[r > 0, π, 0] + (sgn(r) * Mod[ϕ, (2 * π)] / 2)" />
<element type="numeric" label="kPhiAngle">
<value val="6.561592653589793"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="PinPhi" exp="C + (kPhiR; kPhiAngle)" type="point" />
<element type="point" label="PinPhi">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="3.0491371308837287" y="8.247043400121282" z="1"/>
<coordStyle style="polar"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<expression label="txPhi" exp=""ϕ""/>
<element type="text" label="txPhi">
<show object="true" label="false" ev="20"/>
<condition showObject="showPhi ∧ showLabels"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.4" size="7" style="1"/>
<startPoint exp="PinPhi"/>
<labelOffset x="-15" y="-16"/>
</element>
<command name="Mod">
<input a0="ϕ" a1="(2 * π)"/>
<output a0="α0"/>
</command>
<element type="numeric" label="α0">
<value val="4.104"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="showPhi" exp="α0 > 0.4" />
<element type="boolean" label="showPhi">
<value val="true"/>
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<checkbox fixed="true"/>
</element>
<command name="Segment">
<input a0="A" a1="D"/>
<output a0="segAD"/>
</command>
<element type="segment" label="segAD">
<show object="true" label="false" ev="4"/>
<condition showObject="showControls"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="1"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<coords x="0" y="2" z="0"/>
<lineStyle thickness="3" type="20" typeHidden="1" opacity="178"/>
<outlyingIntersections val="false"/>
<keepTypeOnTransform val="true"/>
</element>
<expression label="txRatio" exp=""\frac{R}{r}=" + (LaTeX[R / r]) + """ />
<element type="text" label="txRatio">
<show object="true" label="false" ev="40"/>
<objColor r="255" g="255" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.4" size="7" style="1"/>
<absoluteScreenLocation x="24" y="79"/>
</element>
<expression label="kPinS" exp="(20 * pixels)" />
<element type="numeric" label="kPinS">
<value val="0.7477235947948312"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="PinS" exp="(R - kPinS; kPinThetaAngle)" type="point" />
<element type="point" label="PinS">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="4.070783828027954" y="3.3189044069001157" z="1"/>
<coordStyle style="polar"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<expression label="txS" exp=""s""/>
<element type="text" label="txS">
<show object="true" label="false" ev="20"/>
<condition showObject="θ0 > 0.15 ∧ showLabels"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.4" size="7" style="1"/>
<startPoint exp="PinS"/>
<labelOffset x="-12" y="-15"/>
</element>
<command name="Segment">
<input a0="C" a1="B"/>
<output a0="segCB"/>
</command>
<element type="segment" label="segCB">
<show object="true" label="false" ev="4"/>
<condition showObject="(¬showCoords) ∧ r > 0"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="1"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<coords x="1.9590144048141651" y="-0.40281827382903446" z="-1.7763568394002505e-15"/>
<lineStyle thickness="5" type="0" typeHidden="1" opacity="178"/>
<outlyingIntersections val="false"/>
<keepTypeOnTransform val="true"/>
</element>
<expression label="kPinr" exp="((sgn(r) * 15) * pixels)" />
<element type="numeric" label="kPinr">
<value val="0.5607926960961234"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="Pinr" exp="C + u / 2 - (kPinr * v / r)" type="point" />
<element type="point" label="Pinr">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="0.8605634735181819" y="6.969499189758263" z="1"/>
<coordStyle style="polar"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<expression label="txr" exp=""r""/>
<element type="text" label="txr">
<show object="true" label="false" ev="20"/>
<condition showObject="showLabels"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.4" size="7" style="1"/>
<startPoint exp="Pinr"/>
<labelOffset x="-12" y="-14"/>
</element>
<expression label="txEq1" exp=""θR=s=ϕr""/>
<element type="text" label="txEq1">
<show object="true" label="false" ev="40"/>
<objColor r="255" g="255" b="255" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.4" size="7" style="1"/>
<absoluteScreenLocation x="17" y="23"/>
</element>
<element type="boolean" label="animate">
<value val="true"/>
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<checkbox fixed="true"/>
<ggbscript onUpdate="StartAnimation(t, animate)"/>
</element>
<element type="image" label="sidebar">
<file name="272e4917ac634b3f78585296b64b36e5/black.png"/>
<inBackground val="false"/>
<startPoint number="0" exp="C1"/>
<startPoint number="1" exp="PinBanner"/>
<startPoint number="2" exp="C4"/>
<show object="false" label="false"/>
<objColor r="0" g="0" b="0" alpha="0.8500000238418579"/>
<layer val="0"/>
<labelMode val="0"/>
<animation step="1" speed="1" type="0" playing="false"/>
<selectionAllowed val="false"/>
</element>
<expression label="kBannerWidth" exp="(200 * pixels)" />
<element type="numeric" label="kBannerWidth">
<value val="7.477235947948311"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="PinBanner" exp="C1 + (kBannerWidth, 0)" type="point" />
<element type="point" label="PinBanner">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="-14.384631472405353" y="-11.331998247894319" z="1"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<command name="Corner">
<input a0="4"/>
<output a0="C4"/>
</command>
<element type="point" label="C4">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="-21.861867420353665" y="10.453911245811701" z="1"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<command name="Circle">
<input a0="C" a1="abs(r)"/>
<output a0="cir2"/>
</command>
<element type="conic" label="cir2">
<show object="true" label="false" ev="4"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<lineStyle thickness="5" type="0" typeHidden="1" opacity="178"/>
<eigenvectors x0="1" y0="0" z0="1.0" x1="0" y1="1" z1="1.0"/>
<matrix A0="1" A1="1" A2="59.99999999999999" A3="0" A4="-1.611273095316138" A5="-7.83605761925666"/>
<eqnStyle style="specific"/>
</element>
<command name="If">
<input a0="r > 0" a1="CircleArc[C, B, P]" a2="CircleArc[C, P, B]"/>
<output a0="arc2"/>
</command>
<element type="conicpart" label="arc2">
<show object="true" label="false" ev="4"/>
<objColor r="255" g="0" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<lineStyle thickness="11" type="0" typeHidden="1" opacity="178"/>
<eigenvectors x0="1" y0="0" z0="1.0" x1="0" y1="1" z1="1.0"/>
<matrix A0="1" A1="1" A2="59.99999999999999" A3="0" A4="-1.611273095316138" A5="-7.83605761925666"/>
<eqnStyle style="implicit"/>
<outlyingIntersections val="false"/>
<keepTypeOnTransform val="true"/>
</element>
<command name="Angle">
<input a0="P" a1="C" a2="B"/>
<output a0="angA2"/>
</command>
<element type="angle" label="angA2">
<angleStyle val="0"/>
<value val="2.179185307179586"/>
<show object="true" label="false" ev="4"/>
<condition showObject="r < 0 ∧ showPhi"/>
<objColor r="128" g="0" b="128" alpha="0.10000000149011612"/>
<layer val="2"/>
<labelMode val="1"/>
<decoration type="7"/>
<lineStyle thickness="5" type="0" typeHidden="2" opacity="178"/>
<arcSize val="25"/>
<selectionAllowed val="false"/>
</element>
<element type="image" label="starryNight">
<file name="80fe1a3dc1be81af605c35a8da7c1089/starry night.jpg"/>
<inBackground val="false"/>
<startPoint number="0" exp="C1"/>
<startPoint number="1" exp="C2"/>
<startPoint number="2" exp="C4"/>
<show object="true" label="false"/>
<condition showObject="k < -1"/>
<objColor r="0" g="0" b="0" alpha="0.44999998807907104"/>
<layer val="0"/>
<labelMode val="0"/>
<animation step="1" speed="1" type="0" playing="false"/>
<selectionAllowed val="false"/>
</element>
<command name="Circle">
<input a0="O" a1="R"/>
<output a0="cir11"/>
</command>
<element type="conic" label="cir11">
<show object="true" label="false" ev="4"/>
<condition showObject="r < 0"/>
<objColor r="255" g="255" b="255" alpha="1"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<lineStyle thickness="13" type="0" typeHidden="1" opacity="178"/>
<eigenvectors x0="1" y0="0" z0="1.0" x1="0" y1="1" z1="1.0"/>
<matrix A0="1" A1="1" A2="-36" A3="0" A4="0" A5="0"/>
<eqnStyle style="specific"/>
</element>
<expression label="text2" exp=""R=" + (LaTeX[R]) + """ />
<element type="text" label="text2">
<show object="true" label="false" ev="40"/>
<objColor r="255" g="255" b="255" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.4" size="7" style="1"/>
<absoluteScreenLocation x="28" y="162"/>
</element>
<expression label="text3" exp=""r=" + (LaTeX[r]) + """ />
<element type="text" label="text3">
<show object="true" label="false" ev="40"/>
<objColor r="255" g="255" b="255" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.4" size="7" style="1"/>
<absoluteScreenLocation x="34" y="206"/>
</element>
<command name="If">
<input a0="r ≥ 0" a1="CircleSector[C, B, P]" a2="CircleSector[C, P, B]"/>
<output a0="sec2"/>
</command>
<element type="conicpart" label="sec2">
<show object="true" label="false" ev="4"/>
<objColor r="224" g="224" b="224" alpha="0.25"/>
<layer val="1"/>
<labelMode val="0"/>
<lineStyle thickness="1" type="0" typeHidden="1" opacity="178"/>
<eigenvectors x0="1" y0="0" z0="1.0" x1="0" y1="1" z1="1.0"/>
<matrix A0="1" A1="1" A2="59.99999999999999" A3="0" A4="-1.611273095316138" A5="-7.83605761925666"/>
<eqnStyle style="implicit"/>
<outlyingIntersections val="false"/>
<keepTypeOnTransform val="true"/>
</element>
<element type="image" label="banner">
<file name="c9e3af3218e1bb6a62b88fbcbda0b7e1/sidebar.png"/>
<inBackground val="false"/>
<startPoint number="0" exp="C1"/>
<startPoint number="1" exp="PinBanner"/>
<startPoint number="2" exp="C4"/>
<show object="true" label="false"/>
<objColor r="0" g="0" b="0" alpha="1"/>
<layer val="0"/>
<labelMode val="0"/>
<animation step="1" speed="1" type="0" playing="false"/>
<selectionAllowed val="false"/>
</element>
<element type="image" label="on">
<file name="b8d14138dc4560cdd9f72c78530f3143/switchOn.png"/>
<inBackground val="false"/>
<startPoint number="0" exp="PinBtn1"/>
<startPoint number="1" exp="PinBtn2"/>
<show object="true" label="false"/>
<condition showObject="animate"/>
<objColor r="0" g="0" b="0" alpha="1"/>
<layer val="2"/>
<labelMode val="0"/>
<animation step="1" speed="1" type="0" playing="false"/>
<ggbscript val="SetValue(animate, false)"/>
</element>
<element type="image" label="off">
<file name="2eadc8f88a3011efddf8374e30b429b9/switchOff.png"/>
<inBackground val="false"/>
<startPoint number="0" exp="PinBtn1"/>
<startPoint number="1" exp="PinBtn2"/>
<show object="true" label="false"/>
<condition showObject="¬animate"/>
<objColor r="0" g="0" b="0" alpha="1"/>
<layer val="2"/>
<labelMode val="0"/>
<animation step="1" speed="1" type="0" playing="false"/>
<ggbscript val="SetValue(animate, true)"/>
</element>
<expression label="kBtnPad" exp="(20 * pixels)" />
<element type="numeric" label="kBtnPad">
<value val="0.7477235947948312"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="kBtnWidth" exp="(100 * pixels)" />
<element type="numeric" label="kBtnWidth">
<value val="3.7386179739741556"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="PinBtn1" exp="PinBanner + kBtnPad" type="point" />
<element type="point" label="PinBtn1">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="-13.636907877610522" y="-10.584274653099488" z="1"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<expression label="PinBtn2" exp="PinBtn1 + (kBtnWidth * i)" type="point" />
<element type="point" label="PinBtn2">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="-9.898289903636366" y="-10.584274653099488" z="1"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<expression label="kPad" exp="(20 * pixels)" />
<element type="numeric" label="kPad">
<value val="0.7477235947948312"/>
<symbolic val="true" />
<objColor r="0" g="0" b="0" alpha="0.10000000149011612"/>
</element>
<expression label="Pinu" exp="B + (kPad * u / Length[u])" type="point" />
<element type="point" label="Pinu">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="1.0578564576088565" y="5.144642567931243" z="1"/>
<coordStyle style="polar"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<expression label="Pinv" exp="E + (kPad * v / Length[v])" type="point" />
<element type="point" label="Pinv">
<show object="false" label="true" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<coords x="4.302688146641555" y="7.282640981549378" z="1"/>
<coordStyle style="polar"/>
<pointSize val="4"/>
<pointStyle val="0"/>
</element>
<expression label="txu" exp=""\vec{u}""/>
<element type="text" label="txu">
<show object="true" label="false" ev="20"/>
<condition showObject="showCoords"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.4" size="7" style="1"/>
<startPoint exp="Pinu"/>
<labelOffset x="-13" y="-20"/>
</element>
<expression label="txv" exp=""\vec{v}""/>
<element type="text" label="txv">
<show object="true" label="false" ev="20"/>
<condition showObject="showCoords"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="1.4" size="7" style="1"/>
<startPoint exp="Pinv"/>
<labelOffset x="-13" y="-18"/>
</element>
<command name="Segment">
<input a0="O" a1="C"/>
<output a0="segOC"/>
</command>
<element type="segment" label="segOC">
<show object="true" label="false" ev="4"/>
<condition showObject="-1 < k < 0"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<coords x="-7.83605761925666" y="1.611273095316138" z="0"/>
<lineStyle thickness="5" type="0" typeHidden="1" opacity="178"/>
<outlyingIntersections val="false"/>
<keepTypeOnTransform val="true"/>
</element>
<expression label="u2" exp="((-r) * (cos(θ), sin(θ)))" type="vector" />
<element type="vector" label="u2">
<show object="false" label="false" ev="4"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="2"/>
<labelMode val="3"/>
<coords x="-0.4028182738290345" y="-1.959014404814165" z="0"/>
<lineStyle thickness="5" type="0" typeHidden="1" opacity="178"/>
<coordStyle style="cartesian"/>
<caption val="圓 r 上的座標系"/>
</element>
<command name="CurveCartesian">
<input a0="(R + r; (θ * t)) - (r; (((1 + k) * θ) * t))" a1="t" a2="0" a3="1"/>
<output a0="cycloid"/>
</command>
<element type="curvecartesian" label="cycloid">
<show object="true" label="false" ev="4"/>
<objColor r="0" g="0" b="255" alpha="0"/>
<layer val="2"/>
<labelMode val="0"/>
<lineStyle thickness="5" type="10" typeHidden="1" opacity="178"/>
</element>
<element type="boolean" label="showLabels">
<value val="true"/>
<show object="true" label="true"/>
<objColor r="255" g="255" b="255" alpha="0"/>
<layer val="2"/>
<labelOffset x="28" y="452"/>
<labelMode val="3"/>
<checkbox fixed="true"/>
<caption val="顯示標籤"/>
</element>
</construction>
</geogebra>