cosmos 4.2.2-java → 4.2.3-java
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.travis.yml +7 -3
- data/autohotkey/tools/cmd_sender.ahk +35 -35
- data/bin/dart_import +3 -1
- data/cosmos.gemspec +4 -3
- data/data/crc.txt +14 -14
- data/demo/config/dart/Gemfile +2 -2
- data/demo/config/data/crc.txt +1 -1
- data/install/config/dart/Gemfile +2 -2
- data/install/config/data/crc.txt +3 -3
- data/lib/cosmos/dart/lib/dart_common.rb +1 -1
- data/lib/cosmos/gui/opengl/gl_scene.rb +3 -3
- data/lib/cosmos/gui/opengl/gl_shape.rb +27 -29
- data/lib/cosmos/gui/opengl/gl_viewer.rb +127 -124
- data/lib/cosmos/gui/opengl/opengl.rb +6 -0
- data/lib/cosmos/gui/opengl/stl_reader.rb +7 -7
- data/lib/cosmos/gui/opengl/stl_shape.rb +16 -16
- data/lib/cosmos/gui/opengl/texture_mapped_sphere.rb +53 -51
- data/lib/cosmos/packets/commands.rb +22 -0
- data/lib/cosmos/tools/cmd_sender/cmd_sender.rb +20 -0
- data/lib/cosmos/tools/script_runner/script_runner_frame.rb +6 -2
- data/lib/cosmos/tools/tlm_viewer/widgets/timegraph_widget.rb +1 -1
- data/lib/cosmos/utilities/ruby_lex_utils.rb +1 -6
- data/lib/cosmos/version.rb +4 -4
- metadata +2 -8
@@ -91,31 +91,31 @@ module Cosmos
|
|
91
91
|
lon_value[2] = (lon_value[1] + lon_value[0]) / 2.0
|
92
92
|
end
|
93
93
|
|
94
|
-
#
|
94
|
+
#glTexCoord(lon_value, lat_value)
|
95
95
|
return [[lon_value[0], lat_value[0]], [lon_value[1], lat_value[1]], [lon_value[2], lat_value[2]]]
|
96
96
|
end
|
97
97
|
|
98
98
|
def draw_triangle(v1, v2, v3)
|
99
|
-
|
100
|
-
|
101
|
-
|
99
|
+
glEnable(OpenGL::GL_TEXTURE_2D)
|
100
|
+
glPolygonMode(OpenGL::GL_FRONT_AND_BACK, OpenGL::GL_FILL)
|
101
|
+
glBegin(OpenGL::GL_TRIANGLES)
|
102
102
|
tc1, tc2, tc3 = gen_tex_coords(v1, v2, v3)
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
103
|
+
glTexCoord2f(tc1[0], tc1[1])
|
104
|
+
glVertex3f(v1[0], v1[1], v1[2])
|
105
|
+
glTexCoord2f(tc2[0], tc2[1])
|
106
|
+
glVertex3f(v2[0], v2[1], v2[2])
|
107
|
+
glTexCoord2f(tc3[0], tc3[1])
|
108
|
+
glVertex3f(v3[0], v3[1], v3[2])
|
109
|
+
glEnd()
|
110
|
+
glDisable(OpenGL::GL_TEXTURE_2D);
|
111
111
|
|
112
112
|
#Show Triangles
|
113
|
-
#
|
114
|
-
#
|
115
|
-
#
|
116
|
-
#
|
117
|
-
#
|
118
|
-
#
|
113
|
+
#glPolygonMode(OpenGL::GL_FRONT_AND_BACK, OpenGL::GL_LINE)
|
114
|
+
#glBegin(OpenGL::GL_TRIANGLES)
|
115
|
+
# glVertex(v1)
|
116
|
+
# glVertex(v2)
|
117
|
+
# glVertex(v3)
|
118
|
+
#glEnd()
|
119
119
|
end
|
120
120
|
|
121
121
|
def subdivide_triangle(v1, v2, v3, depth)
|
@@ -144,49 +144,51 @@ module Cosmos
|
|
144
144
|
end
|
145
145
|
|
146
146
|
def drawshape(viewer)
|
147
|
-
|
148
|
-
|
149
|
-
|
147
|
+
glPushMatrix()
|
148
|
+
glShadeModel(OpenGL::GL_FLAT);
|
149
|
+
glEnable(OpenGL::GL_DEPTH_TEST);
|
150
150
|
if @first == true
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
151
|
+
glPixelStorei(OpenGL::GL_UNPACK_ALIGNMENT, 1)
|
152
|
+
tex_name_buf = ' ' * 8 # Buffer to hold texture names
|
153
|
+
glGenTextures(1, tex_name_buf)
|
154
|
+
texName = tex_name_buf.unpack('L2')[0]
|
155
|
+
glBindTexture(OpenGL::GL_TEXTURE_2D, texName)
|
156
|
+
glTexParameteri(OpenGL::GL_TEXTURE_2D, OpenGL::GL_TEXTURE_WRAP_S, OpenGL::GL_REPEAT)
|
157
|
+
glTexParameteri(OpenGL::GL_TEXTURE_2D, OpenGL::GL_TEXTURE_WRAP_T, OpenGL::GL_REPEAT)
|
158
|
+
glTexParameteri(OpenGL::GL_TEXTURE_2D, OpenGL::GL_TEXTURE_MAG_FILTER, OpenGL::GL_NEAREST)
|
159
|
+
glTexParameteri(OpenGL::GL_TEXTURE_2D, OpenGL::GL_TEXTURE_MIN_FILTER, OpenGL::GL_NEAREST)
|
160
|
+
glTexImage2D(OpenGL::GL_TEXTURE_2D, 0, OpenGL::GL_RGBA, @image.width, @image.height, 0, OpenGL::GL_RGBA, OpenGL::GL_UNSIGNED_BYTE, @image_data)
|
161
|
+
|
162
|
+
glTexEnvi(OpenGL::GL_TEXTURE_ENV, OpenGL::GL_TEXTURE_ENV_MODE, OpenGL::GL_DECAL)
|
163
|
+
|
164
|
+
@drawing_list = glGenLists(1)
|
165
|
+
glNewList(@drawing_list, OpenGL::GL_COMPILE)
|
166
|
+
glEnable(OpenGL::GL_TEXTURE_2D)
|
167
|
+
glTexEnvf(OpenGL::GL_TEXTURE_ENV, OpenGL::GL_TEXTURE_ENV_MODE, OpenGL::GL_DECAL)
|
168
|
+
glBindTexture(OpenGL::GL_TEXTURE_2D, texName)
|
167
169
|
8.times do |index|
|
168
170
|
subdivide_triangle(@vdata[@tindices[index][0]], @vdata[@tindices[index][1]], @vdata[@tindices[index][2]], 4)
|
169
171
|
end
|
170
|
-
|
171
|
-
|
172
|
+
glDisable(OpenGL::GL_TEXTURE_2D);
|
173
|
+
glEndList()
|
172
174
|
|
173
175
|
@first = false
|
174
176
|
end
|
175
177
|
|
176
|
-
|
178
|
+
glCallList(@drawing_list)
|
177
179
|
|
178
180
|
#Draw Axises
|
179
|
-
#
|
180
|
-
#
|
181
|
-
#
|
182
|
-
#
|
183
|
-
#
|
184
|
-
#
|
185
|
-
#
|
186
|
-
#
|
187
|
-
#
|
188
|
-
|
189
|
-
|
181
|
+
#glBegin(OpenGL::GL_LINES)
|
182
|
+
# glColor3f(1.0, 0.0, 0.0)
|
183
|
+
# glVertex([-2.0, 0.0, 0.0])
|
184
|
+
# glVertex([ 2.0, 0.0, 0.0])
|
185
|
+
# glVertex([ 0.0, -2.0, 0.0])
|
186
|
+
# glVertex([ 0.0, 2.0, 0.0])
|
187
|
+
# glVertex([ 0.0, 0.0, -2.0])
|
188
|
+
# glVertex([ 0.0, 0.0, 2.0])
|
189
|
+
#glEnd()
|
190
|
+
|
191
|
+
glPopMatrix()
|
190
192
|
end
|
191
193
|
|
192
194
|
def export
|
@@ -261,6 +261,28 @@ module Cosmos
|
|
261
261
|
end
|
262
262
|
end
|
263
263
|
|
264
|
+
# Returns an array with a "TARGET_NAME PACKET_NAME" string for every command in the system (PACKET_NAME == command name)
|
265
|
+
def all_packet_strings(include_hidden = false, splash = nil)
|
266
|
+
strings = []
|
267
|
+
tnames = target_names()
|
268
|
+
total = tnames.length.to_f
|
269
|
+
tnames.each_with_index do |target_name, index|
|
270
|
+
if splash
|
271
|
+
splash.message = "Processing #{target_name} command"
|
272
|
+
splash.progress = index / total
|
273
|
+
end
|
274
|
+
|
275
|
+
ignored_items = System.targets[target_name].ignored_items
|
276
|
+
|
277
|
+
packets(target_name).each do |command_name, packet|
|
278
|
+
# We don't audit against hidden or disabled packets/commands
|
279
|
+
next if !include_hidden and (packet.hidden || packet.disabled)
|
280
|
+
strings << "#{target_name} #{command_name}"
|
281
|
+
end
|
282
|
+
end
|
283
|
+
strings
|
284
|
+
end
|
285
|
+
|
264
286
|
def all
|
265
287
|
@config.commands
|
266
288
|
end
|
@@ -19,6 +19,7 @@ Cosmos.catch_fatal_exception do
|
|
19
19
|
require 'cosmos/gui/dialogs/cmd_details_dialog'
|
20
20
|
require 'cosmos/tools/cmd_sender/cmd_sender_text_edit'
|
21
21
|
require 'cosmos/tools/cmd_sender/cmd_param_table_item_delegate'
|
22
|
+
require 'cosmos/gui/widgets/full_text_search_line_edit'
|
22
23
|
end
|
23
24
|
|
24
25
|
module Cosmos
|
@@ -109,6 +110,21 @@ module Cosmos
|
|
109
110
|
update_commands()
|
110
111
|
@cmd_select.setCurrentText(options.packet[1]) if options.packet
|
111
112
|
update_cmd_params()
|
113
|
+
|
114
|
+
# Handle searching entries
|
115
|
+
@search_box.completion_list = System.commands.all_packet_strings(true, splash)
|
116
|
+
@search_box.callback = lambda do |cmd|
|
117
|
+
split_cmd = cmd.split(" ")
|
118
|
+
if split_cmd.length == 2
|
119
|
+
target_name = split_cmd[0].upcase
|
120
|
+
@target_select.setCurrentText(target_name)
|
121
|
+
update_commands()
|
122
|
+
command_name = split_cmd[1]
|
123
|
+
@cmd_select.setCurrentText(command_name)
|
124
|
+
update_cmd_params()
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
112
128
|
end
|
113
129
|
|
114
130
|
# Unconfigure CosmosConfig to interact with splash screen
|
@@ -220,6 +236,10 @@ module Cosmos
|
|
220
236
|
# If this is not set then when we refresh the command parameters they'll all be squished
|
221
237
|
top_layout.setSizeConstraint(Qt::Layout::SetMinimumSize)
|
222
238
|
|
239
|
+
# Mnemonic Search Box
|
240
|
+
@search_box = FullTextSearchLineEdit.new(self)
|
241
|
+
top_layout.addWidget(@search_box)
|
242
|
+
|
223
243
|
# Set the target combobox selection
|
224
244
|
@target_select = Qt::ComboBox.new
|
225
245
|
@target_select.setMaxVisibleItems(6)
|
@@ -1140,14 +1140,18 @@ module Cosmos
|
|
1140
1140
|
dialog_layout.addLayout(button_layout)
|
1141
1141
|
|
1142
1142
|
dialog.setLayout(dialog_layout)
|
1143
|
+
my_parent = self.parent
|
1144
|
+
while my_parent.parent
|
1145
|
+
my_parent = my_parent.parent
|
1146
|
+
end
|
1143
1147
|
if dialog.exec == Qt::Dialog::Accepted
|
1144
1148
|
if targets.empty?
|
1145
1149
|
clear_disconnected_targets()
|
1146
|
-
|
1150
|
+
my_parent.statusBar.showMessage("")
|
1147
1151
|
self.setPalette(Qt::Palette.new(Cosmos::DEFAULT_PALETTE))
|
1148
1152
|
else
|
1149
1153
|
config_file = chooser.filename
|
1150
|
-
|
1154
|
+
my_parent.statusBar.showMessage("Targets disconnected: #{targets.join(" ")}")
|
1151
1155
|
self.setPalette(Qt::Palette.new(Cosmos::RED_PALETTE))
|
1152
1156
|
Splash.execute(self) do |splash|
|
1153
1157
|
ConfigParser.splash = splash
|
@@ -290,7 +290,7 @@ class RubyLexUtils
|
|
290
290
|
else
|
291
291
|
yield lexed, false, inside_begin, line_no
|
292
292
|
end
|
293
|
-
|
293
|
+
elsif !lexed.empty?
|
294
294
|
num_left_brackets = lexed.count('{')
|
295
295
|
num_right_brackets = lexed.count('}')
|
296
296
|
if num_left_brackets != num_right_brackets
|
@@ -300,14 +300,9 @@ class RubyLexUtils
|
|
300
300
|
yield lexed, true, inside_begin, line_no
|
301
301
|
end
|
302
302
|
end
|
303
|
-
|
304
303
|
lex.exp_line_no = lex.line_no
|
305
|
-
|
306
304
|
break
|
307
305
|
end # loop do
|
308
|
-
|
309
306
|
end # while lexed
|
310
|
-
|
311
307
|
end # def each_lexed_segment
|
312
|
-
|
313
308
|
end
|
data/lib/cosmos/version.rb
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
# encoding: ascii-8bit
|
2
2
|
|
3
|
-
COSMOS_VERSION = '4.2.
|
3
|
+
COSMOS_VERSION = '4.2.3'
|
4
4
|
module Cosmos
|
5
5
|
module Version
|
6
6
|
MAJOR = '4'
|
7
7
|
MINOR = '2'
|
8
|
-
PATCH = '
|
9
|
-
BUILD = '
|
8
|
+
PATCH = '3'
|
9
|
+
BUILD = '90c87a409582104777955b2fb791e79da5d04e28'
|
10
10
|
end
|
11
|
-
VERSION = '4.2.
|
11
|
+
VERSION = '4.2.3'
|
12
12
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cosmos
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.2.
|
4
|
+
version: 4.2.3
|
5
5
|
platform: java
|
6
6
|
authors:
|
7
7
|
- Ryan Melton
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2018-04-
|
12
|
+
date: 2018-04-17 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
@@ -31,9 +31,6 @@ dependencies:
|
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '4'
|
34
|
-
- - "<"
|
35
|
-
- !ruby/object:Gem::Version
|
36
|
-
version: '6'
|
37
34
|
name: rdoc
|
38
35
|
prerelease: false
|
39
36
|
type: :runtime
|
@@ -42,9 +39,6 @@ dependencies:
|
|
42
39
|
- - ">="
|
43
40
|
- !ruby/object:Gem::Version
|
44
41
|
version: '4'
|
45
|
-
- - "<"
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '6'
|
48
42
|
- !ruby/object:Gem::Dependency
|
49
43
|
requirement: !ruby/object:Gem::Requirement
|
50
44
|
requirements:
|