-
Notifications
You must be signed in to change notification settings - Fork 0
/
main.go
65 lines (55 loc) · 1.59 KB
/
main.go
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
// English:
//
// This example was taken from https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/seed
//
// Português:
//
// Este exemplo foi retirado do site https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/seed
//
// <svg width="200" height="200" viewBox="0 0 220 220"
// xmlns="http://www.w3.org/2000/svg">
// <filter id="displacementFilter">
// <feTurbulence baseFrequency="0.05" seed="1000"
// result="turbulence"/>
// <feDisplacementMap in2="turbulence" in="SourceGraphic"
// scale="50" xChannelSelector="R" yChannelSelector="G"/>
// </filter>
//
// <circle cx="100" cy="100" r="100"
// style="filter: url(#displacementFilter)"/>
// </svg>
//go:build js
// +build js
package main
import (
"github.com/helmutkemper/iotmaker.webassembly/browser/factoryBrowser"
"github.com/helmutkemper/iotmaker.webassembly/browser/html"
)
func main() {
done := make(chan struct{}, 0)
stage := factoryBrowser.NewStage()
s1 := factoryBrowser.NewTagSvg().Width(200).Height(200).ViewBox([]float64{0, 0, 220, 220}).Append(
factoryBrowser.NewTagSvgFilter().Id("displacementFilter").Append(
factoryBrowser.NewTagSvgFeTurbulence().BaseFrequency(0.05).Seed(100).Result("turbulence"),
factoryBrowser.NewTagSvgFeDisplacementMap().In2("turbulence").In(html.KSvgInSourceGraphic).Scale(50).XChannelSelector(html.KSvgChannelSelectorR).YChannelSelector(html.KSvgChannelSelectorG),
),
factoryBrowser.NewTagSvgCircle().Cx(100).Cy(100).R(100).Style("filter: url(#displacementFilter)"),
)
stage.Append(s1)
<-done
}
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//