camera-techniqueslisted
Install: claude install-skill choxos/MathVizAgent
# Camera Techniques
Cinematic camera techniques for Manim animations.
## MovingCameraScene (2D)
### Basic Setup
```python
from manim import *
class MyScene(MovingCameraScene):
def construct(self):
# self.camera.frame is the camera
# It's a VMobject that can be animated
# Save initial state
self.camera.frame.save_state()
# ... scene content
```
### Camera Properties
```python
# Get current properties
self.camera.frame.width # Frame width
self.camera.frame.height # Frame height
self.camera.frame.get_center() # Camera position
# Set properties
self.camera.frame.set(width=10)
self.camera.frame.set(height=6)
```
## Zoom Operations
### Zoom In (Make Larger)
```python
# Scale down frame = zoom in
self.play(
self.camera.frame.animate.scale(0.5), # 2x zoom
run_time=2
)
# Zoom to specific height
self.play(
self.camera.frame.animate.set(height=4),
run_time=2
)
```
### Zoom Out (Show More)
```python
# Scale up frame = zoom out
self.play(
self.camera.frame.animate.scale(2), # 0.5x zoom
run_time=2
)
```
### Zoom to Object
```python
# Fit object in frame with padding
target = some_mobject
self.play(
self.camera.frame.animate
.set(height=target.height * 1.5)
.move_to(target),
run_time=2
)
```
### Zoom Levels
| Scale Factor | Effective Zoom | Use Case |
|--------------|----------------|----------|
| 0.25 | 4x zoom in | Fine detail |
| 0.5 | 2x zoom in | Detail view |
|