Rafael Tavares Juliani f269aace6b INÍCIO
2025-09-04 16:07:07 -03:00

367 lines
7.3 KiB
HTML
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Figura 1.2: Circunferência trigonométrica</title>
<script type="text/javascript" charset="UTF-8"
src="../scripts/jsxgraph/jsxgraphcore.js"></script>
<link rel="stylesheet" type="text/css" href="../scripts/jsxgraph/jsxgraph.css" />
<link rel="preconnect" href="https://fonts.gstatic.com">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-G6VT93GC1X"></script>
<script type="text/javascript" >
var head = document.getElementsByTagName('head')[0];
var js = document.createElement("script");
js.type = "text/javascript";
if ( window.location !== window.parent.location ) {
//carregado em um iframe
var url = window.top.location.href;
if (url){
var arr = url.split('/');
var dominio = arr[2];
if (dominio == "www.livro.online" || dominio == "livro.online"){
console.log('Iframe carregado no domínio de origem');
} else {
js.innerHTML = `
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-G6VT93GC1X');
`
}
} else {
js.innerHTML = `
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-G6VT93GC1X');
`
}
} else {
//não foi carregado em um iframe
js.innerHTML = `
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-G6VT93GC1X');
`
}
head.appendChild(js);
</script>
<style>
@media(max-width:768px){
.wide {display:none;}
.mobilefont {font-size:0.8em;}
}
@media(min-width:768px){
.tight {display:none;}
}
html {
overflow: hidden;
max-width: 2000px;
}
.jxgbox {
border-color: #85b8ec96;
}
.wrap600 {
break-inside: avoid-column;
overflow: hidden;
}
#jxgbox {
height:0;
width: 99%;
padding-bottom: 40%;
}
.trigonometria_legenda {
font-family: gfs_artemisia;
margin: 12px auto 20px auto;
max-width: 450px;
text-align: center;
}
span.centro {
display: block;
text-align: center;
margin: 10px 0px
}
.trigonometria_legenda p {
text-align: center;
font-size: 12px !important;
margin-top: 7px !important;
margin-bottom: 7px !important;
}
@font-face {
font-family: 'gfs_artemisia';
src: url('../gfs_artemisia/GFSArtemisia.otf') format('opentype'),
url('../gfs_artemisia/GFSArtemisia.ttf') format('trutype');
}
body{
margin: 0;
padding: 0;
}
h1 {
font-size: 28pt;
text-align: left;
margin-bottom: 43px;
}
h2 {
font-size: 14pt;
text-align: left;
margin-top: 30px;
}
</style>
</head>
<body>
<div class="wrap600 ">
<div id="jxgbox" class="jxgbox" ></div>
</div>
<div class="trigonometria_legenda">
<span><strong>Figura 1.2</strong>: Circunferência trigonométrica.</span>
<p>*Arraste o ponto A.</p>
</div>
<script type="text/javascript">
JXG.Options.renderer = 'canvas';
JXG.Options.text.cssDefaultStyle = 'fontFamily:arial';
JXG.Options.text.display = 'internal';
var board = JXG.JSXGraph.initBoard('jxgbox', {showCopyright: false, boundingbox: [-4, 1.5, 4, -1.5], axis: true, keepAspectRatio: true});
var o = board.create('point',[0,0], {name:"O", size:"1", fixed: true, label:{autoPosition: true, offset:[-15, -15]}});
var a = board.create('point',[0.5, Math.sqrt(1 - Math.pow(0.5,2))], {name:"A", size:"1", showInfobox: false});
var v = board.create('point',[1,0], {name:"V", size:"1", fixed: true, label:{autoPosition: true, offset:[10, -15]}});
c1 = board.create('circle', [o, a]);
var alpha = board.create('angle', [v, o, a], {fillColor:'orange', radius: 0.3, label:{ visible: false, fontSize:"20px", autoPosition: false, offset:[-5, -17]}});
var alpha_value = board.create('text', [0.35, 0.15, function() {
return "α = "+JXG.Math.Geometry.trueAngle(v, o, a).toFixed(0) + '°';
}], {anchor: alpha, fontSize:"17px", cssDefaultStyle:"fontFamily:gfs_artemisia; fontSize:12px;"});
var senoTxt = board.create('text', [1.2, 1.2, function(){
var graus = JXG.Math.Geometry.trueAngle(v, o, a).toFixed(0);
var seno = Math.sin(Math.PI*graus/180);
return `sen(α) = ${seno}`;
}], {cssDefaultStyle:"fontFamily:gfs_artemisia; lineHeight: 1.5; fontSize:12px"})
var cosTxt = board.create('text', [1.2, 0.9, function(){
var graus = JXG.Math.Geometry.trueAngle(v, o, a).toFixed(0);
var cosseno = Math.cos(Math.PI*graus/180);
return `cos(α) = ${cosseno}`;
}], {cssDefaultStyle:"fontFamily:gfs_artemisia; lineHeight: 1.5; fontSize:12px"})
var tgTxt = board.create('text', [1.2, 0.6, function(){
var graus = JXG.Math.Geometry.trueAngle(v, o, a).toFixed(0);
var tangente = Math.tan(Math.PI*graus/180);
if (graus == 90 || graus == 270) {
tangente = "-";
}
return `tg(α) = ${tangente}`;
}], {cssDefaultStyle:"fontFamily:gfs_artemisia; lineHeight: 1.5; fontSize:12px"})
var li2 = board.create('line',[o,a],
{straightFirst:false, straightLast:false, strokeWidth:1});
board.on('move', function(){
var an = JXG.Math.Geometry.trueAngle(v, o, a).toFixed(0);
var pot = Math.pow(a.X(),2);
if (pot > 1){
pot = 1;
}
var xis = Math.sqrt(pot);
if (an > 90 && an < 270) {
xis = -xis;
}
if (an >= 0 && an <= 180){
a.moveTo([xis, Math.sqrt(1 - pot)]);
} else {
a.moveTo([xis, - Math.sqrt(1 - pot)]);
}
});
//Comando para deixar responsivo (OBS.: Só isso não basta, precisa o css também estar configurado)
var resize = function () {
board.resizeContainer(board.containerObj.clientWidth, board.containerObj.clientHeight, true);
board.fullUpdate();
};
window.onresize = resize;
</script>
</body>
</html>