MCPcopy Create free account
hub / github.com/BishopFox/aimap / construct

Method construct

presentation/aimap_slides.py:97–189  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

95
96class TitleSlide(Scene):
97 def construct(self):
98 # Background grid pattern
99 grid_lines = VGroup()
100 for x in np.arange(-8, 8.5, 0.5):
101 grid_lines.add(Line(
102 [x, -5, 0], [x, 5, 0],
103 stroke_color=BORDER, stroke_width=0.3, stroke_opacity=0.2
104 ))
105 for y in np.arange(-5, 5.5, 0.5):
106 grid_lines.add(Line(
107 [-8, y, 0], [8, y, 0],
108 stroke_color=BORDER, stroke_width=0.3, stroke_opacity=0.2
109 ))
110 self.add(grid_lines)
111
112 # Scanning radar sweep
113 radar_circle = Circle(radius=3.5, color=ACCENT_BLUE, stroke_width=1, stroke_opacity=0.15)
114 radar_circle2 = Circle(radius=2.2, color=ACCENT_BLUE, stroke_width=1, stroke_opacity=0.1)
115 radar_circle3 = Circle(radius=1.0, color=ACCENT_BLUE, stroke_width=1, stroke_opacity=0.08)
116
117 sweep_line = Line(ORIGIN, [3.5, 0, 0], color=ACCENT_BLUE, stroke_width=2, stroke_opacity=0.4)
118 sweep_sector = AnnularSector(
119 inner_radius=0, outer_radius=3.5,
120 angle=PI / 6, start_angle=0,
121 fill_color=ACCENT_BLUE, fill_opacity=0.04,
122 stroke_width=0,
123 )
124 radar = VGroup(radar_circle, radar_circle2, radar_circle3, sweep_sector, sweep_line)
125 radar.shift(DOWN * 0.5)
126 self.add(radar)
127 self.play(Rotate(sweep_line, angle=TAU, about_point=radar.get_center(), rate_func=linear, run_time=6),
128 Rotate(sweep_sector, angle=TAU, about_point=radar.get_center(), rate_func=linear, run_time=6),
129 rate_func=linear, run_time=0.01)
130
131 # Blips appearing on radar
132 blip_positions = [
133 radar.get_center() + np.array([1.5, 0.8, 0]),
134 radar.get_center() + np.array([-2.0, -0.5, 0]),
135 radar.get_center() + np.array([0.5, -1.8, 0]),
136 radar.get_center() + np.array([-1.2, 1.5, 0]),
137 radar.get_center() + np.array([2.5, -1.0, 0]),
138 radar.get_center() + np.array([-0.8, -2.2, 0]),
139 ]
140 blip_colors = [SEVERITY_CRITICAL, SEVERITY_HIGH, ACCENT_GREEN, SEVERITY_MEDIUM, SEVERITY_CRITICAL, ACCENT_BLUE]
141
142 # Title elements
143 title = Text("AIMap", font="SF Mono", font_size=72, color=TEXT_PRIMARY, weight=BOLD)
144 title.shift(UP * 2.8)
145
146 tagline = Text("nmap for the Agentic Era", font="SF Mono", font_size=24, color=ACCENT_CYAN)
147 tagline.next_to(title, DOWN, buff=0.3)
148
149 underline = Line(
150 tagline.get_left() + DOWN * 0.2 + LEFT * 0.3,
151 tagline.get_right() + DOWN * 0.2 + RIGHT * 0.3,
152 color=ACCENT_BLUE, stroke_width=2, stroke_opacity=0.6
153 )
154

Callers

nothing calls this directly

Calls 1

glow_dotFunction · 0.85

Tested by

no test coverage detected