summaryrefslogtreecommitdiff
path: root/FSF-2020/linear-algebra/vector-spaces/Vector-Spaces/Inner-Product_Spaces/Projection-in-3D-space.py
blob: e99202f50aad98350c157bb5f92324513275b465 (plain)
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
from manimlib.imports import *
class ThreeDSpace(ThreeDScene):
	
	def construct(self):		
		axes = ThreeDAxes()
		axes.set_stroke(width=1,color=GOLD)	
		self.add(axes)
		self.set_camera_orientation(phi = 70*DEGREES,theta =110*DEGREES)
		line1 = Line(color = YELLOW,opacity=350,start = ORIGIN,end = [0.5,2,2])
		self.play(ShowCreation(line1))
		self.wait(1)
		line2 = Line(color = BLUE,opacity=350,start = ORIGIN,end = [2,2,-1])
		self.play(ShowCreation(line2))
		self.wait(1)	
		line3 = Line(opacity=350,start=axes.c2p(0.5,2,2) ,end=axes.c2p(0.5,1.14,-0.17))	
		self.play(ShowCreation(line3))
		self.wait(1)
		line4 = Line(color=RED,opacity=350,start = ORIGIN,end=[0.5,1.14,-0.145])
		self.play(ShowCreation(line4))
		self.wait(2)
		text1 = TextMobject(r"\text{Projection on }",r"\text{$\vec{v}$}",r"\text{ onto }",r"\text{$\vec{u}$}",r"\text{ = }",r"\text{$ |\vec{v}|cos\theta$,}").scale(0.6).shift(4*LEFT+3.5*UP)
		text1[1].set_color(YELLOW)
		text1[3].set_color(BLUE)
		text1[5].set_color(RED)
		text2 = TextMobject(r"\text{where $\theta$ is the angle between the vectors.}").scale(0.6).shift(4*LEFT+3*UP)
		self.add_fixed_in_frame_mobjects(text1)
		self.add_fixed_in_frame_mobjects(text2)
		self.play(ShowCreation(text1),ShowCreation(text2))
		self.wait(3)