• Nenhum resultado encontrado

Conversão de imagens SVG para texto e fala

N/A
N/A
Protected

Academic year: 2021

Share "Conversão de imagens SVG para texto e fala"

Copied!
306
0
0

Texto

(1)
(2)
(3)
(4)
(5)
(6)
(7)

(8)
(9)
(10)

(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
(22)
(23)
(24)
(25)
(26)
(27)
(28)
(29)
(30)
(31)
(32)
(33)
(34)
(35)
(36)
(37)
(38)
(39)
(40)
(41)
(42)

(43)

(44)
(45)
(46)
(47)
(48)
(49)
(50)
(51)
(52)

(53)

(54)
(55)
(56)
(57)
(58)
(59)

(60)
(61)

(62)

(63)
(64)

(65)
(66)
(67)

(68)
(69)
(70)

(71)
(72)
(73)
(74)
(75)

(76)

(77)
(78)

(79)

(80)

(81)

(82)
(83)

(84)

(85)

(86)
(87)
(88)

(89)

<canvas> <svg> Cenas complexas, animações matemáticas em tempo real Elevado desempenho

(filtros, ray tracers) Manipulação de vídeo

Documentos de alta fidelidade para visualização e impressão Imagens estáticas

(90)

<polyline> <polygon>

<g>

(91)

0

x

y

(x, y)

x

y

width

height

(92)

x1

y1

x2

y2

stroke

stroke-width

(93)

x

(x1, y1)

0

(x2, y2)

y

<line x1=”0” y1=”0” x2=”50” y2=”30” stroke=”#ff00cc” stroke-width=”4”>

x

y

width

height

fill

stroke

stroke-width

(94)

(x1, y1)

height

width

y

<rect x=”20” y=”10” width=”100” height=”50” fill=”#fefefe” stroke=”#aad8f9” stroke-width=”1”>

cx

cy

r

fill

stroke

stroke-width

(95)

0

x

y

(cx, cy)

r

<circle cx=”50” cy=”50” r=”30” fill=”#ffff00” stroke=”#666666” stroke-width=”8”>

cx

cy

rx

ry

fill

(96)

stroke

stroke-width

0

x

y

(cx, cy)

rx

ry

<ellipse cx=”50” cy=”100” rx=”30” ry=”60” fill=”#00ffff” stroke=”#000000” stroke-width=”2”>

points

(97)

stroke

stroke-width

x

(x

1

, y

1

)

0

(x

2

, y

2

)

(x

n

, y

n

)

(x

4

, y

4

)

(x

3

, y

3

)

y

<polygon points=”160,676 415,676 160,292” fill=”e8f1d6” stroke=”#8c2d19” stroke-width=”6”>

transform

(98)

transform=”scale(sx sy)” sx sy

transform=”rotate(ang cy cy)” (cx, cy)

transform=”skewX(ang)” ang

transform=”skewY(ang)” ang

transform=”matrix(a b c d e f)”

𝑀𝑇 = [

𝑎 𝑐 𝑒

𝑏 𝑑 𝑓

0 0 1

]

a b c d e f

𝑉𝑇 = [𝑎 𝑏 𝑐 𝑑 𝑒 𝑓]

tx ty

(99)

𝑀𝑇

𝑡𝑟𝑎𝑛𝑠𝑙𝑎çã𝑜

= [

1 0 𝑡𝑥

0 1 𝑡𝑦

0 0

1

]

𝑉𝑇

𝑡𝑟𝑎𝑛𝑠𝑙𝑎çã𝑜

= [1 0 0 1 𝑡𝑥 𝑡𝑦]

sx sy

𝑀𝑇

𝑒𝑠𝑐𝑎𝑙𝑎

= [

𝑠𝑥

0

𝑠𝑦 0

0

0

0

0

1

]

𝑉𝑇

𝑒𝑠𝑐𝑎𝑙𝑎

= [𝑠𝑥 0 0 𝑠𝑦 0 0]

a

(100)

𝑀𝑇

𝑟𝑜𝑡𝑎çã𝑜

= [

cos⁡(𝑎) −sin⁡(𝑎) 0

sin⁡(𝑎)

cos⁡(𝑎)

0

0

0

1

]

𝑉𝑇

𝑟𝑜𝑡𝑎çã𝑜

= [cos⁡(𝑎) sin⁡(𝑎) −sin⁡(𝑎) cos⁡(𝑎) 0 0]

a

𝑀𝑇

𝑒𝑛𝑣𝑖𝑒𝑠𝑎𝑚𝑒𝑛𝑡𝑜⁡𝑠𝑒𝑔𝑢𝑛𝑑𝑜⁡𝑥

= [

1 𝑡𝑎𝑛⁡(𝑎) 0

0

1

0

0

0

1

]

𝑉𝑇

𝑒𝑛𝑣𝑖𝑒𝑠𝑎𝑚𝑒𝑛𝑡𝑜⁡𝑠𝑒𝑔𝑢𝑛𝑑𝑜⁡𝑥

= [1 0 𝑡𝑎𝑛⁡(𝑎) 1 0 0]

a

𝑀𝑇

𝑒𝑛𝑣𝑖𝑒𝑠𝑎𝑚𝑒𝑛𝑡𝑜⁡𝑠𝑒𝑔𝑢𝑛𝑑𝑜⁡𝑦

= [

tan⁡(a) 1 0

1

0 0

0

0 1

]

(101)
(102)
(103)
(104)
(105)
(106)
(107)

𝑝𝑒𝑟í𝑚𝑒𝑡𝑟𝑜

2

á𝑟𝑒𝑎

𝑐𝑜𝑚𝑝𝑟𝑖𝑚𝑒𝑛𝑡𝑜⁡𝑑𝑜⁡𝑒𝑖𝑥𝑜⁡𝑚𝑎𝑖𝑜𝑟

𝑐𝑜𝑚𝑝𝑟𝑖𝑚𝑒𝑛𝑡𝑜⁡𝑑𝑜⁡𝑒𝑖𝑥𝑜⁡𝑚𝑒𝑛𝑜𝑟

(108)

o

o

o

o

o

o

(109)

(110)

(111)

(112)
(113)
(114)
(115)
(116)
(117)

𝑄𝐶

𝐿𝐴𝐵1

=

{

"𝑝𝑟𝑒𝑡𝑜"

𝑠𝑒 [0𝑢𝑙; 20𝑢𝑙[

"𝑐𝑖𝑛𝑧𝑒𝑛𝑡𝑜⁡𝑒𝑠𝑐𝑢𝑟𝑜" 𝑠𝑒 [20𝑢𝑙; 30𝑢𝑙[

"𝑐𝑖𝑛𝑧𝑒𝑛𝑡𝑜"

𝑠𝑒 [30𝑢𝑙; 40𝑢𝑙[

"𝑐𝑖𝑛𝑧𝑒𝑛𝑡𝑜⁡𝑐𝑙𝑎𝑟𝑜"

𝑠𝑒 [40𝑢𝑙; 80𝑢𝑙[

"𝑏𝑟𝑎𝑛𝑐𝑜"

𝑠𝑒 [80𝑢𝑙; 100𝑢𝑙[

, ∀𝑈𝐻⋀𝑈𝑆 ∈ [0; 20]

𝑄𝐶

𝐿𝐴𝐵2

=

{

"𝑣𝑒𝑟𝑚𝑒𝑙ℎ𝑜" 𝑠𝑒 ]335𝑢ℎ; 360𝑢ℎ]⋀[0𝑢ℎ; 40𝑢ℎ]

"𝑎𝑚𝑎𝑟𝑒𝑙𝑜"

𝑠𝑒 ]40𝑢ℎ; 80𝑢ℎ]

"𝑣𝑒𝑟𝑑𝑒"

𝑠𝑒 ]80𝑢ℎ; 160𝑢ℎ]

"𝑡𝑢𝑟𝑞𝑢𝑒𝑠𝑎"

𝑠𝑒 ]160𝑢ℎ; 200𝑢ℎ]

"𝑎𝑧𝑢𝑙"

𝑠𝑒 ]200𝑢ℎ; 260𝑢ℎ]

"𝑝ú𝑟𝑝𝑢𝑟𝑎"

𝑠𝑒 ]260𝑢ℎ; 297𝑢ℎ]

"𝑟𝑜𝑠𝑎"

𝑠𝑒 ]297𝑢ℎ; 335𝑢ℎ]

, ∀𝑈𝐿 ∈]40; 55]⋀𝑈𝑆 ∈]50; 100]

𝑄𝐶

𝐿𝐴𝐵3

= 𝑄𝐶

𝐿𝐴𝐵2

+ "⁡𝑝á𝑙𝑖𝑑𝑜", ∀𝑈𝐻⋀𝑈𝑆 ∈]20; ⁡50]⋀𝑈𝐿 ∈]40; ⁡55]

𝑄𝐶

𝐿𝐴𝐵4

= 𝑄𝐶

𝐿𝐴𝐵2

+ "⁡𝑐𝑙𝑎𝑟𝑜", ∀𝑈𝐻⋀𝑈𝑆 ∈]50; ⁡100]⋀𝑈𝐿 ∈]55; ⁡100]

𝑄𝐶

𝐿𝐴𝐵5

= 𝑄𝐶

𝐿𝐴𝐵2

+ "⁡𝑒𝑠𝑐𝑢𝑟𝑜", ∀𝑈𝐻⋀𝑈𝑆 ∈]50; ⁡100]⋀𝑈𝐿 ∈]20; ⁡40]

(118)
(119)
(120)
(121)

(122)

(123)

(124)

(125)

(126)

(127)
(128)

(129)
(130)
(131)

(132)
(133)
(134)
(135)

(136)
(137)

(138)

Nível 1 Nível 2 Nível 3 Nível 4 Proporções do SVG Cor de fundo do SVG Título do SVG Descrição do SVG Descrição da forma dos elementos Número de elementos do SVG Interpretação do conjunto de elementos pela teoria de Gestalt Simetrias Alinhamentos Formação de grupos Descrição de cada um dos elementos Forma Localização Tamanho Cor de preenchimento Espessura e cor do perímetro Descrição técnica de cada um dos elementos Forma Localização Tamanho Cor de preenchimento Espessura e cor do perímetro Navegação pelos elementos Navegação pela forma dos elementos Navegação pela localização dos elementos Navegação pelos níveis

(139)

(140)

(141)
(142)

(143)

Z Zoom X C Cir V B A Lin S D F G Q Qua W E Eli R Ret T Tri TAB CAPS LOCK SHIFT

CTRL ALT SPACEParar

ESC F1 F2 F3 F4 F5 BACKSPACE Y U I O PolP H Esq J Cen K Dir L Los ENTER N M SHIFT CTRL ALT GR MENU

F6 F7 F8 F9 F10 F11 F12 SCROLLLOCK INSERT

HOME PAGE UP DEL END PAGE DOWN LEFT Elemento Anterior DOWN Nível Anterior RIGHT Elemento Seguinte UP Nível Seguinte % 5 ^ 6 3 Nível 3 4 Nível 4 1 Nível 1 2 Nível 2 > < ; , : . * + `´ ? ‘ » « ª º ^ ~ | \ ( 9 ) 0 & 7 * 8 Win PAUSE BREAK Ç _

(144)
(145)
(146)
(147)
(148)

function inicioDoc($titulo, $tipo)

$titulo $tipo

(149)

function instrucoes($nomeFicheiro, $robo)

$nomeFicheiro $robo

function rodapeDoc()

(150)
(151)

simplexml_load_string()

$svg

$svgL

(152)

$x1 $x2 $y1 $y2

$x1 $x1

$x2 $x2

$y1 $y1

$y2 $y2 <rect>

(153)

<polygon>

$nLin

$nRetT <rect>

$nQua

$nRet

$nCir

$nEli

$nPolT <polygon>

$nTri

$nLos

$nPol

$nElem = $nQua + $nRet + $nCir + $nEli + $nTri + $nLos + $nPol + $nLin

(154)

function aspetoTela($svgL, $svgH) $svgL $svgH

𝐴𝑠𝑝𝑒𝑡𝑜⁡𝑑𝑎⁡𝑖𝑚𝑎𝑔𝑒𝑚 = {

"𝑞𝑢𝑎𝑑𝑟𝑎𝑑𝑜"

𝑠𝑒 $𝑠𝑣𝑔𝐿 × 0,9 ≤ $𝑠𝑣𝑔𝐻 ≤ $𝑠𝑣𝑔𝐿 × 1,1

"𝑟𝑒𝑡â𝑛𝑔𝑢𝑙𝑜⁡𝑎𝑜⁡𝑏𝑎𝑖𝑥𝑜" 𝑠𝑒 $𝑠𝑣𝑔𝐿 × 1,1 > $𝑠𝑣𝑔𝐻

"𝑟𝑒𝑡â𝑛𝑔𝑢𝑙𝑜⁡𝑎𝑜⁡𝑎𝑙𝑡𝑜"

𝑠𝑒 $𝑠𝑣𝑔𝐿 × 1,1 < $𝑠𝑣𝑔𝐻

function corFundoTela($svg, $svgL, $svgH, $nRetT)

<rect> $svg $svgL $svgH <rect> <rect> #ffffff corNome

(155)

function corFundoTelaV($svg, $svgL, $svgH, $nRetT) $conteúdo <circle

function contarLin($conteudo)

function contarRetT($conteudo) <rect>

function contarCir($conteudo)

function contarEli($conteudo)

function contarPolT($conteudo) <polygon>

(156)

$svg

$nPolT

function contarTri($svg, $nPolT)

function contarLos($svg, $nPolT)

<rect> $svg <rect> $nRetT $svgL $svgH <rect> <rect>

𝑤𝑖𝑑𝑡ℎ × 0,9 ≤ ℎ𝑒𝑖𝑔ℎ𝑡 ≤ 𝑤𝑖𝑑𝑡ℎ × 1,1

<rect>

(157)

function contarQua($svg, $nRetT, $svgL, $svgH)

$nQua

function contarRet($svg, $nRetT, $nQua, $svgL, $svgH)

function localizar($pontoX, $pontoY, $pX1, $pX2, $pY1, $pY2)

$pontoX $pontoY

(158)

parte superior esquerda parte central esquerda parte inferior esquerda parte superior central parte central parte inferior central parte superior direita parte central direita parte Inferior direita $x1 $x2 $y1 $y2

𝐿𝑜𝑐𝑎𝑙𝑖𝑧𝑎çã𝑜⁡𝑎𝑝𝑟𝑜𝑥𝑖𝑚𝑎𝑑𝑎 =

=

{

"𝑝𝑎𝑟𝑡𝑒⁡𝑠𝑢𝑝𝑒𝑟𝑖𝑜𝑟⁡𝑒𝑠𝑞𝑢𝑒𝑟𝑑𝑎" 𝑠𝑒 ($𝑝𝑜𝑛𝑡𝑜𝑋⁡ ≤ ⁡$𝑥1)⁡∧⁡($𝑝𝑜𝑛𝑡𝑜𝑌⁡ ≤ ⁡$𝑦1)

"𝑝𝑎𝑟𝑡𝑒⁡𝑠𝑢𝑝𝑒𝑟𝑖𝑜𝑟⁡𝑐𝑒𝑛𝑡𝑟𝑎𝑙"

𝑠𝑒

($𝑝𝑜𝑛𝑡𝑜𝑋⁡ ≤ ⁡$𝑥2) ∧⁡($𝑝𝑜𝑛𝑡𝑜𝑋⁡ > $𝑥1) ∧

∧⁡($𝑝𝑜𝑛𝑡𝑜𝑌⁡ ≤ ⁡$𝑦1)

"𝑝𝑎𝑟𝑡𝑒⁡𝑠𝑢𝑝𝑒𝑟𝑖𝑜𝑟⁡𝑑𝑖𝑟𝑒𝑖𝑡𝑎"

𝑠𝑒 ($𝑝𝑜𝑛𝑡𝑜𝑋⁡ > ⁡$𝑥2)⁡∧ ($𝑝𝑜𝑛𝑡𝑜𝑌⁡ ≤ ⁡$𝑦1)

"𝑝𝑎𝑟𝑡𝑒⁡𝑐𝑒𝑛𝑡𝑟𝑎𝑙⁡𝑒𝑠𝑞𝑢𝑒𝑟𝑑𝑎"

𝑠𝑒

($𝑝𝑜𝑛𝑡𝑜𝑋⁡ ≤ ⁡$𝑥1)⁡∧ ($𝑝𝑜𝑛𝑡𝑜𝑌⁡ ≤ ⁡$𝑦2)⁡∧

∧ ($𝑝𝑜𝑛𝑡𝑜𝑌⁡ > ⁡$𝑦1)

"𝑝𝑎𝑟𝑡𝑒⁡𝑐𝑒𝑛𝑡𝑟𝑎𝑙"

𝑠𝑒

($𝑝𝑜𝑛𝑡𝑜𝑋⁡ ≤ ⁡$𝑥2)⁡∧ ($𝑝𝑜𝑛𝑡𝑜𝑌⁡ ≤ ⁡$𝑦2)⁡∧

∧ ($𝑝𝑜𝑛𝑡𝑜𝑋⁡ > ⁡$𝑥1)⁡∧ ($𝑝𝑜𝑛𝑡𝑜𝑌⁡ > ⁡$𝑦1)

"𝑝𝑎𝑟𝑡𝑒⁡𝑐𝑒𝑛𝑡𝑟𝑎𝑙⁡𝑑𝑖𝑟𝑒𝑖𝑡𝑎"

𝑠𝑒

($𝑝𝑜𝑛𝑡𝑜𝑋⁡ > ⁡$𝑥2)⁡∧ ($𝑝𝑜𝑛𝑡𝑜𝑌⁡ > ⁡$𝑦1)⁡∧

∧ ($𝑝𝑜𝑛𝑡𝑜𝑌⁡ ≤ ⁡$𝑦2)

"𝑝𝑎𝑟𝑡𝑒⁡𝑖𝑛𝑓𝑒𝑟𝑖𝑜𝑟⁡𝑒𝑠𝑞𝑢𝑒𝑟𝑑𝑎" 𝑠𝑒 ($𝑝𝑜𝑛𝑡𝑜𝑋⁡ ≤ ⁡$𝑥1)⁡∧ ($𝑝𝑜𝑛𝑡𝑜𝑌⁡ > ⁡$𝑦2)

"𝑝𝑎𝑟𝑡𝑒⁡𝑖𝑛𝑓𝑒𝑟𝑖𝑜𝑟⁡𝑐𝑒𝑛𝑡𝑟𝑎𝑙"

𝑠𝑒

($𝑝𝑜𝑛𝑡𝑜𝑋⁡ > ⁡$𝑥1)⁡∧ ($𝑝𝑜𝑛𝑡𝑜𝑌⁡ > ⁡$𝑦2)⁡∧)

∧ ($𝑝𝑜𝑛𝑡𝑜𝑋⁡ ≤ ⁡$𝑥2)

"𝑝𝑎𝑟𝑡𝑒⁡𝑖𝑛𝑓𝑒𝑟𝑖𝑜𝑟⁡𝑑𝑖𝑟𝑒𝑖𝑡𝑎"

𝑠𝑒 ($𝑝𝑜𝑛𝑡𝑜𝑋 > ⁡$𝑥2)⁡∧⁡($𝑝𝑜𝑛𝑡𝑜𝑌 > ⁡$𝑦2)

(159)

parte central

um pouco acima

um pouco abaixo

um pouco à

esquerda

um pouco à direita

{

"𝑢𝑚⁡𝑝𝑜𝑢𝑐𝑜⁡à⁡𝑑𝑖𝑟𝑒𝑖𝑡𝑎⁡"

𝑠𝑒 𝜃 > 315° ∨ 𝜃 ≤ 45°

"𝑢𝑚⁡𝑝𝑜𝑢𝑐𝑜⁡𝑎𝑐𝑖𝑚𝑎⁡"

𝑠𝑒 𝜃 > 45° ∧ 𝜃 ≤ 135°

"𝑢𝑚⁡𝑝𝑜𝑢𝑐𝑜⁡à⁡𝑒𝑠𝑞𝑢𝑒𝑟𝑑𝑎⁡" 𝑠𝑒 𝜃 > 135° ∧ 𝜃 ≤ 225°

"𝑢𝑚⁡𝑝𝑜𝑢𝑐𝑜⁡𝑎𝑏𝑎𝑖𝑥𝑜⁡"

𝑠𝑒 𝜃 > 225° ∧ 𝜃 ≤ 315°

+ "⁡𝑑𝑜⁡"

+ "𝑐𝑒𝑛𝑡𝑟𝑜"

(160)

function localizarCod($pontoX, $pontoY, $pX1, $pX2, $pY1, $pY2) 1 4 7 2 5 8 3 6 9 x1 x2 y1 y2 function proporcao($medida,$padrao) $medida $padrao

(161)

$medida $padrao

𝑅á𝑐𝑖𝑜 =

$𝑚𝑒𝑑𝑖𝑑𝑎

$𝑝𝑎𝑑𝑟ã𝑜

𝑃𝑟𝑜𝑝𝑜𝑟çã𝑜⁡𝑒𝑛𝑡𝑟𝑒⁡𝑐𝑜𝑚𝑝𝑟𝑖𝑚𝑒𝑛𝑡𝑜𝑠 =

=

{

"𝑐𝑖𝑛𝑐𝑜⁡𝑠𝑒𝑥𝑡𝑜𝑠"

𝑠𝑒 $𝑟𝑎𝑐𝑖𝑜 > 0,815

"𝑞𝑢𝑎𝑡𝑟𝑜⁡𝑞𝑢𝑖𝑛𝑡𝑜𝑠" 𝑠𝑒 $𝑟𝑎𝑐𝑖𝑜 ≤ 0,815 ∧ $𝑟𝑎𝑐𝑖𝑜 > 0,775

"𝑡𝑟ê𝑠⁡𝑞𝑢𝑎𝑟𝑡𝑜𝑠"

𝑠𝑒 $𝑟𝑎𝑐𝑖𝑜 ≤ 0,775 ∧ $𝑟𝑎𝑐𝑖𝑜 > 0,710

"𝑑𝑜𝑖𝑠⁡𝑡𝑒𝑟ç𝑜𝑠"

𝑠𝑒 $𝑟𝑎𝑐𝑖𝑜 ≤ 0,710 ∧ $𝑟𝑎𝑐𝑖𝑜 > 0,585

"𝑚𝑒𝑡𝑎𝑑𝑒"

𝑠𝑒 $𝑟𝑎𝑐𝑖𝑜 ≤ 0,585 ∧ $𝑟𝑎𝑐𝑖𝑜 > 0,420

"𝑢𝑚⁡𝑡𝑒𝑟ç𝑜"

𝑠𝑒 $𝑟𝑎𝑐𝑖𝑜 ≤ 0,420 ∧ $𝑟𝑎𝑐𝑖𝑜 > 0,295

"𝑢𝑚⁡𝑞𝑢𝑎𝑟𝑡𝑜"

𝑠𝑒 $𝑟𝑎𝑐𝑖𝑜 ≤ 0,295 ∧ $𝑟𝑎𝑐𝑖𝑜 > 0,225

"𝑢𝑚⁡𝑞𝑢𝑖𝑛𝑡𝑜"

𝑠𝑒 $𝑟𝑎𝑐𝑖𝑜 ≤ 0,225 ∧ $𝑟𝑎𝑐𝑖𝑜 > 0,185

"𝑢𝑚⁡𝑠𝑒𝑥𝑡𝑜"

𝑠𝑒 $𝑟𝑎𝑐𝑖𝑜 ≤ 0,185 ∧ $𝑟𝑎𝑐𝑖𝑜 > 0,155

"𝑢𝑚⁡𝑠é𝑡𝑖𝑚𝑜"

𝑠𝑒 $𝑟𝑎𝑐𝑖𝑜 ≤ 0,155 ∧ $𝑟𝑎𝑐𝑖𝑜 > 0,130

"𝑢𝑚⁡𝑜𝑖𝑡𝑎𝑣𝑜"

𝑠𝑒 $𝑟𝑎𝑐𝑖𝑜 ≤ 0,130

(162)

$medida $padrao

𝐸𝑠𝑝𝑒𝑠𝑠𝑢𝑟𝑎 = {

"𝑓𝑖𝑛𝑎"

𝑠𝑒 $𝑟𝑎𝑐𝑖𝑜 > 150

"𝑚é𝑑𝑖𝑎"

𝑠𝑒 75 < $𝑟𝑎𝑐𝑖𝑜 ≤ 150

"𝑔𝑟𝑜𝑠𝑠𝑎" 𝑠𝑒 $𝑟𝑎𝑐𝑖𝑜 ≤ 75

function corNome($hexcode) $h $s $l

𝑁í𝑣𝑒𝑙⁡𝑑𝑒⁡𝑐𝑖𝑛𝑧𝑒𝑛𝑡𝑜 =

{

"𝑐𝑖𝑛𝑧𝑒𝑛𝑡𝑜⁡𝑒𝑠𝑐𝑢𝑟𝑜" 𝑠𝑒 (0 ≤ $𝑠 ≤ 20) ∧ (20 ≤ $𝑙 < 50), ∀$ℎ

"𝑐𝑖𝑛𝑧𝑒𝑛𝑡𝑜"

𝑠𝑒 (0 ≤ $𝑠 ≤ 20) ∧ (50 ≤ $𝑙 < 80), ∀$ℎ

"𝑐𝑖𝑛𝑧𝑒𝑛𝑡𝑜⁡𝑐𝑙𝑎𝑟𝑜"

𝑠𝑒 (0 ≤ $𝑠 ≤ 20) ∧ (80 ≤ $𝑙 < 95), ∀$ℎ

"𝑏𝑟𝑎𝑛𝑐𝑜"

𝑠𝑒 (0 ≤ $𝑠 ≤ 20) ∧ (95 ≤ $𝑙 ≤ 100), ∀$ℎ

(163)

𝐶𝑜𝑟 = {

"𝑐𝑎𝑠𝑡𝑎𝑛ℎ𝑜" 𝑠𝑒 ($𝑠 < 80) ∧ (15 < $ℎ ≤ 50) ∧ ($𝑙 > 20)

"𝑙𝑎𝑟𝑎𝑛𝑗𝑎"

𝑠𝑒 ($𝑠 ≥ 80) ∧ (15 < $ℎ ≤ 50) ∧ ($𝑙 > 20)

"𝑎𝑚𝑎𝑟𝑒𝑙𝑜"

𝑠𝑒 (50 < $ℎ ≤ 65) ∧ ($𝑙 > 20)

(164)

aspetoTela

corFundoTela

$nElem == 0

$nElem > 0

$nElem > 0

$nElem

$nElem > 0

$nElem > 1

$svgTitulo <> ””

$svgTitulo <> ””

$svgTitulo

$svgTitulo <> ””

$svgDescricao <> ””

(165)

$svgDescricao <> ””

$svgDescricao

$svgDescricao <> ””

$nElem == 0 $nElem == 1 $nElem > 1 $nLin == 1 $nLin == 2 $nLin > 2 $nLin

(166)

$rElem8 > 1

$rElem = 1

𝑅 =

∑ 𝑥 × 𝑦

√(∑ 𝑥

2

) × (∑ 𝑦

2

)

; 𝑥 = 𝑥

𝑖

− 𝑥;

̅ 𝑦 = 𝑦

𝑖

− 𝑦;

̅

(167)

𝑅

𝑛

=

𝐷

̅(𝑂𝑏𝑠)

0,5 × √

𝑎

𝑛

(168)

$nElem == 2  $y1 == $y2 $nElem == 2  $x1 == $x2 $nElem > 2  (($corr > 0.9) ($corr < -0.9)) ($nElem > 2)  ($contaGrupos <> $elemGlob)  ($contaGrupos == 1) ($nElem > 2)  ($contaGrupos <> $elemGlob)  ($contaGrupos > 1) $contaGrupos

(169)

$elemGlob $elemGlobF

$elemLin $elemRet $elemQua $elemLos

$elemTri $elemCir $elemEli $elemPol

$elemSE $elemS $elemSD $elemE $elemC

$elemD $elemIE $elemI $elemID $elemSEF $elemSF $elemSDF $elemEF $elemCF $elemDF $elemIEF $elemIF $elemIDF

<rect>

width

$rectLargura

height

$rectAltura

x

$rectX

(170)

fill

$rectCorV $rectCor

stroke

$rectCorBordaV $rectCorBorda

stroke-width

$rectLarguraBorda

$𝑟𝑒𝑐𝑡𝐶𝑒𝑛𝑡𝑟𝑜𝑖𝑑𝑒𝑋 = $𝑟𝑒𝑐𝑡𝑋 +

$𝑟𝑒𝑐𝑡𝐿𝑎𝑟𝑔𝑢𝑟𝑎

2

$𝑟𝑒𝑐𝑡𝐶𝑒𝑛𝑡𝑟𝑜𝑖𝑑𝑒𝑌 = $𝑟𝑒𝑐𝑡𝑌 +

$𝑟𝑒𝑐𝑡𝐴𝑙𝑡𝑢𝑟𝑎

2

$𝑎𝑟𝑒𝑎 = $𝑟𝑒𝑐𝑡𝐿𝑎𝑟𝑔𝑢𝑟𝑎 × $𝑟𝑒𝑐𝑡𝐴𝑙𝑡𝑢𝑟𝑎

$𝑝𝑒𝑟𝑖𝑚𝑒𝑡𝑟𝑜 = 2 × $𝑟𝑒𝑐𝑡𝐿𝑎𝑟𝑔𝑢𝑟𝑎 + 2 × $𝑟𝑒𝑐𝑡𝐴𝑙𝑡𝑢𝑟𝑎

' O retângulo '.($elemRet+1).' tem, de largura, '.proporcao($rectLargura, $svgL).' da largura da imagem, e de altura, ' . proporcao($rectAltura, $svgH) . ' da altura da imagem, está preenchido â '.$rectCor.', com perímetro de espessura '.espessura($rectLarguraBorda, $svgL).', em

'.$rectCorBorda.', e situa-se '.localizar($rectCentroideX, $rectCentroideY, $x1, $x2, $y1, $y2).' da imagem.';

(171)

' Retângulo '.($elemRetF+1).': Vértice superior esquerdo em xis igual â '.$rectX.' picséis, e ípsilóne igual â '.$rectY.' picséis. Largura: '.$rectLargura.' picséis. Altura: '.$rectAltura.' picséis. Espessura duu perímetro: '.$rectLarguraBorda[$i].' picséis. Cor duu perímetro: cardinal '.$rectCorBordaV.'. Cor de preenchimento: cardinal '.$rectCorV.'. Área: '.$area.' picséis quadrados. Perímetro: '.$perimetro.' picséis.';

<rect>

width

$quaLargura

height

$quaAltura

x

$quaX

y

$quaY

fill

$quaCorV $quaCor

stroke

$quaCorBordaV $quaCorBorda

(172)

$𝑞𝑢𝑎𝐶𝑒𝑛𝑡𝑟𝑜𝑖𝑑𝑒𝑋 = $𝑞𝑢𝑎𝑋 +

$𝑞𝑢𝑎𝐿𝑎𝑟𝑔𝑢𝑟𝑎

2

$𝑞𝑢𝑎𝐶𝑒𝑛𝑡𝑟𝑜𝑖𝑑𝑒𝑌 = $𝑞𝑢𝑎𝑌 +

$𝑞𝑢𝑎𝐴𝑙𝑡𝑢𝑟𝑎

2

$𝑎𝑟𝑒𝑎 = $𝑞𝑢𝑎𝐿𝑎𝑟𝑔𝑢𝑟𝑎 × $𝑞𝑢𝑎𝐴𝑙𝑡𝑢𝑟𝑎

$𝑝𝑒𝑟𝑖𝑚𝑒𝑡𝑟𝑜 = 2 × $𝑞𝑢𝑎𝐿𝑎𝑟𝑔𝑢𝑟𝑎 + 2 × $𝑞𝑢𝑎𝐴𝑙𝑡𝑢𝑟𝑎

' O quadrado '.($elemQua+1).' tem, de lado, '.proporcao($quaLargura,

$svgL).' da largura da imagem, está preenchido â '.$quaCor.', com perímetro de espessura '.espessura($quaLarguraBorda, $svgL).', em '.$quaCorBorda.', e situa-se '.localizar($quaCentroideX, $quaCentroideY, $x1, $x2, $y1, $y2).' da imagem.';

' Quadrado '.($elemQuaF+1).': Vértice superior esquerdo em xis igual â '.$quaX.' picséis, e ípsilóne igual â '.$quaY.' picséis. Largura: '.$quaLargura.' picséis. Altura: '.$quaAltura.' picséis. Espessura duu perímetro: '.$quaLarguraBorda.' picséis. Cor duu perímetro: cardinal '.$rectCorBordaV.'. Cor de preenchimento: cardinal '.$rectCorV.'. Área: '.$area.' picséis quadrados. Perímetro: '.$perimetro.' picséis.';

(173)

<polygon>

$tL

points

$pontos

fill

$diamondCorV $diamondCor

stroke

$diamondCorBordaV

$diamondCorBorda

stroke-width

$diamondBorda

$tLH

(174)

$𝑎𝑟𝑒𝑎 =

$𝑡𝐿𝐻 × $𝑡𝐿𝑉

2

$𝑝𝑒𝑟𝑖𝑚𝑒𝑡𝑟𝑜 = 4 × $𝑡𝐿

$tipo $proporcoes

' O quadrilátero '.($elemLos+1).', '.$tipo.$proporcoes.', está preenchido â '.$diamondCor.', com perímetro de espessura '.espessura($diamondBorda, $svgL).', em '.$diamondBordaCor.', e situa-se

'.localizar($diamondCentroideX, $diamondCentroideY, $x1, $x2, $y1, $y2).' da imagem.';

' Losango '.($elemLosF+1).': '

'Vértice '.($k+1).': xis igual â '.str_replace('.', ' ponto ',

$vPontos[2*$k]).' picséis e ípsilón igual â '.str_replace('.', ' ponto ', $vPontos[2*$k+1]).' picséis. ';

'Espessura duu perímetro: '.$diamondBorda.' picséis. Cor duu perímetro: cardinal '.$diamondBordaCorV.'. Cor de preenchimento: cardinal

'.$diamondCorV.'. Área: '.$area.' picséis quadrados. Perímetro: '.$perimetro.' picséis.';

(175)

<polygon>

$tL1 $tL2 $tL3

points

$pontos

fill

$triangleCorV $triangleCor

stroke

$triangleCorBordaV

$triangleCorBorda

stroke-width

$triangleBorda

(176)

$𝑎𝑟𝑒𝑎 = √$𝑝𝑒𝑟2 × ($𝑝𝑒𝑟2 − $𝑡𝐿1) × ($𝑝𝑒𝑟2 − $𝑡𝐿2) × ($𝑝𝑒𝑟3 − $𝑡𝐿3)

$tL1 $tL2 $tL3 $tipo. $tipo $proporcoes $tipo $tipo $tipo

' O triângulo '.($elemTri+1).', '.$tipo.', está preenchido â

'.$triangleCor.', com perímetro de espessura '.espessura($triangleBorda, $svgL).', em '.$triangleBordaCor.', e situa-se

'.localizar($triangleCentroideX, $triangleCentroideY, $x1, $x2, $y1, $y2).' da imagem.';

(177)

' Triângulo '.($elemTriF+1).': '

'Vértice '.($k+1).': xis igual â '.str_replace('.', ' ponto ',

$vPontos[2*$k]).' picséis e ípsilón igual â '.str_replace('.', ' ponto ', $vPontos[2*$k+1]).' picséis. ';

'Espessura duu perímetro: '.$triangleBorda.' picséis. Cor duu perímetro: cardinal '.$triangleBordaCorV.'. Cor de preenchimento: cardinal

'.$triangleCorV.'. Área: '.$area.' picséis quadrados. Perímetro: '.$perimetro.' picséis.';

<circle>

r

$circleRaio

cx

$circleX

cy

$circleY

fill

$circleV $circleCor

stroke

$circleCorBordaV

$circleCorBorda

stroke-width

$circleLarguraBorda

(178)

$𝑎𝑟𝑒𝑎 = 𝑝𝑖() × 𝑝𝑜𝑤($𝑐𝑖𝑟𝑐𝑙𝑒𝑅𝑎𝑖𝑜, 2)

$𝑝𝑒𝑟𝑖𝑚𝑒𝑡𝑟𝑜 = 2 × 𝑝𝑖() × $𝑐𝑖𝑟𝑐𝑙𝑒𝑅𝑎𝑖𝑜

' O círculo '.($elemCir+1).' tem, de diâmetro, '.proporcao($circleRaio*2, $svgL).' da largura da imagem, está preenchido â '.$circleCor.', com perímetro de espessura '.espessura($circleLarguraBorda,$svgL).', em '.$circleCorBorda.', e situa-se '.localizar($circleX, $circleY, $x1, $x2, $y1, $y2).' da imagem.';

' Quadrado '.($elemQuaF+1).': Vértice superior esquerdo em xis igual â '.$quaX.' picséis, e ípsilóne igual â '.$quaY.' picséis. Largura: '.$quaLargura.' picséis. Altura: '.$quaAltura.' picséis. Espessura duu perímetro: '.$quaLarguraBorda.' picséis. Cor duu perímetro: cardinal '.$rectCorBordaV.'. Cor de preenchimento: cardinal '.$rectCorV.'. Área: '.$area.' picséis quadrados. Perímetro: '.$perimetro.' picséis.';

(179)

rx

$ellipseRaioX

ry

$ellipseRaioY

cx

$ellipseX

cy

$ellipseY

fill

$ellipseV $ellipseCor

stroke

$ellipseCorBordaV $ellipseCorBorda

stroke-width

$ellipseLarguraBorda

transform

$ellipseAngulo transform $ellipseAngulo $ellipseX $ellipseY

$𝑎𝑟𝑒𝑎 = 𝑝𝑖() × $𝑒𝑙𝑙𝑖𝑝𝑠𝑒𝑅𝑎𝑖𝑜𝑋 × $𝑒𝑙𝑙𝑖𝑝𝑠𝑒𝑅𝑎𝑖𝑜𝑌

(180)

$𝑝𝑒𝑟𝑖𝑚𝑒𝑡𝑟𝑜 = 2 × 𝑝𝑖() × √

(𝑝𝑜𝑤($𝑒𝑙𝑙𝑖𝑝𝑠𝑒𝑅𝑎𝑖𝑜𝑋⁡, 2) + 𝑝𝑜𝑤($𝑒𝑙𝑙𝑖𝑝𝑠𝑒𝑅𝑎𝑖𝑜𝑌⁡, 2)

2

' A elipse '.($elemEli+1).$proporcoes.'. Está preenchida â '.$ellipseCor.', com perímetro de espessura '.espessura($ellipseLarguraBorda,$svgL).', em '.$ellipseCorBorda.', e situa-se '.localizar($ellipseX, $ellipseY, $x1, $x2, $y1, $y2).' da imagem'.$dizerAngulo.'.';

' Elipse '.($elemEliF+1).': Centro em xis igual a '.round($ellipseX).' picséis, e ípsilóne igual a '.round($ellipseY).' picséis. Raio em xis: '.str_replace('.', ' ponto ', round($ellipseRaioX, 1)).' picséis. Raio em ípsilóne: '.str_replace('.', ' ponto ', round($ellipseRaioY, 1)).' picséis. Espessura duu perímetro: '.$ellipseLarguraBorda.' picséis. Cor duu

perímetro: cardinal '.$ellipseCorBordaV.'. Cor de preenchimento: cardinal '.$ellipseCorV.'. Área: '.str_replace('.', ' ponto ', round($area, 1)).' picséis quadrados. Perímetro aproximado: '.str_replace('.', ' ponto ', round($perimetro, 1)).' picséis.';

<polygon>

(181)

points $pontos

fill $polygonCorV $polygonCor

stroke $polygonCorBordaV

$polygonCorBorda

stroke-width $polygonBorda

$ladosHor

$tipo

$elemTexto = ' O polígono '.($elemPol+1).', com '.$nPontos.' lados, '.$tipo.', cada lado com '.proporcao($ladoPol[0], $svgL).' da largura da imagem, está preenchido â '.$polygonCor.', com perímetro de espessura '.espessura($polygonBorda, $svgL).', em '.$polygonBordaCor.', e situa-se '.localizar($polygonCentroideX, $polygonCentroideY, $x1, $x2, $y1, $y2).' da imagem.';

(182)

' Polígono '.($elemPolF+1).': ';

'Vértice '.($k+1).': xis igual â '.str_replace('.', ' ponto ',

$vPontos[2*$k]).' picséis e ípsilón igual â '.str_replace('.', ' ponto ', $vPontos[2*$k+1]).' picséis. ';

'Espessura duu perímetro: '.$polygonBorda.' picséis. Cor duu perímetro: cardinal '.$polygonBordaCorV.'. Cor de preenchimento: cardinal

'.$polygonCorV.'.';

function pluginMeSpeak()

<script type="text/javascript">

meSpeak.speak('hello world', { option1: value1, option2: value2 … }); </script>

(183)

Option1: value1, option2: value2 …

o

amplitude

o

pitch

o

speed

o

voice

o

wordgap

o

variant

o

punct

o

nostop

o

utf16

o

ssml

(184)
(185)
(186)
(187)
(188)
(189)

o

o

o

o

o

o

(190)
(191)
(192)
(193)
(194)
(195)
(196)
(197)
(198)
(199)
(200)

Referências

Documentos relacionados

De caráter eminentemente bibliográfico, tal proposta está baseada na des- crição etnográfica enquanto realidade social apreendida a partir do “ver” (Laplantine, La

Os resultados dos índices fitossociológicos representados pela densidade, frequência, dominância e importância relativa das principais populações de plantas daninhas componentes da

Durante os grupos reconheceu-se a principal característica dos participantes como sendo “articuladores (as)” entre os setores, ou seja, os participantes compreendem essa

11.5 A carga horária das Escolas de Tempo Integral, do Ensino Fundamental, Anos Iniciais - fica assim definida: Base Comum em 800 oitocentas horas-aulas; Parte

O exercício consiste no desenvolvimento de um projeto de livro experimental ilustrado a partir da interpretação gráfica de texto literário, considerando o uso da tipografia

Ação apelativa e criativa que fomenta o interesse e a motivação dos alunos, de forma integrada e interativa, nas áreas do desporto e da alimentação equilibrada, envolvendo a

ENGLISH FRANÇAIS ITALIANO ESPAÑOL PORTUGUÊS NEDERLANDS SVENSKA SVENSKA NEDERLANDS PORTUGUÊS ESPAÑOL ITALIANO FRANÇAIS DEUTSCH ENGLISH.. MANUAL DE

Para descobrirmos a área da figura basta somar a área do triângulo EVA + a área do retângulo EAPQ. Para isso, precisamos saber quanto vale o lado EA.. 2- Uma praça ABCD é composta