atome 0.5.6.8.7 → 0.5.7.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/documentation/basic.md +7 -8
- data/documentation/deep learning/basic_infos.txt +6 -6
- data/documentation/installation/atome_server.md +66 -1
- data/documentation/installation/buiding_atome.md +307 -0
- data/lib/atome/atome.rb +2 -3
- data/lib/atome/extensions/atome.rb +38 -12
- data/lib/atome/genesis/atomes.rb +1 -1
- data/lib/atome/genesis/genesis.rb +11 -11
- data/lib/atome/genesis/particles/event.rb +58 -50
- data/lib/atome/genesis/particles/identity.rb +3 -0
- data/lib/atome/genesis/particles/property.rb +2 -1
- data/lib/atome/genesis/particles/utility.rb +19 -12
- data/lib/atome/genesis/presets.rb +10 -0
- data/lib/atome/genesis/sparkle.rb +11 -9
- data/lib/atome/kernel/universe.rb +22 -11
- data/lib/atome/presets/atome.rb +20 -17
- data/lib/atome/utilities/essentials.rb +5 -5
- data/lib/atome/utilities/utilities.rb +168 -15
- data/lib/atome/version.rb +1 -1
- data/lib/atome.rb +1 -0
- data/lib/atome_relative.rb +1 -0
- data/lib/molecules/init.rb +22 -42
- data/lib/molecules/intuition/_deprecated_inputs.rb +111 -0
- data/lib/molecules/intuition/utillities.rb +105 -11
- data/lib/renderers/html/event.rb +20 -4
- data/lib/renderers/html/html.rb +145 -161
- data/lib/renderers/html/identity.rb +10 -2
- data/lib/renderers/html/utility.rb +64 -8
- data/vendor/assets/application/examples/b64_to_image.rb +9 -0
- data/vendor/assets/application/examples/drag.rb +9 -2
- data/vendor/assets/application/examples/matrix.rb +77 -114
- data/vendor/assets/application/examples/recorder.rb +74 -0
- data/vendor/assets/application/examples/site.rb +41 -0
- data/vendor/assets/application/examples/sub_atome_manipulation.rb +0 -2
- data/vendor/assets/application/examples/svg_img_to_vector.rb +6 -0
- data/vendor/assets/application/examples/svg_vectorizer.rb +21 -0
- data/vendor/assets/application/examples/table.rb +1 -1
- data/vendor/assets/application/examples/test.rb +572 -0
- data/vendor/assets/application/examples/tools.rb +650 -304
- data/vendor/assets/application/examples/vector.rb +16 -3
- data/vendor/assets/server/atome_server.rb +3 -2
- data/vendor/assets/server/atome_server_wasm.rb +2 -2
- data/vendor/assets/server/eDen.rb +135 -14
- data/vendor/assets/src/index.html +1 -1
- data/vendor/assets/src/index_opal.html +1 -1
- data/vendor/assets/src/index_server.html +1 -1
- data/vendor/assets/src/index_server_wasm.html +1 -1
- data/vendor/assets/src/index_wasm.html +1 -1
- data/vendor/assets/src/js/atome/atome.js +250 -49
- data/vendor/assets/src/js/atome/atome_helpers/communication.js +4 -4
- data/vendor/assets/src/js/atome/specific/opal.js +19 -3
- data/vendor/assets/src/js/atome/specific/wasm.js +18 -3
- data/vendor/assets/src/js/molecules/web.js +1 -1
- data/vendor/assets/src/medias/images/icons/Lowpass.svg +8 -0
- data/vendor/assets/src/medias/images/icons/activate.svg +3 -0
- data/vendor/assets/src/medias/images/icons/audio.svg +7 -0
- data/vendor/assets/src/medias/images/icons/band_pass.svg +8 -0
- data/vendor/assets/src/medias/images/icons/clear.svg +5 -0
- data/vendor/assets/src/medias/images/icons/color.svg +5 -0
- data/vendor/assets/src/medias/images/icons/copy.svg +8 -0
- data/vendor/assets/src/medias/images/icons/create.svg +3 -0
- data/vendor/assets/src/medias/images/icons/delete.svg +8 -0
- data/vendor/assets/src/medias/images/icons/edit-.svg +4 -0
- data/vendor/assets/src/medias/images/icons/edit.svg +4 -0
- data/vendor/assets/src/medias/images/icons/edition.svg +4 -0
- data/vendor/assets/src/medias/images/icons/equalizer-.svg +5 -0
- data/vendor/assets/src/medias/images/icons/equalizer.svg +5 -0
- data/vendor/assets/src/medias/images/icons/filter.svg +4 -0
- data/vendor/assets/src/medias/images/icons/folder.svg +4 -0
- data/vendor/assets/src/medias/images/icons/group.svg +6 -0
- data/vendor/assets/src/medias/images/icons/hamburger.svg +8 -0
- data/vendor/assets/src/medias/images/icons/high_pass.svg +5 -0
- data/vendor/assets/src/medias/images/icons/link.svg +4 -0
- data/vendor/assets/src/medias/images/icons/load.svg +4 -0
- data/vendor/assets/src/medias/images/icons/low_pass.svg +5 -0
- data/vendor/assets/src/medias/images/icons/microphone.svg +7 -0
- data/vendor/assets/src/medias/images/icons/midi_in.svg +4 -0
- data/vendor/assets/src/medias/images/icons/midi_out.svg +4 -0
- data/vendor/assets/src/medias/images/icons/modules.svg +11 -0
- data/vendor/assets/src/medias/images/icons/paste.svg +4 -0
- data/vendor/assets/src/medias/images/icons/pause.svg +5 -0
- data/vendor/assets/src/medias/images/icons/play.svg +7 -0
- data/vendor/assets/src/medias/images/icons/record.svg +4 -0
- data/vendor/assets/src/medias/images/icons/save.svg +5 -0
- data/vendor/assets/src/medias/images/icons/select--.svg +4 -0
- data/vendor/assets/src/medias/images/icons/select-.svg +5 -0
- data/vendor/assets/src/medias/images/icons/select-all.svg +4 -0
- data/vendor/assets/src/medias/images/icons/select.svg +4 -0
- data/vendor/assets/src/medias/images/icons/settings.svg +5 -0
- data/vendor/assets/src/medias/images/icons/settings0.svg +2 -0
- data/vendor/assets/src/medias/images/icons/settings1.svg +17 -0
- data/vendor/assets/src/medias/images/icons/settings2.svg +25 -0
- data/vendor/assets/src/medias/images/icons/settings_old.svg +6 -0
- data/vendor/assets/src/medias/images/icons/shape.svg +7 -0
- data/vendor/assets/src/medias/images/icons/speaker.svg +6 -0
- data/vendor/assets/src/medias/images/icons/stop.svg +4 -0
- data/vendor/assets/src/medias/images/icons/tool.svg +7 -0
- data/vendor/assets/src/medias/images/icons/tools.svg +9 -0
- data/vendor/assets/src/medias/images/icons/undo2.svg +4 -0
- data/vendor/assets/src/medias/images/icons/validate.svg +9 -0
- data/vendor/assets/src/medias/images/icons/vie.svg +3 -0
- data/vendor/assets/src/medias/images/icons/wave-saw.svg +3 -0
- data/vendor/assets/src/medias/images/icons/wave-sine.svg +3 -0
- data/vendor/assets/src/medias/images/icons/wave-square-.svg +4 -0
- data/vendor/assets/src/medias/images/icons/wave-square.svg +3 -0
- data/vendor/assets/src/medias/images/icons/wave-triangle.svg +3 -0
- data/vendor/assets/src/medias/images/icons/waveform-.svg +4 -0
- data/vendor/assets/src/medias/images/icons/waveform.svg +7 -0
- metadata +68 -6
- data/lib/molecules/intuition/inputs.rb +0 -111
- /data/lib/molecules/{examples → _deprecated_examples}/site.rb +0 -0
- /data/lib/molecules/intuition/{toolbox.rb → _deprecated_toolbox.rb} +0 -0
@@ -1,86 +1,81 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
3
|
+
matrix_zone=box({width: 333, height: 333, drag: true, id: :the_box})
|
4
4
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
matrix_cells = []
|
10
|
-
total_spacing_x = spacing * (horizontal_nb + 1)
|
11
|
-
total_spacing_y = spacing * (vertical_nb + 1)
|
12
|
-
size_coefficient = size.end_with?('%') ? (size.to_f / 100) : size.to_f / view.to_px(:width)
|
5
|
+
# matrix creation
|
6
|
+
main_matrix = matrix_zone.matrix({ id: :vie_0, rows: 8, columns: 8, spacing: 6, size: '100%' })
|
7
|
+
main_matrix.smooth(3)
|
8
|
+
main_matrix.color(:red)
|
13
9
|
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
10
|
+
# on resize
|
11
|
+
def resize_matrix(current_matrix, new_width, new_height, spacing, size)
|
12
|
+
parent_found = current_matrix
|
13
|
+
if size.instance_of? String
|
14
|
+
size_coefficient = size.end_with?('%') ? (size.to_f / 100) : size.to_f / parent_found.to_px(:width)
|
15
|
+
matrix_back = grab(:vie_0_background)
|
16
|
+
spacing = spacing * size_coefficient
|
17
|
+
total_spacing_x = spacing * (current_matrix.collect.length ** (0.5) + 1)
|
18
|
+
total_spacing_y = spacing * (current_matrix.collect.length ** (0.5) + 1)
|
19
|
+
|
20
|
+
if new_width > new_height
|
21
|
+
full_size = new_height * size_coefficient
|
22
|
+
available_width = full_size - total_spacing_x
|
23
|
+
available_height = full_size - total_spacing_y
|
24
|
+
matrix_back.width(full_size)
|
25
|
+
matrix_back.height(full_size)
|
26
|
+
else
|
27
|
+
full_size = new_width * size_coefficient
|
28
|
+
available_width = full_size - total_spacing_x
|
29
|
+
available_height = full_size - total_spacing_y
|
30
|
+
matrix_back.width(full_size)
|
31
|
+
matrix_back.height(full_size)
|
32
|
+
end
|
26
33
|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
new_box.top((box_height + spacing) * y + spacing)
|
34
|
+
box_width = available_width / current_matrix.collect.length ** (0.5)
|
35
|
+
box_height = available_height / current_matrix.collect.length ** (0.5)
|
36
|
+
current_matrix.collect.each_with_index do |box_id, index|
|
37
|
+
box = grab(box_id)
|
38
|
+
box.width(box_width)
|
39
|
+
box.height(box_height)
|
40
|
+
box.left((box_width + spacing) * (index % current_matrix.collect.length ** (0.5)) + spacing)
|
41
|
+
box.top((box_height + spacing) * (index / current_matrix.collect.length ** (0.5)).floor + spacing)
|
36
42
|
end
|
43
|
+
else
|
44
|
+
# dunno if we have to resize if size is specified in px
|
45
|
+
# size.to_f / parent_found.to_px(:width)
|
37
46
|
end
|
38
|
-
@current_matrix.collect(matrix_cells)
|
39
|
-
end
|
40
|
-
|
41
|
-
matrix(:vie_0, 8, 8, 9, '69%')
|
42
47
|
|
43
|
-
|
44
|
-
# matrix_group = grab(matrix_id)
|
45
|
-
total_spacing_x = spacing * (current_matrix.collect.length ** (0.5) + 1)
|
46
|
-
total_spacing_y = spacing * (current_matrix.collect.length ** (0.5) + 1)
|
47
|
-
size_coefficient = size.end_with?('%') ? (size.to_f / 100) : size.to_f / new_width
|
48
|
+
end
|
48
49
|
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
50
|
+
grab(:view).on(:resize) do
|
51
|
+
matrix_parent = grab(:view)
|
52
|
+
new_width = matrix_parent.width
|
53
|
+
new_height = matrix_parent.height
|
54
|
+
unless new_width.instance_of?(Numeric)
|
55
|
+
new_width = matrix_parent.to_px(:width)
|
55
56
|
end
|
56
|
-
|
57
|
-
|
58
|
-
box_height = available_height / current_matrix.collect.length ** (0.5)
|
59
|
-
current_matrix.collect.each_with_index do |box_id, index|
|
60
|
-
box = grab(box_id)
|
61
|
-
box.width(box_width)
|
62
|
-
box.height(box_height)
|
63
|
-
box.left((box_width + spacing) * (index % current_matrix.collect.length ** (0.5)) + spacing)
|
64
|
-
box.top((box_height + spacing) * (index / current_matrix.collect.length ** (0.5)).floor + spacing)
|
57
|
+
unless new_height.instance_of?(Numeric)
|
58
|
+
new_height = matrix_parent.to_px(:height)
|
65
59
|
end
|
60
|
+
new_size = if new_height > new_width
|
61
|
+
new_width
|
62
|
+
else
|
63
|
+
new_height
|
64
|
+
end
|
65
|
+
ratio = new_size / grab(:vie_0_background).width.to_f
|
66
|
+
main_matrix.data[:spacing] = main_matrix.data[:spacing] * ratio
|
67
|
+
matrix_spacing = main_matrix.data[:spacing]
|
68
|
+
matrix_size = main_matrix.data[:size]
|
69
|
+
resize_matrix(main_matrix, new_width, new_height, matrix_spacing, matrix_size)
|
66
70
|
end
|
67
71
|
|
68
|
-
|
69
|
-
new_event = Native(event)
|
70
|
-
new_width = new_event[:width].to_f
|
71
|
-
new_height = new_event[:height].to_f
|
72
|
-
matrix_spacing = @current_matrix.data[:spacing]
|
73
|
-
matrix_size = @current_matrix.data[:size]
|
74
|
-
resize_matrix(@current_matrix, new_width, new_height, matrix_spacing, matrix_size)
|
75
|
-
end
|
76
|
-
# alert grab(:vie_0).data
|
77
|
-
# wait 2 do
|
72
|
+
matrix_to_treat=main_matrix
|
78
73
|
|
79
|
-
|
80
|
-
|
81
|
-
|
74
|
+
#######################################################@
|
75
|
+
matrix_to_treat.color(:blue)
|
76
|
+
matrix_to_treat.smooth(6)
|
77
|
+
matrix_to_treat.shadow({
|
82
78
|
id: :s1,
|
83
|
-
# affect: [:the_circle],
|
84
79
|
left: 3, top: 3, blur: 6,
|
85
80
|
invert: false,
|
86
81
|
red: 0, green: 0, blue: 0, alpha: 0.6
|
@@ -89,67 +84,35 @@ end
|
|
89
84
|
col_1 = color(:yellow)
|
90
85
|
col_2 = color({ red: 1, id: :red_col })
|
91
86
|
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
87
|
+
wait 3 do
|
88
|
+
matrix_to_treat.paint({ gradient: [col_1.id, col_2.id], direction: :top })
|
89
|
+
end
|
96
90
|
|
97
91
|
###################
|
98
92
|
|
99
|
-
|
100
93
|
test_cell = grab(:vie_0_2_3)
|
101
94
|
wait 1 do
|
102
95
|
test_cell.color(:red)
|
96
|
+
test_cell.text('touch')
|
97
|
+
grab(:vie_0_background).color(:red)
|
103
98
|
end
|
104
99
|
|
105
100
|
|
106
|
-
module Molecule
|
107
|
-
|
108
|
-
def states(val = nil)
|
109
|
-
if val
|
110
|
-
else
|
111
|
-
end
|
112
|
-
|
113
|
-
end
|
114
|
-
|
115
|
-
|
116
|
-
def alternate(*states)
|
117
|
-
# if states
|
118
|
-
#
|
119
|
-
# else
|
120
|
-
# @alternate
|
121
|
-
# end
|
122
|
-
alert states
|
123
|
-
end
|
124
|
-
end
|
125
101
|
c= circle({left: 399})
|
126
102
|
test_cell.touch(true) do
|
127
103
|
test_cell.alternate({ width: 33, color: :red }, { width: 66, color: :orange })
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
# col_1 = color(:black)
|
133
|
-
|
134
|
-
@current_matrix.paint({ gradient: [col_1.id, col_1.id], direction: :top })
|
135
|
-
other_col=test_cell.color(:white)
|
136
|
-
c.paint({ gradient: [col_1, col_2], direction: :left })
|
137
|
-
test_cell.paint({ gradient: [col_1, other_col], direction: :left })
|
138
|
-
# test_cell
|
139
|
-
# grab(:red_col).delete(true)
|
140
|
-
# test_cell.color(:green)
|
141
|
-
# else
|
142
|
-
# test_cell.data(true)
|
143
|
-
# test_cell.color(:blue)
|
144
|
-
# end
|
145
|
-
|
104
|
+
matrix_to_treat.paint({ gradient: [col_1.id, col_1.id], direction: :top })
|
105
|
+
other_col=test_cell.color(:green)
|
106
|
+
c.paint({ gradient: [col_1.id, col_2.id], direction: :left })
|
107
|
+
test_cell.paint({ gradient: [col_1.id, other_col.id], direction: :left })
|
146
108
|
end
|
109
|
+
|
147
110
|
wait 1 do
|
148
|
-
|
111
|
+
matrix_to_treat.width(33)
|
149
112
|
end
|
150
|
-
|
151
|
-
# alert
|
113
|
+
matrix_to_treat.drag(true)
|
114
|
+
# alert matrix_to_treat.id
|
152
115
|
wait 2 do
|
153
|
-
grab(:vie_0_background).left(
|
116
|
+
grab(:vie_0_background).left(250)
|
154
117
|
grab(:vie_0_background).drag(true)
|
155
118
|
end
|
@@ -0,0 +1,74 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# native recording (server mode only) :
|
4
|
+
text({ data: 'native operation only work in server mode ', top: 60 })
|
5
|
+
a = circle({ color: :red, left: 30, top: 90 })
|
6
|
+
a.text('native Audio')
|
7
|
+
record_callback = 'unset'
|
8
|
+
a.touch(true) do
|
9
|
+
A.record({ media: :audio, duration: 5, mode: :native, name: :my_audio_rec, type: :wav, path: '../src', data: { note: :c, velocity: 12, robin: 3, author: :vie, tags: [:voice, :noise, :attack] } }) do |result|
|
10
|
+
puts result
|
11
|
+
record_callback = result
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
|
16
|
+
aa = circle({ color: :red, left: 120, top: 90 })
|
17
|
+
aa.text('native video')
|
18
|
+
aa.touch(true) do
|
19
|
+
A.record({ media: :video, duration: 5, mode: :native, name: :my_video_rec, type: :mp4, path: '../src/', data: { type: :thriller, } }) do |result|
|
20
|
+
puts result
|
21
|
+
record_callback = result
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
aaa = circle({ color: :red, left: 256, top: 90 })
|
26
|
+
aaa.text('native stop')
|
27
|
+
aaa.touch(true) do
|
28
|
+
pid = record_callback['pid']
|
29
|
+
A.record({ stop: true, pid: pid }) do |msg|
|
30
|
+
puts "msg received for native stop : #{msg}"
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
# web recording:
|
35
|
+
box_to_rec_into = box({ id: :the_big_box })
|
36
|
+
c = circle({ color: :red, left: 30 })
|
37
|
+
c.text(:audio)
|
38
|
+
c.touch(true) do
|
39
|
+
box_to_rec_into.record({ media: :audio, duration: 7, mode: :web, name: :web_audio_rec, type: :wav, path: '../src', data: { note: :c, velocity: 12, robin: 3, author: :vie, tags: [:voice, :noise, :attack] } }) do |result|
|
40
|
+
# puts "recording audio : #{result}"
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
cc = circle({ color: :red, left: 120, id: :the_circle })
|
45
|
+
cc.text(:video)
|
46
|
+
cc.touch(true) do
|
47
|
+
box_to_rec_into.record({ media: :video, duration: 30, mode: :web, name: :web_video_rec, type: :mp4, path: '../src/', data: { type: :thriller } }) do |result|
|
48
|
+
# puts "recording video : #{result}"
|
49
|
+
end
|
50
|
+
|
51
|
+
end
|
52
|
+
|
53
|
+
ccc = circle({ color: :red, left: 256 })
|
54
|
+
ccc.text(:stop)
|
55
|
+
ccc.touch(true) do
|
56
|
+
box_to_rec_into.record({ stop: true }) do |msg|
|
57
|
+
puts "msg received for web stop : #{msg}"
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
cc2 = circle({ color: :red, left: 512, id: :the_circle_prev })
|
62
|
+
cc2.text(:preview)
|
63
|
+
cc2.touch(true) do
|
64
|
+
A.preview({ media: :video, mode: :web, id: :my_preview })
|
65
|
+
end
|
66
|
+
|
67
|
+
|
68
|
+
cc3 = circle({ color: :red, left: 600, id: :the_circle_stop_prev })
|
69
|
+
cc3.text('kill preview')
|
70
|
+
cc3.touch(true) do
|
71
|
+
A.preview({ media: :video, mode: :web, id: :my_preview, stop: true })
|
72
|
+
end
|
73
|
+
|
74
|
+
|
@@ -0,0 +1,41 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# new(application: {name: :compose })
|
4
|
+
# new(application: :compose ) do |params|
|
5
|
+
# alert params
|
6
|
+
# end
|
7
|
+
s=application({ name: :home })
|
8
|
+
|
9
|
+
# alert s.class
|
10
|
+
# alert "a.class : #{a.class}"
|
11
|
+
s.page(:hello)
|
12
|
+
# grab(:toto).color(:cyan)
|
13
|
+
#
|
14
|
+
# def layout
|
15
|
+
# compose_back=box
|
16
|
+
#
|
17
|
+
# compose_back.color({ alpha: 0 })
|
18
|
+
# media_reader=compose_back.box({left: 99, width: 250, height: 250, top: 99})
|
19
|
+
# viewer_1=compose_back.box({left: 360, width: 250, height: 250, top: 99})
|
20
|
+
# viewer_2=compose_back.box({left: 690, width: 250, height: 250, top: 99})
|
21
|
+
# timeline=compose_back.box({left: 99, width: 250, height: 250, top: 399})
|
22
|
+
# login=compose_back.text(:log)
|
23
|
+
# login.touch(true) do
|
24
|
+
# compose_back.delete(true)
|
25
|
+
# # grab(:view).clear(true)
|
26
|
+
# form
|
27
|
+
# end
|
28
|
+
#
|
29
|
+
# end
|
30
|
+
#
|
31
|
+
# def form
|
32
|
+
# form1=box
|
33
|
+
# form1.text(:login)
|
34
|
+
#
|
35
|
+
# form1.touch(true) do
|
36
|
+
# form1.delete(true)
|
37
|
+
# layout
|
38
|
+
# end
|
39
|
+
#
|
40
|
+
# end
|
41
|
+
# form
|
@@ -0,0 +1,6 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
grab(:black_matter).image({ path: 'medias/images/icons/color.svg', id: :atomic_logo, width: 33, left: 333 })
|
4
|
+
vector({ width: 333, height: 333, id: :my_placeholder })
|
5
|
+
A.fetch_svg({ source: :atomic_logo, target: :my_placeholder })
|
6
|
+
grab(:atomic_logo).delete(true)
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
|
4
|
+
svg_content = <<-SVG
|
5
|
+
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1024" height="1024" xml:space="preserve" id="colorCanvas">
|
6
|
+
<!-- Generated by jeezs - http://www.atome.one
|
7
|
+
<path d="M150 0 L75 200 L225 200 Z" stroke="red" stroke-width="37" fill="white" />
|
8
|
+
<circle id="colorCanvas-oval" stroke="none" fill="rgb(255, 0, 0)" cx="274" cy="306" r="198" />
|
9
|
+
<circle id="colorCanvas-oval2" stroke="none" fill="rgb(0, 142, 255)" cx="767" cy="306" r="198" />
|
10
|
+
<circle id="colorCanvas-oval3" stroke="none" fill="rgb(50, 255, 0)" cx="499" cy="702" r="198" />
|
11
|
+
<ellipse id="colorCanvas-ellipse" stroke="black" stroke-width="5" fill="yellow" cx="512.5" cy="256" rx="150" ry="100" />
|
12
|
+
<rect id="colorCanvas-rect" stroke="green" stroke-width="5" fill="blue" x="100" y="500.7" width="300" height="150" />
|
13
|
+
<line id="colorCanvas-line" stroke="purple" stroke-width="110" x1="50" y1="800" x2="300.6" y2="950" />
|
14
|
+
<polygon id="colorCanvas-polygon" stroke="orange" stroke-width="7.2" fill="none" points="800,400 700,600 900,600" />
|
15
|
+
</svg>
|
16
|
+
SVG
|
17
|
+
|
18
|
+
v = vector({width: 333, height: 333})
|
19
|
+
atome_content = A.vectorizer(svg_content)
|
20
|
+
puts atome_content
|
21
|
+
v.data(atome_content)
|
@@ -6,7 +6,7 @@ c.box({ left: 0, width: 22, height: 22, top: 65 })
|
|
6
6
|
c.touch(true) do
|
7
7
|
alert :okk
|
8
8
|
end
|
9
|
-
m =
|
9
|
+
m = table({ renderers: [:html], attach: :view, id: :my_test_box, type: :table, apply: [:shape_color],
|
10
10
|
left: 333, top: 0, width: 900, smooth: 15, height: 900, overflow: :scroll, option: { header: true },
|
11
11
|
component: {
|
12
12
|
border: { thickness: 5, color: :blue, pattern: :dotted },
|