def __current_window(self): bimpy.set_next_window_pos(bimpy.Vec2(5, 393 + 128), bimpy.Condition.Once) bimpy.set_next_window_size(bimpy.Vec2(345, 110), bimpy.Condition.Once) bimpy.begin("Current", flags=bimpy.WindowFlags(4) | bimpy.WindowFlags(1) | bimpy.WindowFlags(2)) bimpy.push_font(self.fonts.fonts[16]["cond"]) bimpy.text_colored(bimpy.Vec4(1, 0, 0, 1), "Current") bimpy.pop_font() bimpy.separator() bimpy.push_font(self.fonts.fonts[44]["ext_bold_ital"]) bimpy.text("") bimpy.same_line(25, 0) bimpy.text("{:.2f}".format(self.data.voltage).rjust(6, "0")) bimpy.pop_font() bimpy.push_font(self.fonts.fonts[44]["ext_bold_ital"]) bimpy.same_line(215, 0) bimpy.text("Amp") bimpy.pop_font() bimpy.end()
def __distance_window(self): bimpy.set_next_window_pos(bimpy.Vec2(5, 120 + 128), bimpy.Condition.Once) bimpy.set_next_window_size(bimpy.Vec2(345, 110), bimpy.Condition.Once) bimpy.begin("Distance", flags=bimpy.WindowFlags(4) | bimpy.WindowFlags(1) | bimpy.WindowFlags(2)) bimpy.push_font(self.fonts.fonts[16]["cond"]) bimpy.text_colored(bimpy.Vec4(1, 0, 0, 1), "Distance Traveled") bimpy.pop_font() bimpy.separator() if self.data.distance <= 1.1: distance_formatted_data = str(int(self.data.distance * 1000)) distance_formatted_data = distance_formatted_data.rjust(4, "0") scalar = "m" else: distance_formatted_data = "{:.2f}".format(self.data.distance) distance_formatted_data = distance_formatted_data.rjust(6, "0") scalar = "Km" bimpy.push_font(self.fonts.fonts[44]["ext_bold_ital"]) bimpy.text("") bimpy.same_line(38, -1) bimpy.text(distance_formatted_data) bimpy.same_line(245, 0) bimpy.text(scalar) bimpy.pop_font() bimpy.end()
def __calories_burtn_window(self): bimpy.set_next_window_pos(bimpy.Vec2(355, 5 + 128), bimpy.Condition.Once) bimpy.set_next_window_size(bimpy.Vec2(345, 110), bimpy.Condition.Once) bimpy.begin("Calories Burnt", flags=bimpy.WindowFlags(4) | bimpy.WindowFlags(1) | bimpy.WindowFlags(2)) bimpy.push_font(self.fonts.fonts[16]["cond"]) bimpy.text_colored(bimpy.Vec4(1, 0, 0, 1), "Calories Burnt") bimpy.pop_font() bimpy.separator() bimpy.push_font(self.fonts.fonts[44]["ext_bold_ital"]) bimpy.text("") bimpy.same_line(25, 0) if self.data.calories_burned >= 0: bimpy.text("{:.2f}".format(self.data.calories_burned).rjust( 7, "0")) else: bimpy.text("0.00".rjust(7, "0")) bimpy.pop_font() bimpy.push_font(self.fonts.fonts[44]["ext_bold_ital"]) bimpy.same_line(250, 0) bimpy.text("cal") bimpy.pop_font() bimpy.end()
def __speed_window(self): bimpy.set_next_window_pos(bimpy.Vec2(355, 120 + 128), bimpy.Condition.Once) bimpy.set_next_window_size(bimpy.Vec2(345, 110), bimpy.Condition.Once) bimpy.begin("Speed", flags=bimpy.WindowFlags(4) | bimpy.WindowFlags(1) | bimpy.WindowFlags(2)) bimpy.push_font(self.fonts.fonts[16]["cond"]) bimpy.text_colored(bimpy.Vec4(1, 0, 0, 1), "Speed") bimpy.pop_font() bimpy.separator() bimpy.push_font(self.fonts.fonts[44]["ext_bold_ital"]) bimpy.text("") bimpy.same_line(25, 0) bimpy.text(str(int(self.data.speed[0])).rjust(4, " ")) bimpy.pop_font() bimpy.push_font(self.fonts.fonts[44]["ext_bold_ital"]) bimpy.same_line(200, 0) bimpy.text("Km/H") bimpy.pop_font() bimpy.end()
def __voltage_window(self): bimpy.set_next_window_pos(bimpy.Vec2(5, 278 + 128), bimpy.Condition.Once) bimpy.set_next_window_size(bimpy.Vec2(345, 110), bimpy.Condition.Once) bimpy.begin("Voltage", flags=bimpy.WindowFlags(4) | bimpy.WindowFlags(1) | bimpy.WindowFlags(2)) bimpy.push_font(self.fonts.fonts[16]["cond"]) bimpy.text_colored(bimpy.Vec4(1, 0, 0, 1), "Voltage") bimpy.pop_font() bimpy.separator() bimpy.push_font(self.fonts.fonts[44]["ext_bold_ital"]) bimpy.text("") bimpy.same_line(25, 0) if self.data.voltage >= 0: bimpy.text("{:.2f}".format(self.data.voltage).rjust(6, "0")) else: bimpy.text("-" + "{:.2f}".format(self.data.voltage).rjust(5, "0")) bimpy.pop_font() bimpy.push_font(self.fonts.fonts[44]["ext_bold_ital"]) bimpy.same_line(220, 0) bimpy.text("Volt") bimpy.pop_font() bimpy.end()
def __rpm_window(self): bimpy.set_next_window_pos(bimpy.Vec2(705, 278 + 128), bimpy.Condition.Once) bimpy.set_next_window_size(bimpy.Vec2(305, 225), bimpy.Condition.Once) bimpy.begin("RPM", flags=bimpy.WindowFlags(4) | bimpy.WindowFlags(1) | bimpy.WindowFlags(2)) bimpy.push_font(self.fonts.fonts[16]["cond"]) bimpy.text_colored(bimpy.Vec4(1, 0, 0, 1), "RPM") bimpy.pop_font() bimpy.separator() bimpy.push_font(self.fonts.fonts[44]["ext_bold_ital"]) bimpy.text("") bimpy.same_line(25, 0) bimpy.text(str(int(self.data.rpm)).rjust(4, "0")) bimpy.pop_font() bimpy.push_font(self.fonts.fonts[44]["ext_bold_ital"]) bimpy.same_line(175, 0) bimpy.text("RPM") bimpy.pop_font() self.rpm_datas.append(self.data.rpm) self.rpm_datas.pop(0) self.rpm_datas.reverse() bimpy.plot_lines("", self.rpm_datas, graph_size=bimpy.Vec2(288, 112)) self.rpm_datas.reverse() bimpy.end()
def set_yellow(): style = bimpy.get_style() # style.set_color(bimpy.Colors.Text, bimpy.Vec4(0.31, 0.25, 0.24, 1.00)) # style.set_color(bimpy.Colors.WindowBg, bimpy.Vec4(0.94, 0.94, 0.94, 1.00)) # # style.set_color(bimpy.Colors.ChildWindowBg, bimpy.Vec4(0.00, 0.00, 0.00, 0.00)) # style.set_color(bimpy.Colors.Border, bimpy.Vec4(0.00, 0.00, 0.00, 0.39)) # style.set_color(bimpy.Colors.BorderShadow, bimpy.Vec4(1.00, 1.00, 1.00, 0.10)) # style.set_color(bimpy.Colors.FrameBg, bimpy.Vec4(1.00, 1.00, 1.00, 1.00)) # style.set_color(bimpy.Colors.FrameBgHovered, bimpy.Vec4(0.26, 0.59, 0.98, 0.40)) # style.set_color(bimpy.Colors.FrameBgActive, bimpy.Vec4(0.26, 0.59, 0.98, 0.67)) # style.set_color(bimpy.Colors.TitleBg, bimpy.Vec4(0.96, 0.96, 0.96, 1.00)) # style.set_color(bimpy.Colors.TitleBgCollapsed, bimpy.Vec4(1.00, 1.00, 1.00, 0.51)) # style.set_color(bimpy.Colors.TitleBgActive, bimpy.Vec4(0.82, 0.82, 0.82, 1.00)) # style.set_color(bimpy.Colors.MenuBarBg, bimpy.Vec4(0.86, 0.86, 0.86, 1.00)) # style.set_color(bimpy.Colors.ScrollbarBg, bimpy.Vec4(0.98, 0.98, 0.98, 0.53)) # style.set_color(bimpy.Colors.ScrollbarGrab, bimpy.Vec4(0.69, 0.69, 0.69, 0.80)) # style.set_color(bimpy.Colors.ScrollbarGrabHovered, bimpy.Vec4(0.49, 0.49, 0.49, 0.80)) # style.set_color(bimpy.Colors.ScrollbarGrabActive, bimpy.Vec4(0.49, 0.49, 0.49, 1.00)) # # style.set_color(bimpy.Colors.ComboBg, bimpy.Vec4(0.86, 0.86, 0.86, 0.99)) # style.set_color(bimpy.Colors.CheckMark, bimpy.Vec4(0.26, 0.59, 0.98, 1.00)) # style.set_color(bimpy.Colors.SliderGrab, bimpy.Vec4(0.26, 0.59, 0.98, 0.78)) # style.set_color(bimpy.Colors.SliderGrabActive, bimpy.Vec4(0.26, 0.59, 0.98, 1.00)) style.set_color(bimpy.Colors.Button, bimpy.Vec4(1.00, 0.79, 0.18, 0.78)) style.set_color(bimpy.Colors.ButtonHovered, bimpy.Vec4(0.42, 0.82, 1.00, 0.81)) style.set_color(bimpy.Colors.ButtonActive, bimpy.Vec4(0.72, 1.00, 1.00, 0.86)) style.set_color(bimpy.Colors.Header, bimpy.Vec4(0.65, 0.78, 0.84, 0.80)) style.set_color(bimpy.Colors.HeaderHovered, bimpy.Vec4(0.75, 0.88, 0.94, 0.80)) style.set_color(bimpy.Colors.HeaderActive, bimpy.Vec4(0.55, 0.68, 0.74, 0.80)) # style.set_color(bimpy.Colors.Column, bimpy.Vec4(0.39, 0.39, 0.39, 1.00)) # style.set_color(bimpy.Colors.ColumnHovered, bimpy.Vec4(0.26, 0.59, 0.98, 0.78)) # style.set_color(bimpy.Colors.ColumnActive, bimpy.Vec4(0.26, 0.59, 0.98, 1.00)) # style.set_color(bimpy.Colors.ResizeGrip, bimpy.Vec4(0.50, 0.50, 0.50, 1.00)) # style.set_color(bimpy.Colors.ResizeGripHovered, bimpy.Vec4(0.26, 0.59, 0.98, 0.67)) # style.set_color(bimpy.Colors.ResizeGripActive, bimpy.Vec4(0.26, 0.59, 0.98, 0.95)) # # style.set_color(bimpy.Colors.CloseButton, bimpy.Vec4(0.59, 0.59, 0.59, 0.50)) # # style.set_color(bimpy.Colors.CloseButtonHovered, bimpy.Vec4(0.98, 0.39, 0.36, 1.00)) # # style.set_color(bimpy.Colors.CloseButtonActive, bimpy.Vec4(0.98, 0.39, 0.36, 1.00)) # style.set_color(bimpy.Colors.PlotLines, bimpy.Vec4(0.39, 0.39, 0.39, 1.00)) # style.set_color(bimpy.Colors.PlotLinesHovered, bimpy.Vec4(1.00, 0.43, 0.35, 1.00)) # style.set_color(bimpy.Colors.PlotHistogram, bimpy.Vec4(0.90, 0.70, 0.00, 1.00)) # style.set_color(bimpy.Colors.PlotHistogramHovered, bimpy.Vec4(1.00, 0.60, 0.00, 1.00)) # style.set_color(bimpy.Colors.TextSelectedBg, bimpy.Vec4(0.26, 0.59, 0.98, 0.35)) # style.set_color(bimpy.Colors.PopupBg, bimpy.Vec4(1.00, 1.00, 1.00, 0.94)) # style.set_color(bimpy.Colors.ModalWindowDarkening, bimpy.Vec4(0.20, 0.20, 0.20, 0.35)) style.alpha = 1.0 style.indent_spacing = 12.0 bimpy.set_style(style)
def __heart_rate_window(self): bimpy.set_next_window_pos(bimpy.Vec2(705, 5 + 128), bimpy.Condition.Once) bimpy.set_next_window_size(bimpy.Vec2(305, 225), bimpy.Condition.Once) bimpy.begin("Heart Rate", flags=bimpy.WindowFlags(4) | bimpy.WindowFlags(1) | bimpy.WindowFlags(2)) bimpy.push_font(self.fonts.fonts[16]["cond"]) bimpy.text_colored(bimpy.Vec4(1, 0, 0, 1), "Heart Rate") bimpy.pop_font() bimpy.separator() bimpy.text("") bimpy.same_line(30, -1) bimpy.push_font(self.fonts.fonts[44]["ext_bold_ital"]) bimpy.text(str(int(self.data.heart_rate)).rjust(3, "0")) bimpy.pop_font() bimpy.same_line(140, 20) bimpy.push_font(self.fonts.fonts[44]["ext_bold_ital"]) bimpy.text("BPM") bimpy.pop_font() if (time.time() - self.heart_rate_start_monitor) >= (self.data.heart_rate / 60): self.heart_rate_data.append(-0.7) self.heart_rate_data.append(1) self.heart_rate_start_monitor = time.time() self.heart_rate_data.pop(0) else: self.heart_rate_data.append(0) self.heart_rate_data.pop(0) self.heart_rate_data.reverse() bimpy.plot_lines("", self.heart_rate_data, graph_size=bimpy.Vec2(288, 112), scale_min=-1.0, scale_max=1.3) self.heart_rate_data.reverse() bimpy.end()
def __gender_window(self): bimpy.set_next_window_pos(bimpy.Vec2(729, 5), bimpy.Condition.Once) bimpy.set_next_window_size(bimpy.Vec2(166, 80), bimpy.Condition.Once) bimpy.begin("Gender", flags=bimpy.WindowFlags(4) | bimpy.WindowFlags(1) | bimpy.WindowFlags(2)) bimpy.push_font(self.fonts.fonts[16]["cond"]) bimpy.text_colored(bimpy.Vec4(1, 0, 0, 1), "Gender") bimpy.pop_font() bimpy.separator() bimpy.push_font(self.fonts.fonts[16]["ext_bold_ital"]) bimpy.text("") bimpy.same_line(38, 0) bimpy.text("Female" if self.data.gender else "Male") bimpy.pop_font() bimpy.end()
def __age_window(self): bimpy.set_next_window_pos(bimpy.Vec2(900, 5), bimpy.Condition.Once) bimpy.set_next_window_size(bimpy.Vec2(110, 80), bimpy.Condition.Once) bimpy.begin("Age", flags=bimpy.WindowFlags(4) | bimpy.WindowFlags(1) | bimpy.WindowFlags(2)) bimpy.push_font(self.fonts.fonts[16]["cond"]) bimpy.text_colored(bimpy.Vec4(1, 0, 0, 1), "Age") bimpy.pop_font() bimpy.separator() bimpy.push_font(self.fonts.fonts[16]["ext_bold_ital"]) bimpy.text("") bimpy.same_line(38, 0) bimpy.text(str(self.data.age)) bimpy.pop_font() bimpy.end()
def object_inspector(self): has_selection = self.selected_node is not None bimpy.text("ID: %s" % (str(self.selected_node.id) if has_selection else '')) nstr = bimpy.String(self.selected_node.name if has_selection else '') bimpy.input_text('Name', nstr, 256) nwidth = bimpy.Float(self.selected_node.width if has_selection else 0.) nheigth = bimpy.Float( self.selected_node.height if has_selection else 0.) bimpy.input_float2('size', nwidth, nheigth) nposx = bimpy.Float(self.selected_node.pos_x if has_selection else 0.) nposy = bimpy.Float(self.selected_node.pos_y if has_selection else 0.) bimpy.input_float2('position', nposx, nposy) ncolor = bimpy.Vec4( *[x / 255. for x in self.selected_node.color] if has_selection else (0, 0, 0, 0)) bimpy.color_edit("Color", ncolor) nradius = [ self.selected_node.radius.x, self.selected_node.radius.y, self.selected_node.radius.z, self.selected_node.radius.w ] if has_selection else [0., 0., 0., 0.] nradius = [bimpy.Float(x) for x in nradius] bimpy.input_float4("radius", *nradius) if has_selection: self.selected_node.name = nstr.value self.selected_node.width = nwidth.value self.selected_node.height = nheigth.value self.selected_node.pos_x = nposx.value self.selected_node.pos_y = nposy.value self.selected_node.color = (int(255 * ncolor.x), int( 255 * ncolor.y), int(255 * ncolor.z), int(255 * ncolor.w)) self.selected_node.radius = getoolkit.vec4( *[x.value for x in nradius])
def __time_window(self): bimpy.set_next_window_pos(bimpy.Vec2(5, 5 + 128), bimpy.Condition.Once) bimpy.set_next_window_size(bimpy.Vec2(345, 110), bimpy.Condition.Once) bimpy.begin("Time Elapsed", flags=bimpy.WindowFlags(4) | bimpy.WindowFlags(1) | bimpy.WindowFlags(2)) bimpy.push_font(self.fonts.fonts[16]["cond"]) bimpy.text_colored(bimpy.Vec4(1, 0, 0, 1), "Time Elapsed") bimpy.pop_font() bimpy.separator() bimpy.push_font(self.fonts.fonts[44]["ext_bold_ital"]) bimpy.text("") bimpy.same_line(38, 0) bimpy.text( str(datetime.timedelta(seconds=self.data.exercize_time))[:-4]) bimpy.pop_font() bimpy.end()
def __power_window(self): bimpy.set_next_window_pos(bimpy.Vec2(355, 278 + 128), bimpy.Condition.Once) bimpy.set_next_window_size(bimpy.Vec2(345, 225), bimpy.Condition.Once) bimpy.begin("Power", flags=bimpy.WindowFlags(4) | bimpy.WindowFlags(1) | bimpy.WindowFlags(2)) bimpy.push_font(self.fonts.fonts[16]["cond"]) bimpy.text_colored(bimpy.Vec4(1, 0, 0, 1), "Power") bimpy.pop_font() bimpy.separator() bimpy.push_font(self.fonts.fonts[44]["ext_bold_ital"]) bimpy.text("") bimpy.same_line(25, 0) bimpy.text("{:.2f}".format(self.data.power).rjust(6, "0")) bimpy.pop_font() bimpy.push_font(self.fonts.fonts[44]["ext_bold_ital"]) bimpy.same_line(212, 0) bimpy.text("Watts") bimpy.pop_font() self.power_datas.append(self.data.power) self.power_datas.pop(0) self.power_datas.reverse() bimpy.plot_lines("", self.power_datas, graph_size=bimpy.Vec2(329, 112), scale_min=-1.0, scale_max=500.0) self.power_datas.reverse() bimpy.end()
def set_light_theme(): """ light style from Pacome Danhiez (user itamago) https://github.com/ocornut/imgui/pull/511#issuecomment-175719267 """ style = bimpy.get_style() style.set_color(bimpy.Colors.Text, bimpy.Vec4(0.00, 0.00, 0.00, 1.00)) style.set_color(bimpy.Colors.TextDisabled, bimpy.Vec4(0.60, 0.60, 0.60, 1.00)) style.set_color(bimpy.Colors.WindowBg, bimpy.Vec4(0.94, 0.94, 0.94, 1.00)) style.set_color(bimpy.Colors.ChildBg, bimpy.Vec4(0.00, 0.00, 0.00, 0.00)) style.set_color(bimpy.Colors.PopupBg, bimpy.Vec4(1.00, 1.00, 1.00, 0.98)) style.set_color(bimpy.Colors.Border, bimpy.Vec4(0.00, 0.00, 0.00, 0.39)) style.set_color(bimpy.Colors.BorderShadow, bimpy.Vec4(1.00, 1.00, 1.00, 0.10)) style.set_color(bimpy.Colors.FrameBg, bimpy.Vec4(1.00, 1.00, 1.00, 1.00)) style.set_color(bimpy.Colors.FrameBgHovered, bimpy.Vec4(0.26, 0.59, 0.98, 0.40)) style.set_color(bimpy.Colors.FrameBgActive, bimpy.Vec4(0.26, 0.59, 0.98, 0.67)) style.set_color(bimpy.Colors.TitleBg, bimpy.Vec4(0.96, 0.96, 0.96, 1.00)) style.set_color(bimpy.Colors.TitleBgCollapsed, bimpy.Vec4(1.00, 1.00, 1.00, 0.51)) style.set_color(bimpy.Colors.TitleBgActive, bimpy.Vec4(0.82, 0.82, 0.82, 1.00)) style.set_color(bimpy.Colors.MenuBarBg, bimpy.Vec4(0.86, 0.86, 0.86, 1.00)) style.set_color(bimpy.Colors.ScrollbarBg, bimpy.Vec4(0.98, 0.98, 0.98, 0.53)) style.set_color(bimpy.Colors.ScrollbarGrab, bimpy.Vec4(0.69, 0.69, 0.69, 0.80)) style.set_color(bimpy.Colors.ScrollbarGrabHovered, bimpy.Vec4(0.49, 0.49, 0.49, 0.80)) style.set_color(bimpy.Colors.ScrollbarGrabActive, bimpy.Vec4(0.49, 0.49, 0.49, 1.00)) style.set_color(bimpy.Colors.CheckMark, bimpy.Vec4(0.26, 0.59, 0.98, 1.00)) style.set_color(bimpy.Colors.SliderGrab, bimpy.Vec4(0.26, 0.59, 0.98, 0.78)) style.set_color(bimpy.Colors.SliderGrabActive, bimpy.Vec4(0.26, 0.59, 0.98, 1.00)) style.set_color(bimpy.Colors.Button, bimpy.Vec4(0.26, 0.59, 0.98, 0.40)) style.set_color(bimpy.Colors.ButtonHovered, bimpy.Vec4(0.26, 0.59, 0.98, 1.00)) style.set_color(bimpy.Colors.ButtonActive, bimpy.Vec4(0.06, 0.53, 0.98, 1.00)) style.set_color(bimpy.Colors.Header, bimpy.Vec4(0.26, 0.59, 0.98, 0.31)) style.set_color(bimpy.Colors.HeaderHovered, bimpy.Vec4(0.26, 0.59, 0.98, 0.80)) style.set_color(bimpy.Colors.HeaderActive, bimpy.Vec4(0.26, 0.59, 0.98, 1.00)) style.set_color(bimpy.Colors.Separator, bimpy.Vec4(0.39, 0.39, 0.39, 1.00)) style.set_color(bimpy.Colors.SeparatorHovered, bimpy.Vec4(0.26, 0.59, 0.98, 0.78)) style.set_color(bimpy.Colors.SeparatorActive, bimpy.Vec4(0.26, 0.59, 0.98, 1.00)) style.set_color(bimpy.Colors.ResizeGrip, bimpy.Vec4(0.50, 0.50, 0.50, 1.00)) style.set_color(bimpy.Colors.ResizeGripHovered, bimpy.Vec4(0.26, 0.59, 0.98, 0.67)) style.set_color(bimpy.Colors.ResizeGripActive, bimpy.Vec4(0.26, 0.59, 0.98, 0.95)) style.set_color( bimpy.Colors.Tab, __lerp(style.get_color(bimpy.Colors.Header), style.get_color(bimpy.Colors.TitleBgActive), 0.90)) style.set_color(bimpy.Colors.TabHovered, style.get_color(bimpy.Colors.HeaderHovered)) style.set_color( bimpy.Colors.TabActive, __lerp(style.get_color(bimpy.Colors.HeaderActive), style.get_color(bimpy.Colors.TitleBgActive), 0.60)) style.set_color( bimpy.Colors.TabUnfocused, __lerp(style.get_color(bimpy.Colors.Tab), style.get_color(bimpy.Colors.TitleBg), 0.80)) style.set_color( bimpy.Colors.TabUnfocusedActive, __lerp(style.get_color(bimpy.Colors.TabActive), style.get_color(bimpy.Colors.TitleBg), 0.40)) style.set_color(bimpy.Colors.PlotLines, bimpy.Vec4(0.39, 0.39, 0.39, 1.00)) style.set_color(bimpy.Colors.PlotLinesHovered, bimpy.Vec4(1.00, 0.43, 0.35, 1.00)) style.set_color(bimpy.Colors.PlotHistogram, bimpy.Vec4(0.90, 0.70, 0.00, 1.00)) style.set_color(bimpy.Colors.PlotHistogramHovered, bimpy.Vec4(1.00, 0.60, 0.00, 1.00)) style.set_color(bimpy.Colors.TextSelectedBg, bimpy.Vec4(0.26, 0.59, 0.98, 0.35)) style.set_color(bimpy.Colors.DragDropTarget, bimpy.Vec4(0.26, 0.59, 0.98, 0.95)) style.set_color(bimpy.Colors.NavHighlight, style.get_color(bimpy.Colors.HeaderHovered)) style.set_color(bimpy.Colors.NavWindowingHighlight, bimpy.Vec4(0.70, 0.70, 0.70, 0.70)) style.set_color(bimpy.Colors.NavWindowingDimBg, bimpy.Vec4(0.20, 0.20, 0.20, 0.20)) style.set_color(bimpy.Colors.ModalWindowDimBg, bimpy.Vec4(0.20, 0.20, 0.20, 0.35)) bimpy.set_style(style)
import random from win32api import GetKeyState import win32api from pynput.mouse import Button, Controller ctx = bimpy.Context() MinCPS = bimpy.Float(8.5) MaxCPS = bimpy.Float(10.9) OnlyOneHeader = bimpy.Bool(True) Toggle = 0 mouseclick = Controller() MinDelay = 1000 MaxDelay = 1000 BaseDelay = 1000 BarColor = bimpy.Vec4(0.16078431, 0.2901960, 0.47843137, 0.95) HeaderColor = bimpy.Vec4(0.25882352, 0.58823529, 0.9803921568, 0.95) HeaderHoverColor = bimpy.Vec4(0.43529411, 0.694117647, 0.9803921568, 0.95) TextColor = bimpy.Vec4(1, 1, 1, 1) SliderColor = bimpy.Vec4(0.06078431, 0.1901960, 0.47843137, 0.95) SliderActiveColor = bimpy.Vec4(0.16078431, 0.2901960, 0.47843137, 0.95) CheckMarkColor = bimpy.Vec4(0.43529411, 0.694117647, 0.9803921568, 0.95) ctx.init(520, 320, "") print("Loading...") while (not ctx.should_close()): ctx.new_frame() if True: if bimpy.begin("", flags=(bimpy.WindowFlags.NoSavedSettings
def __buttons_window(self): bimpy.set_next_window_pos(bimpy.Vec2(5, 635), bimpy.Condition.Once) bimpy.set_next_window_size(bimpy.Vec2(1005, 128), bimpy.Condition.Once) bimpy.begin("Exercise Control", flags=bimpy.WindowFlags(4) | bimpy.WindowFlags(1) | bimpy.WindowFlags(2)) bimpy.push_font(self.fonts.fonts[16]["cond"]) bimpy.text_colored(bimpy.Vec4(1, 0, 0, 1), "Controls") bimpy.separator() bimpy.pop_font() bimpy.push_font(self.fonts.fonts[16]["cond"]) bimpy.text("") bimpy.same_line(0, 150) if self.pause_button_state == 1: bimpy.push_style_color(bimpy.Colors(0), bimpy.Vec4(0, 0, 0, 1)) bimpy.push_style_color(bimpy.Colors(21), bimpy.Vec4(0.8, 0.8, 0, 1)) bimpy.push_style_color(bimpy.Colors(22), bimpy.Vec4(1, 1, 0, 1)) bimpy.push_style_color(bimpy.Colors(23), bimpy.Vec4(0.5, 0.5, 0, 1)) pause_button_text = "Pause Exercise" elif self.pause_button_state == 0: bimpy.push_style_color(bimpy.Colors(0), bimpy.Vec4(0, 0, 0, 1)) bimpy.push_style_color(bimpy.Colors(21), bimpy.Vec4(0.0, 0.8, 0.0, 1)) bimpy.push_style_color(bimpy.Colors(22), bimpy.Vec4(0.0, 1, 0.0, 1)) bimpy.push_style_color(bimpy.Colors(23), bimpy.Vec4(0.0, 0.5, 0.0, 1)) pause_button_text = "Resume Exercise" elif self.pause_button_state == -1: bimpy.push_style_color(bimpy.Colors(0), bimpy.Vec4(0, 0, 0, 1)) bimpy.push_style_color(bimpy.Colors(21), bimpy.Vec4(0.4, 0.4, 0.4, 1)) bimpy.push_style_color(bimpy.Colors(22), bimpy.Vec4(0.4, 0.4, 0.4, 1)) bimpy.push_style_color(bimpy.Colors(23), bimpy.Vec4(0.4, 0.4, 0.4, 1)) pause_button_text = "------ -------" if bimpy.button(pause_button_text, bimpy.Vec2(250, 75)): if self.pause_button_state == 1: self.pause_button_state = 0 self.data.is_exercising = False elif self.pause_button_state == 0: self.pause_button_state = 1 self.data.is_exercising = True bimpy.pop_style_color() bimpy.pop_style_color() bimpy.pop_style_color() bimpy.pop_style_color() bimpy.same_line(450, 150) if self.stop_button_enabled: bimpy.push_style_color(bimpy.Colors(0), bimpy.Vec4(0, 0, 0, 1)) bimpy.push_style_color(bimpy.Colors(21), bimpy.Vec4(0.8, 0, 0, 1)) bimpy.push_style_color(bimpy.Colors(22), bimpy.Vec4(1, 0, 0, 1)) bimpy.push_style_color(bimpy.Colors(23), bimpy.Vec4(0.5, 0, 0, 1)) else: bimpy.push_style_color(bimpy.Colors(0), bimpy.Vec4(0, 0, 0, 1)) bimpy.push_style_color(bimpy.Colors(21), bimpy.Vec4(0.4, 0.4, 0.4, 1)) bimpy.push_style_color(bimpy.Colors(22), bimpy.Vec4(0.4, 0.4, 0.4, 1)) bimpy.push_style_color(bimpy.Colors(23), bimpy.Vec4(0.4, 0.4, 0.4, 1)) self.pause_button_state = -1 if bimpy.button("Stop Exercise", bimpy.Vec2(250, 75)): self.data.is_exercising = False self.stop_button_enabled = False bimpy.pop_style_color() bimpy.pop_style_color() bimpy.pop_style_color() bimpy.pop_style_color() bimpy.pop_font() bimpy.end()
from pyfirmata import Arduino, util, pyfirmata from array import array import threading import time import bimpy finalCom = 1 # Minimum port is 1 maxInterval = bimpy.Float() pinNumber = bimpy.Int() minPWM = bimpy.Int(0) maxPWM = bimpy.Int(1) # trueBool = bimpy.Bool(True) toggleLight = False plot_values = array('f',[]) textToggleButton = 'Start flashing LED' buttonNewColorEnabled = bimpy.Vec4(0,0.33,0.0078,1); # bimpy.push_style_color(bimpy.Colors.Button,buttonColoredEnabled) def checkPWM(): if (currentBoard.digital[pinNumber.value].mode == pyfirmata.PWM): return 1 try: currentBoard.digital[pinNumber.value].mode = pyfirmata.PWM return 1 except: return 0 def flashLED(): for i in range(0,9999999): if (toggleLight == True):
def show_demo_window(): bp.begin_root(menu=True) # Menu Bar if bp.begin_menu_bar(): if bp.begin_menu("Menu"): bp.end_menu() if bp.begin_menu("Examples"): bp.end_menu() if bp.begin_menu("Tools"): bp.end_menu() bp.end_menu_bar() global clicked if bp.button("Button"): clicked += 1 if clicked & 1: bp.same_line() bp.text("Thanks for clicking me!") bp.checkbox("checkbox", check) bp.radio_button("radio a", e, 0) bp.same_line() bp.radio_button("radio b", e, 1) bp.same_line() bp.radio_button("radio c", e, 2) # Color buttons, demonstrate using PushID() to add unique identifier in the ID stack, and changing style. for i in range(7): if i > 0: bp.same_line() bp.push_id_int(i) bp.push_style_color(bp.Colors.Button, bp.Vec4(i / 7.0, 0.6, 0.6, 1.0)) bp.push_style_color(bp.Colors.ButtonHovered, bp.Vec4(i / 7.0, 0.7, 0.7, 1.0)) bp.push_style_color(bp.Colors.ButtonActive, bp.Vec4(i / 7.0, 0.8, 0.8, 1.0)) bp.button("Click") bp.pop_style_color(3) bp.pop_id() # Use AlignTextToFramePadding() to align text baseline to the baseline of framed elements (otherwise a Text+SameLine+Button sequence will have the text a little too high by default) bp.align_text_to_frame_padding() bp.text("Hold to repeat:") bp.same_line() # Arrow buttons with Repeater spacing = bp.get_style().item_inner_spacing.x bp.push_button_repeat(True) global counter if bp.arrow_button("##left", bp.Direction.Left): counter -= 1 bp.same_line(0.0, spacing) if bp.arrow_button("##right", bp.Direction.Right): counter += 1 bp.pop_button_repeat() bp.same_line() bp.text("%d" % counter) bp.text("Hover over me") if bp.is_item_hovered(): bp.set_tooltip("I am a tooltip") bp.same_line() bp.text("- or me") if bp.is_item_hovered(): bp.begin_tooltip() bp.text("I am a fancy tooltip") arr = [0.6, 0.1, 1.0, 0.5, 0.92, 0.1, 0.2] bp.plot_lines("Curve", arr) bp.end_tooltip() bp.separator() bp.label_text("label", "Value") # Using the _simplified_ one-liner Combo() api here # See "Combo" section for examples of how to use the more complete BeginCombo()/EndCombo() api. items = [ "AAAA", "BBBB", "CCCC", "DDDD", "EEEE", "FFFF", "GGGG", "HHHH", "IIII", "JJJJ", "KKKK", "LLLLLLL", "MMMM", "OOOOOOO" ] bp.combo("combo", item_current, items) bp.same_line() help_marker( "Refer to the \"Combo\" section below for an explanation of the full BeginCombo/EndCombo API, and demonstration of various flags.\n" ) # To wire InputText() with std::string or any other custom string type, # see the "Text Input > Resize Callback" section of this demo, and the misc/cpp/imgui_stdlib.h file. bp.input_text("input text", str0, 128) bp.same_line() help_marker( "USER:\nHold SHIFT or use mouse to select text.\n" "CTRL+Left/Right to word jump.\n" "CTRL+A or double-click to select all.\n" "CTRL+X,CTRL+C,CTRL+V clipboard.\n" "CTRL+Z,CTRL+Y undo/redo.\n" "ESCAPE to revert.\n\nPROGRAMMER:\nYou can use the ImGuiInputTextFlags_CallbackResize facility if you need to wire InputText() to a dynamic string type. See misc/cpp/imgui_stdlib.h for an example (this is not demonstrated in imgui_demo.cpp)." ) bp.end()
def set_light_theme(): """ light style from Pacome Danhiez (user itamago) https://github.com/ocornut/imgui/pull/511#issuecomment-175719267 """ style = bimpy.get_style() style.set_color(bimpy.Colors.Text, bimpy.Vec4(0.00, 0.00, 0.00, 1.00)) style.set_color(bimpy.Colors.TextDisabled, bimpy.Vec4(0.60, 0.60, 0.60, 1.00)) style.set_color(bimpy.Colors.WindowBg, bimpy.Vec4(0.94, 0.94, 0.94, 1.00)) style.set_color(bimpy.Colors.ChildWindowBg, bimpy.Vec4(0.00, 0.00, 0.00, 0.00)) style.set_color(bimpy.Colors.Border, bimpy.Vec4(0.00, 0.00, 0.00, 0.39)) style.set_color(bimpy.Colors.BorderShadow, bimpy.Vec4(1.00, 1.00, 1.00, 0.10)) style.set_color(bimpy.Colors.FrameBg, bimpy.Vec4(1.00, 1.00, 1.00, 1.00)) style.set_color(bimpy.Colors.FrameBgHovered, bimpy.Vec4(0.26, 0.59, 0.98, 0.40)) style.set_color(bimpy.Colors.FrameBgActive, bimpy.Vec4(0.26, 0.59, 0.98, 0.67)) style.set_color(bimpy.Colors.TitleBg, bimpy.Vec4(0.96, 0.96, 0.96, 1.00)) style.set_color(bimpy.Colors.TitleBgCollapsed, bimpy.Vec4(1.00, 1.00, 1.00, 0.51)) style.set_color(bimpy.Colors.TitleBgActive, bimpy.Vec4(0.82, 0.82, 0.82, 1.00)) style.set_color(bimpy.Colors.MenuBarBg, bimpy.Vec4(0.86, 0.86, 0.86, 1.00)) style.set_color(bimpy.Colors.ScrollbarBg, bimpy.Vec4(0.98, 0.98, 0.98, 0.53)) style.set_color(bimpy.Colors.ScrollbarGrab, bimpy.Vec4(0.69, 0.69, 0.69, 0.80)) style.set_color(bimpy.Colors.ScrollbarGrabHovered, bimpy.Vec4(0.49, 0.49, 0.49, 0.80)) style.set_color(bimpy.Colors.ScrollbarGrabActive, bimpy.Vec4(0.49, 0.49, 0.49, 1.00)) # style.set_color(bimpy.Colors.ComboBg, bimpy.Vec4(0.86, 0.86, 0.86, 0.99)) style.set_color(bimpy.Colors.CheckMark, bimpy.Vec4(0.26, 0.59, 0.98, 1.00)) style.set_color(bimpy.Colors.SliderGrab, bimpy.Vec4(0.26, 0.59, 0.98, 0.78)) style.set_color(bimpy.Colors.SliderGrabActive, bimpy.Vec4(0.26, 0.59, 0.98, 1.00)) style.set_color(bimpy.Colors.Button, bimpy.Vec4(0.26, 0.59, 0.98, 0.40)) style.set_color(bimpy.Colors.ButtonHovered, bimpy.Vec4(0.26, 0.59, 0.98, 1.00)) style.set_color(bimpy.Colors.ButtonActive, bimpy.Vec4(0.06, 0.53, 0.98, 1.00)) style.set_color(bimpy.Colors.Header, bimpy.Vec4(0.26, 0.59, 0.98, 0.31)) style.set_color(bimpy.Colors.HeaderHovered, bimpy.Vec4(0.26, 0.59, 0.98, 0.80)) style.set_color(bimpy.Colors.HeaderActive, bimpy.Vec4(0.26, 0.59, 0.98, 1.00)) style.set_color(bimpy.Colors.Column, bimpy.Vec4(0.39, 0.39, 0.39, 1.00)) style.set_color(bimpy.Colors.ColumnHovered, bimpy.Vec4(0.26, 0.59, 0.98, 0.78)) style.set_color(bimpy.Colors.ColumnActive, bimpy.Vec4(0.26, 0.59, 0.98, 1.00)) style.set_color(bimpy.Colors.ResizeGrip, bimpy.Vec4(0.50, 0.50, 0.50, 1.00)) style.set_color(bimpy.Colors.ResizeGripHovered, bimpy.Vec4(0.26, 0.59, 0.98, 0.67)) style.set_color(bimpy.Colors.ResizeGripActive, bimpy.Vec4(0.26, 0.59, 0.98, 0.95)) # style.set_color(bimpy.Colors.CloseButton, bimpy.Vec4(0.59, 0.59, 0.59, 0.50)) # style.set_color(bimpy.Colors.CloseButtonHovered, bimpy.Vec4(0.98, 0.39, 0.36, 1.00)) # style.set_color(bimpy.Colors.CloseButtonActive, bimpy.Vec4(0.98, 0.39, 0.36, 1.00)) style.set_color(bimpy.Colors.PlotLines, bimpy.Vec4(0.39, 0.39, 0.39, 1.00)) style.set_color(bimpy.Colors.PlotLinesHovered, bimpy.Vec4(1.00, 0.43, 0.35, 1.00)) style.set_color(bimpy.Colors.PlotHistogram, bimpy.Vec4(0.90, 0.70, 0.00, 1.00)) style.set_color(bimpy.Colors.PlotHistogramHovered, bimpy.Vec4(1.00, 0.60, 0.00, 1.00)) style.set_color(bimpy.Colors.TextSelectedBg, bimpy.Vec4(0.26, 0.59, 0.98, 0.35)) style.set_color(bimpy.Colors.PopupBg, bimpy.Vec4(1.00, 1.00, 1.00, 0.94)) style.set_color(bimpy.Colors.ModalWindowDarkening, bimpy.Vec4(0.20, 0.20, 0.20, 0.35)) bimpy.set_style(style)