Copiar
<!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>TITULO</title> </head> <body style="margin:0;padding:0; border:0; overflow: hidden;"> <script type="text/javascript" language="javascript" src="../GeoGebra5/web3d/web3d.nocache.js"></script> <article class="geogebraweb" data-param-width="600" data-param-height="400" data-param-showResetIcon="true" data-param-enableRightClick="true" data-param-enableLabelDrags="true" data-param-showMenuBar="true" data-param-showToolBar="true" data-param-showAlgebraInput="false" data-param-useBrowserForJS="true" data-param-showFullscreenButton="true" data-param-language="es" data-param-ggbbase64="UEsDBBQACAgIAMV0klMAAAAAAAAAAAAAAAAXAAAAZ2VvZ2VicmFfZGVmYXVsdHMyZC54bWztml1zmzgUhq+3v0Kjq92L2AiD7WRCOmlndrYzaZrZZDp7K4OMtcESi0SM8+srJMxHbVIbJ2t7u7mIOFhfPO/hcCS4fJ/NI/BEEkE58yDqWRAQ5vOAstCDqZyejeH7q3eXIeEhmSQYTHkyx9KDbl6zbKesnuvo1jiOPehHWAjqQxBHWOZNPLiAAGSCXjB+i+dExNgn9/6MzPEN97HUvcykjC/6/cVi0VuN1+NJ2A9D2ctEAIGaKxMeLA4uVHeNRouBrm5bFur/9fnGdH9GmZCY+QQCdR0BmeI0kkIdkojMCZNALmPiwZhTJiGI8IREHrzLLfDrNCHkNwiKRgqPBa/e/XIpZnwB+ORv4qtzMklJ2U4b/byO+vkjj3gCEg+ORhCEpph40HZdRSmKZ9iDlqkc4SVJwBOOyjM4ldzX7fXZKY4EWdVVI33mATG/OEV9RueaIhCSKAGsHoJAxIQEatawuEak9VhqaWs9+pwngQCZB2/xLQTLonw2pa6i6dzT52JQt35WLiNSm/tlvwC7HeKAxIQFqlKDM+rEeTjWnPNiYorTxuy8NebhiWA+AGS0O+UvrM7W7sQW2a6Gq8v/g0WD7yf2JwnVrOuUB6dD+SQYN33Y6UTX0mytEyWrqxiGIv+vkhk+jyOSvSL4iLIK4o02Suh2txyjDt06UMiwOkPPgRh8ckb9R0aEyNlW/eYHf9BAPcH0eFylj1SqntBobHog/7CGaFRpRlWdl4WYpsyXOqQUcD+myVNdjYFjHUKPqs/Od0CLGPuSbmcpSJhbJZf7lV25dre07md3bZ7KKB/5E5NqvUW0w4q1i3skJH5QXX1hDwlmIl90NX2pXbkEL19SzT0F1X42zVaR6/YrTkolUpXiT9Xcg7p83VKk1od4z3YPreEO8Xwjkf3TmqNy6B299XXcatgtKtiWsxljb3TEbvWkLo9XPL4WZpUlnETOdmQhckOijRNJBMXsR8uWaBnW7vG7lV3qMTJ67D/HdkVrtBorS3egRXXRmoMjy/wh59xCaIjsQ+v8MuHGGuWuPFExRm/O+Cjumu3TwXaePmf5ZvhqjWGskqRzEtFjl7T4FZZzNCTMhF0BQGbpaktLN362ihcVGdL2Eulfn5E5rdurqSc0A9emxbWpeG2bYmAKxxRuiajbGlKLG6vQVcuhv3s+ON0WPqcUTP6Tov8LeTxL5ySpBYfblV06j2vCg+ovJQ1ptwgGbX7S7hUiooFyoTlVIp0p9eY40yriieBRKsm9nxDCqnd2xo0XNJCzPLtTY09plruL6RPMeEKfOZMlDZDfBdeRfrvX2OjY5D72S1lsw1n3C9CYhVF1N14bq1LA7OXrSt9v8m0Sps7QKhAOe/Z4gMbuwBqh0bk7Hm6JFI0rpOaHrYk2wk0hxxZPFGRt7Ub7h5udgoa9KWjgxK+2YwfW5ihm9Sw0ctyBfW676PzcUQfu6y82fy9PVMukY9w91O60VvXNNgYj7qei2u42Vklo/CNCLZn20S6ecJrRiOJkuT7SmyGWJKvSjwdt1D5aOML8sv1SFPawmtonY9W+DDAXM6WKIsNz1cAMQtkH7D+GCU9ZsP5Qe5VLR4f2rXZoE84jgqtI9GFl195Hr6URbYC2f1S82d3nz4j/OOFZ48n3cpChoroDbrRRe0u84Q7Y54F4dnBX6LLrt9PLy5Z0py5Av/YxVX/1wdbVN1BLBwgl3ULB+gQAAFImAABQSwMEFAAICAgAxXSSUwAAAAAAAAAAAAAAABcAAABnZW9nZWJyYV9kZWZhdWx0czNkLnhtbO2YzXLbNhCAz81TYHAPRVAkbXpMZzTpoZ1JMs7k0isMriS0JMAAkCj61foOfaYuAVqmUttja2xnkqkOWvztAvh2tQB0/m7X1GQLxkqtSsqimBJQQldSrUq6ccu3p/TdxZvzFegVXBlOlto03JU0G0bu9bAWZanX5m1bUlFza6WgpK25G1RK2lFCdlaeKf2JN2BbLuCLWEPDP2jBnbeydq49m826rotu5ou0Wc1WKxftbEUJrlXZko6FMzR3oNTN/fAkjtnsj48fgvm3UlnHlQBKcB8VLPmmdhaLUEMDyhHXt4Ar1kqKOc5R8yuoS/q7crg5EMPKiNiYLeqPyiWdsyymF29+ORdam8oSvSspbl33QVwH0SFPZBT6tqFvG/q60NiFxs43zgaDdq07oq/+xIlL6swG9gvyFT8Gu9/rWhtiSprgDOgoFqO8Qlkk6IG6XXO0GLE4fFhaxIzlLAn6Ne/BkC2v97PyjdPCm/StS15buBmLk3/UFYSedByvZON9RqyD1m/TtgCVLwWesfd978Noak8q+OL6GohbS/GXAov+zCZKQ+E3WVUwRGPQAbkCtUUi2liModjP0sd++HU8Bu2O+XrPfO81C81eH5dq5I4sgsYiDFwkQcyDSIPI9kjgqwrrtMN3SVtuMGzRkBj6z2dj9PwnjvhO2kkYLYbqrwehE8/pMZ6OvaNj7+b41skv5VKMnpd16v18yVgG3PU/fz+M2/8yBTcOrORqAv790PEt+fxHIP+S3O8HifYVTPhd+voBP8yrR/ErCg8wYYVH6OU+R2XPhXFMxSGxhrw65tq9ySUfjrVxlog9ADE+EqKu+zVURqtbjpOmW5TzEeUxv5yn4mfZ3PPP2LcRHKXjAZEVeZzm6bP54tiQfhLZhRFr2UAF/BAtHnOvhTZh4fhNTzzaQfwcbC97zMCyOuT6eiHrUwQuvghck58mZi+NtM0hVfaKVPOQiAPVIv8OVB9/rbifqwK33+mnoTzNq9n/efUpLL9ueOXvXONWP9/Up0zZUcf+Q8kxT4vhc5Kz7JSlCXsuQC/xvLjzcTE0hhdEH8R1sjf41PcGWeRBnARxGkRx71tENm0thXQPu9ZuzBIf2XddjseuQy+nx3kZ9e68Hkcnjw37W8OvckFmj73bzSZ/Fsxu/pC4+BdQSwcIWmYFUGcDAAAyEQAAUEsDBBQACAgIAMV0klMAAAAAAAAAAAAAAAAWAAAAZ2VvZ2VicmFfamF2YXNjcmlwdC5qc0srzUsuyczPU0hPT/LP88zLLNHQVKiu5QIAUEsHCEXM3l0aAAAAGAAAAFBLAwQUAAgICADFdJJTAAAAAAAAAAAAAAAADAAAAGdlb2dlYnJhLnhtbL1XbW/bNhD+nP4Kgp/9IlKiLAVyirb7MiArimUbhn2jJVrmIouCSL8k6I/fkZRkOUnRvHSNYx9JHe/ueXhHUtn747ZCe9FqqeolJrMAI1HnqpB1ucQ7s54m+P3Vu6wUqhSrlqO1arfcLDGzmsM86M1Y5GbzplnivOJayxyjpuLGTlniA0ayWOJkTZK8WOfTVbgIp1Gw5lMex8F0nSaFiBIe5sUCI3TU8rJWn/lW6Ibn4ibfiC2/Vjk3zt/GmOZyPj8cDrM+splqy3lZrmZHXWAEqGq9xF3jEsydTTqETp0GAZn//du1Nz+VtTa8zgVGFvFOXr27yA6yLtQBHWRhNkscB4BwI2S5AQoi25lbpQZ4aERu5F5omDrqOsxm22Cnxmv7/MK3UDXAwaiQe1mIdomDWfjgDyPVSlGbTpd0Pue9tWwvxcGbtS3nMQpSYHEvtVxVYonXvNKAStbrFhgd+trcVWLFwatpd9A/BUQm7gMq8l50SD0TS5yG8YSRySIIJox1DIxcJxgZpSpnlgC/6CsCQb0IEfrqGsz3o64b++7CCRJ0o4n9SW0njlGcuMZLUHUDY1jhJOxBhWNQ4Ghiv7DAk2FdR6jIW/32XtlLvEYjLh0pNKABmlhBvKAggBz3KPBjQLIT1IvIC+Z1Ij898qqR14m8ThS+ESR5FbX0TV4HYulTPin7xnK+MY96p4SNnIIv9+++j1yGL8L5qCBf4TE+S5+fDpjQ5Mf4jJJn+1wET1aMl6STP30h3lpYAxHPd8kIPWcC2YqHX7vTTuDDaOikG7T7LoOtwf4T5HeFBaIJCpndX6x6MGbNk/IaCCxNvrMzZPP+PMu6+JHeWO3OqRFb7RFZCPAbgvFGaTl42oiqGWJwJmXd7MyZmXxb9E2jHmgXKr/9OLjtngiuzVgNzt/TKe/P47NLwEVW8ZWo4Bp1Y2lBaM8rW4XOw1rVBvV5RLEz5+4bmdjllSwkr/8CEvrD/fNuuxItck1lITojdjrqLyYsTkYXkzDxKrlSbXFzp4EzdPxHtDCZEobRnW+Htq1zXrlzCYZPbTdd7G+EMQBBI34UuiesbGUxbv+qP6qqGMhplKzNJ96YXesukZD8rY3rQ11WwpHhVgmuXPntSh1v/O4de1t/3DX2/PD+V+UnVakWQUZRBqGWnVx56XRsYINW4HQCp9FhsEaH5ySlTsPJlZdOC9bJh9YBJT3KoPciNfL9szRya2zvb7tamuu+Y2R+ewJq9f0K9gyemyQ/yGQ2f5A82a1oa1H5RKhhHXdqp30e+qVycey0+MLN5kNd/C5KKKEv3Ba1AdNe9RRxIXK5hYl+vGOO21X9E0L1o4UoW9EjrNzF3PPapT/STSt4oTdCmIFdn6ZjNQenDz8zHHYdt7VtJZT4FBZvy4/u5gCp3XQVkem8lY1NV7SCnedWnFKykNqaKEbAzyst/OUb5TIlMxLRhNIoSsKUEsqioXymwSxOUpLCpSoM0wWlSYrR/TCPJSELSBTRmEUx3LhOpbaYpQtGU0ZIwkgQQeUeXXEAIrB+37WjxTOqsAP4+jJ8VHTfSfXj/5Drd2+ySZ+0ef8am/ZtVZzt+8/ehyCZmsbmHtTT6UQcnyDddt95atW/9qxQNTKO/eCJErZZaUtXQ4SdrjQWAbxl78xGte7NEUIGaSePVd2R0r0aX/0HUEsHCIiNYjnrBAAA5g8AAFBLAQIUABQACAgIAMV0klMl3ULB+gQAAFImAAAXAAAAAAAAAAAAAAAAAAAAAABnZW9nZWJyYV9kZWZhdWx0czJkLnhtbFBLAQIUABQACAgIAMV0klNaZgVQZwMAADIRAAAXAAAAAAAAAAAAAAAAAD8FAABnZW9nZWJyYV9kZWZhdWx0czNkLnhtbFBLAQIUABQACAgIAMV0klNFzN5dGgAAABgAAAAWAAAAAAAAAAAAAAAAAOsIAABnZW9nZWJyYV9qYXZhc2NyaXB0LmpzUEsBAhQAFAAICAgAxXSSU4iNYjnrBAAA5g8AAAwAAAAAAAAAAAAAAAAASQkAAGdlb2dlYnJhLnhtbFBLBQYAAAAABAAEAAgBAABuDgAAAAA="></article> <script type="text/javascript"> //Bloque 1 //Método que permite escuchar la comunicación entre las dos herramientas window.addEventListener("message", funcionQueManejaLosMensajes); //Función que maneja los mensajes escuchados function funcionQueManejaLosMensajes(evt) { //En la variable "nombre" se almacena el mensaje enviado por DescartesJS var data = evt.data; nombre=data.name; //Si el mensaje escuchado es "reset" pues... se resetea (Reinicia) if ((data.type === "set") && (data.name==="resetea")) { dComando=data.value; document.ggbApplet.reset(); window.parent.postMessage({ type: "update" }, '*'); } else if (data.type === "update") {} //Si el mensaje escuchado es "poligono", se ejecuta el comando GeoGebra enviado desde DescartesJS que es una cadena vacía cuyo objetivo es establecer la comunicación if ((data.type === "set") && (data.name==="poligono")) { //A las variables valor1, valor2, valor3, valor4,... se asignan los valores a, b, c, d, ... de los lados del polígono, ... valor1=document.ggbApplet.getValueString('a'); valor2=document.ggbApplet.getValueString('b'); valor3=document.ggbApplet.getValueString('c'); valor4=document.ggbApplet.getValueString('d'); valor5=document.ggbApplet.getValueString('A'); valor6=document.ggbApplet.getValueString('B'); valor7=document.ggbApplet.getValueString('C'); valor9=document.ggbApplet.getValueString('t1'); //Se envía un mensaje a DescartesJS con los valores anteriores. DescartesJS escucha y asigna estos valores a las variables A, B, C,... window.parent.postMessage({ type: "set", name: "ladoa", value: valor1 }, '*'); window.parent.postMessage({ type: "set", name: "ladob", value: valor2 }, '*'); window.parent.postMessage({ type: "set", name: "ladoc", value: valor3 }, '*'); window.parent.postMessage({ type: "set", name: "ladod", value: valor4 }, '*'); window.parent.postMessage({ type: "set", name: "puntoA", value: valor5 }, '*'); window.parent.postMessage({ type: "set", name: "puntoB", value: valor6 }, '*'); window.parent.postMessage({ type: "set", name: "puntoC", value: valor7 }, '*'); window.parent.postMessage({ type: "set", name: "poli", value: valor9 }, '*'); //Cambiamos los colores de los lados y ponemos su etiqueta document.ggbApplet.setColor('t1',00,175,255); document.ggbApplet.setLabelVisible('a',1) document.ggbApplet.setColor('a',255,0,0); document.ggbApplet.setLabelVisible('b',1) document.ggbApplet.setColor('b',0,255,0); document.ggbApplet.setLabelVisible('c',1) document.ggbApplet.setColor('c',0,0,255); document.ggbApplet.setLabelVisible('d',1) //Mensaje obligado para ir actualizando la comunicación, pues es permanente window.parent.postMessage({ type: "update" }, '*'); } else if (data.type === "update") {} } //Un comodín necesario para que funcione la comunicación function ggbOnInit() { comando='f:Derivative[x,1]'; rComando=document.ggbApplet.evalCommandCAS(comando); } </script> </body> </html>