Skip to main content

Class: VMobject

Defined in: core/VMobject.ts:33

Vectorized mobject class for path-based shapes.

Extends

  • VMobjectRendering

Extended by

Constructors

Constructor

new VMobject(): VMobject

Defined in: core/VMobject.ts:50

Returns

VMobject

Overrides

VMobjectRendering.constructor

Properties

__savedMobjectState

__savedMobjectState: unknown = null

Defined in: core/Mobject.ts:95

JSON-serializable saved state (used by restoreState()).

Inherited from

VMobjectRendering.__savedMobjectState


_baseSubpathLengths?

protected optional _baseSubpathLengths: number[]

Defined in: core/VMobject.ts:45

Base subpath-length metadata (intrinsic topology, e.g. SVG compound paths).


_color

protected _color: string = '#ffffff'

Defined in: core/Mobject.ts:70

Inherited from

VMobjectRendering._color


_dirty

_dirty: boolean = true

Defined in: core/Mobject.ts:88

Inherited from

VMobjectRendering._dirty


_disableChildZLayering

protected _disableChildZLayering: boolean = false

Defined in: core/Mobject.ts:85

When true, children skip the 2D z-layering offset in _syncToThree.

Inherited from

VMobjectRendering._disableChildZLayering


_fillMaterial

protected _fillMaterial: MeshBasicMaterial = null

Defined in: core/VMobjectRendering.ts:39

Three.js fill material

Inherited from

VGroup._fillMaterial


_geometryDirty

protected _geometryDirty: boolean = true

Defined in: core/VMobjectRendering.ts:42

Whether geometry needs rebuild (separate from material dirty)

Inherited from

VMobjectRendering._geometryDirty


_opacity

protected _opacity: number = 1

Defined in: core/Mobject.ts:81

Inherited from

VMobjectRendering._opacity


_points3D

protected _points3D: number[][] = []

Defined in: core/VMobject.ts:39

Array of cubic Bezier control points in 3D. Each point is [x, y, z]. Stored as: [anchor1, handle1, handle2, anchor2, handle3, handle4, anchor3, ...]


_sceneFrameWidth

_sceneFrameWidth: number = null

Defined in: core/VMobjectRendering.ts:78

Inherited from

VGroup._sceneFrameWidth


_sceneRendererHeight

_sceneRendererHeight: number = null

Defined in: core/VMobjectRendering.ts:77

Inherited from

VGroup._sceneRendererHeight


_sceneRendererWidth

_sceneRendererWidth: number = null

Defined in: core/VMobjectRendering.ts:76

Per-instance renderer context (set by Scene when VMobject is added). When non-null these override the class-level statics so that multiple Scene instances do not corrupt each other's stroke-width calculations.

Inherited from

VGroup._sceneRendererWidth


_strokeMaterial

protected _strokeMaterial: LineMaterial = null

Defined in: core/VMobjectRendering.ts:36

Three.js stroke material (Line2 LineMaterial for thick strokes)

Inherited from

VGroup._strokeMaterial


_style

protected _style: MobjectStyle

Defined in: core/Mobject.ts:86

Inherited from

VMobjectRendering._style


_threeObject

_threeObject: Object3D<Object3DEventMap> = null

Defined in: core/Mobject.ts:87

Inherited from

VMobjectRendering._threeObject


_transformSubpathLengths?

protected optional _transformSubpathLengths: number[]

Defined in: core/VMobject.ts:48

Transform-time override for subpath lengths (compound-path metadata).


_visiblePointCount

protected _visiblePointCount: number = null

Defined in: core/VMobject.ts:42

Number of points visible (for Create animation)


children

children: Mobject[] = []

Defined in: core/Mobject.ts:65

Inherited from

VMobjectRendering.children


createdAtBeginning

createdAtBeginning: boolean = false

Defined in: core/Mobject.ts:69

Inherited from

VMobjectRendering.createdAtBeginning


fillOpacity

fillOpacity: number = 0

Defined in: core/Mobject.ts:83

Inherited from

VMobjectRendering.fillOpacity


id

readonly id: string

Defined in: core/Mobject.ts:63

Inherited from

VMobjectRendering.id


parent

parent: Mobject = null

Defined in: core/Mobject.ts:64

Inherited from

VMobjectRendering.parent


position

position: Vector3

Defined in: core/Mobject.ts:66

Inherited from

VMobjectRendering.position


rotation

rotation: Euler

Defined in: core/Mobject.ts:67

Inherited from

VMobjectRendering.rotation


savedState

savedState: Mobject = null

Defined in: core/Mobject.ts:91

Saved mobject copy (used by Restore animation). Set by saveState().

Inherited from

VMobjectRendering.savedState


scaleVector

scaleVector: Vector3

Defined in: core/Mobject.ts:68

Inherited from

VMobjectRendering.scaleVector


strokeWidth

strokeWidth: number = 4

Defined in: core/Mobject.ts:82

Inherited from

VMobjectRendering.strokeWidth


targetCopy

targetCopy: Mobject = null

Defined in: core/Mobject.ts:93

Target copy used by generateTarget() / MoveToTarget animation.

Inherited from

VMobjectRendering.targetCopy


useStrokeMesh

useStrokeMesh: boolean = false

Defined in: core/VMobjectRendering.ts:146

When true, render stroke as a mesh ring with miter-joined corners instead of Line2 for closed paths.

Inherited from

VMobjectRendering.useStrokeMesh


_frameWidth

static _frameWidth: number = 14

Defined in: core/VMobjectRendering.ts:69

Camera frame width in world units (set by Scene, for stroke width conversion)

Inherited from

VMobjectRendering._frameWidth


_rendererHeight

static _rendererHeight: number = 450

Defined in: core/VMobjectRendering.ts:66

Inherited from

VMobjectRendering._rendererHeight


_rendererWidth

static _rendererWidth: number = 800

Defined in: core/VMobjectRendering.ts:65

Renderer resolution for LineMaterial (set by Scene)

Inherited from

VMobjectRendering._rendererWidth


useShaderCurves

static useShaderCurves: boolean = false

Defined in: core/VMobjectRendering.ts:131

When true, VMobjects use GPU Bezier SDF shaders for stroke rendering instead of the default Line2/LineMaterial approach.

Inherited from

VMobjectRendering.useShaderCurves

Accessors

animate

Get Signature

get animate(): any

Defined in: core/Mobject.ts:497

Returns an AnimateProxy that records method calls. Pass the proxy to scene.play() to animate from the current state to the state after all recorded calls are applied.

Example
scene.play(circle.animate.shift([2, 0, 0]));
scene.play(circle.animate.setColor('#ff0000').scale(2));
Returns

any

Inherited from

VMobjectRendering.animate


color

Get Signature

get color(): string

Defined in: core/Mobject.ts:71

Returns

string

Set Signature

set color(value): void

Defined in: core/Mobject.ts:74

Parameters
value

string

Returns

void

Inherited from

VMobjectRendering.color


fillColor

Get Signature

get fillColor(): string

Defined in: core/Mobject.ts:184

Returns

string

Set Signature

set fillColor(color): void

Defined in: core/Mobject.ts:188

Parameters
color

string

Returns

void

Inherited from

VMobjectRendering.fillColor


isDirty

Get Signature

get isDirty(): boolean

Defined in: core/Mobject.ts:551

Returns

boolean

Inherited from

VMobjectRendering.isDirty


numPoints

Get Signature

get numPoints(): number

Defined in: core/VMobject.ts:115

Get the number of points

Returns

number


opacity

Get Signature

get opacity(): number

Defined in: core/Mobject.ts:114

Returns

number

Set Signature

set opacity(value): void

Defined in: core/Mobject.ts:118

Parameters
value

number

Returns

void

Inherited from

VMobjectRendering.opacity


points

Get Signature

get points(): Point[]

Defined in: core/VMobject.ts:65

Get all points as 2D Point objects (derived from _points3D)

Returns

Point[]


shaderCurves

Get Signature

get shaderCurves(): boolean

Defined in: core/VMobjectRendering.ts:168

Check whether this instance should use shader-based Bezier curve rendering.

Returns

boolean

Set Signature

set shaderCurves(value): void

Defined in: core/VMobjectRendering.ts:173

Enable or disable shader-based Bezier rendering for this instance.

Parameters
value

boolean

Returns

void

Inherited from

VMobjectRendering.shaderCurves


strokeColor

Get Signature

get strokeColor(): string

Defined in: core/Mobject.ts:195

Returns

string

Set Signature

set strokeColor(color): void

Defined in: core/Mobject.ts:199

Parameters
color

string

Returns

void

Inherited from

VMobjectRendering.strokeColor


style

Get Signature

get style(): MobjectStyle

Defined in: core/Mobject.ts:122

Returns

MobjectStyle

Inherited from

VMobjectRendering.style


submobjects

Get Signature

get submobjects(): Mobject[]

Defined in: core/Mobject.ts:136

Returns

Mobject[]

Inherited from

VMobjectRendering.submobjects


visiblePointCount

Get Signature

get visiblePointCount(): number

Defined in: core/VMobject.ts:122

Get the number of visible points (for Create animation)

Returns

number

Set Signature

set visiblePointCount(count): void

Defined in: core/VMobject.ts:129

Set the number of visible points (for Create animation)

Parameters
count

number

Returns

void

Methods

_buildEarcutFillGeometry()

protected _buildEarcutFillGeometry(points3D): BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>

Defined in: core/VMobjectRendering.ts:204

Parameters

points3D

number[][]

Returns

BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>

Inherited from

VMobjectRendering._buildEarcutFillGeometry


_createCopy()

protected _createCopy(): VMobject

Defined in: core/VMobject.ts:569

Create a copy of this VMobject

Returns

VMobject

Overrides

VMobjectRendering._createCopy


_createThreeObject()

protected _createThreeObject(): Object3D

Defined in: core/VMobjectRendering.ts:219

Create the Three.js backing object for this VMobject.

Returns

Object3D

Inherited from

VMobjectRendering._createThreeObject


_disposeRenderingResources()

protected _disposeRenderingResources(): void

Defined in: core/VMobjectRendering.ts:618

Returns

void

Inherited from

VMobjectRendering._disposeRenderingResources


_getBoundingBox()

_getBoundingBox(): object

Defined in: core/Mobject.ts:449

Returns

object

depth

depth: number

height

height: number

width

width: number

Deprecated

Use getBoundingBox() instead.

Inherited from

VMobjectRendering._getBoundingBox


_getEdgeInDirection()

_getEdgeInDirection(direction): Vector3Tuple

Defined in: core/Mobject.ts:442

Parameters

direction

Vector3Tuple

Returns

Vector3Tuple

Inherited from

VMobjectRendering._getEdgeInDirection


_interpolatePointList3D()

protected _interpolatePointList3D(points, targetCount): number[][]

Defined in: core/VMobject.ts:531

Interpolate a 3D point list to have a specific number of points.

Delegates to the bezier-aware resamplePointList3D so that valid cubic Bezier chains are densified by de Casteljau subdivision rather than piecewise-linear interpolation. Linear lerp on cubic control points silently produces invalid handles (handle = midpoint of two adjacent controls), which renders as flat polygonal segments mid-Transform.

Parameters

points

number[][]

targetCount

number

Returns

number[][]


_markDirty()

_markDirty(): void

Defined in: core/Mobject.ts:541

Returns

void

Inherited from

VMobjectRendering._markDirty


_markDirtyUpward()

_markDirtyUpward(): void

Defined in: core/Mobject.ts:545

Returns

void

Inherited from

VMobjectRendering._markDirtyUpward


_pointsToCurvePath()

protected _pointsToCurvePath(): CurvePath<Vector3>

Defined in: core/VMobjectRendering.ts:200

Returns

CurvePath<Vector3>

Inherited from

VMobjectRendering._pointsToCurvePath


_pointsToShape()

protected _pointsToShape(): Shape

Defined in: core/VMobjectRendering.ts:196

Returns

Shape

Inherited from

VMobjectRendering._pointsToShape


_setSceneContext()

_setSceneContext(rendererWidth, rendererHeight, frameWidth): void

Defined in: core/VMobjectRendering.ts:109

Set per-instance scene context for multi-scene support. Called by Scene when a VMobject is added or the scene is resized.

Parameters

rendererWidth

number

rendererHeight

number

frameWidth

number

Returns

void

Inherited from

VMobjectRendering._setSceneContext


_syncMaterialToThree()

protected _syncMaterialToThree(): void

Defined in: core/VMobjectRendering.ts:560

Returns

void

Inherited from

VMobjectRendering._syncMaterialToThree


_syncToThree()

_syncToThree(): void

Defined in: core/Mobject.ts:519

Returns

void

Inherited from

VMobjectRendering._syncToThree


_updateGeometry()

protected _updateGeometry(group): void

Defined in: core/VMobjectRendering.ts:248

Update the geometry within the Three.js group.

Parameters

group

Group

Returns

void

Inherited from

VMobjectRendering._updateGeometry


add()

add(...mobjects): this

Defined in: core/Mobject.ts:329

Parameters

mobjects

...Mobject[]

Returns

this

Inherited from

VMobjectRendering.add


addPoints()

addPoints(...points): this

Defined in: core/VMobject.ts:175

Add points to this VMobject using 2D Point objects

Parameters

points

...Point[]

Returns

this


addPointsAsCorners()

addPointsAsCorners(corners): this

Defined in: core/VMobject.ts:230

Add straight line segments from the last point to each corner. Each corner creates a new cubic Bezier segment with linear handles. Matches Manim's add_points_as_corners.

Parameters

corners

number[][]

Array of [x, y, z] corner points to connect to

Returns

this

this for chaining


addUpdater()

addUpdater(updater, callOnAdd): this

Defined in: core/Mobject.ts:589

Parameters

updater

UpdaterFunction

callOnAdd

boolean = false

Returns

this

Inherited from

VMobjectRendering.addUpdater


alignPoints()

alignPoints(target): void

Defined in: core/VMobject.ts:420

Align points between this VMobject and a target so they have the same count, consistent winding, and optimal rotation for smooth morphing.

Parameters

target

VMobject

The target VMobject to align with

Returns

void


alignTo()

alignTo(target, direction): this

Defined in: core/Mobject.ts:427

Parameters

target

Mobject | Vector3Tuple

direction

Vector3Tuple

Returns

this

Inherited from

VMobjectRendering.alignTo


applyFunction()

applyFunction(fn, options?): this

Defined in: core/Mobject.ts:619

Parameters

fn

(point) => number[]

options?
aboutEdge?

Vector3Tuple

aboutPoint?

Vector3Tuple

Returns

this

Inherited from

VMobjectRendering.applyFunction


applyMatrix()

applyMatrix(matrix, options?): this

Defined in: core/Mobject.ts:627

Parameters

matrix

number[][]

options?
aboutEdge?

Vector3Tuple

aboutPoint?

Vector3Tuple

Returns

this

Inherited from

VMobjectRendering.applyMatrix


applyToFamily()

applyToFamily(func): this

Defined in: core/Mobject.ts:577

Parameters

func

(mobject) => void

Returns

this

Inherited from

VMobjectRendering.applyToFamily


become()

become(other): this

Defined in: core/Mobject.ts:376

Parameters

other

Mobject

Returns

this

Inherited from

VMobjectRendering.become


center()

center(): this

Defined in: core/Mobject.ts:479

Returns

this

Inherited from

VMobjectRendering.center


centerPointsAroundPosition()

centerPointsAroundPosition(): this

Defined in: core/VMobject.ts:690

Centers local geometry around the origin and updates position accordingly.

This scans all descendant VMobject points (not only this._points3D), so container-style VMobjects (e.g. MathTex/SVGMobject/CurvesAsSubmobjects) are also centered correctly.

Returns

this

this for chaining


clearPoints()

clearPoints(): this

Defined in: core/VMobject.ts:264

Clear all points

Returns

this


clearUpdaters()

clearUpdaters(): this

Defined in: core/Mobject.ts:601

Returns

this

Inherited from

VMobjectRendering.clearUpdaters


copy()

copy(): VMobject

Defined in: core/VMobject.ts:553

Create a copy of this VMobject. Subclasses override _createCopy() to produce an instance of the right concrete type (Circle, Square, etc.), but those constructors typically regenerate points from their own parameters (radius, sideLength, ...). After a Transform animation has morphed the point data, the regenerated points no longer match the actual visual state. We therefore always overwrite the clone's _points3D with the source's current data.

Returns

VMobject

Overrides

VMobjectRendering.copy


dispose()

dispose(): void

Defined in: core/VMobject.ts:761

Clean up Three.js resources

Returns

void

Overrides

VMobjectRendering.dispose


flip()

flip(axis, options?): this

Defined in: core/Mobject.ts:257

Parameters

axis

Vector3Tuple = ...

options?
aboutEdge?

Vector3Tuple

aboutPoint?

Vector3Tuple

Returns

this

Inherited from

VMobjectRendering.flip


generateTarget()

generateTarget(): Mobject

Defined in: core/Mobject.ts:642

Returns

Mobject

Inherited from

VMobjectRendering.generateTarget


getBottom()

getBottom(): Vector3Tuple

Defined in: core/Mobject.ts:458

Returns

Vector3Tuple

Inherited from

VMobjectRendering.getBottom


getBoundingBox()

getBoundingBox(): object

Defined in: core/Mobject.ts:445

Returns

object

depth

depth: number

height

height: number

width

width: number

Inherited from

VMobjectRendering.getBoundingBox


getBounds()

getBounds(): object

Defined in: core/Mobject.ts:392

Returns

object

max

max: object

max.x

x: number

max.y

y: number

max.z

z: number

min

min: object

min.x

x: number

min.y

y: number

min.z

z: number

Inherited from

VMobjectRendering.getBounds


getCenter()

getCenter(): Vector3Tuple

Defined in: core/VMobject.ts:611

Get the center of this VMobject based on its own local points. Uses bounding box center (matching Python Manim's get_center behavior) rather than point centroid, which is inaccurate for Bezier control points.

Returns

Vector3Tuple

Overrides

VMobjectRendering.getCenter


getDisplayMeshes()

getDisplayMeshes(): Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>[]

Defined in: core/Mobject.ts:569

Returns

Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>[]

Inherited from

VMobjectRendering.getDisplayMeshes


getDisplayMeshLength()

getDisplayMeshLength(): number

Defined in: core/Mobject.ts:565

Number of visible display meshes this mobject contributes when rendered. Used for Transform eligibility checks without forcing Three.js object creation.

Returns

number

Inherited from

VMobjectRendering.getDisplayMeshLength


getEdge()

getEdge(direction): Vector3Tuple

Defined in: core/Mobject.ts:452

Parameters

direction

Vector3Tuple

Returns

Vector3Tuple

Inherited from

VMobjectRendering.getEdge


getEffectiveSubpathLengths()

getEffectiveSubpathLengths(): number[]

Defined in: core/VMobject.ts:313

Get effective subpath lengths for rendering. Returns transform override if present, else base/subclass metadata.

Returns

number[]


getFamily()

getFamily(): Mobject[]

Defined in: core/Mobject.ts:583

Returns

Mobject[]

Inherited from

VMobjectRendering.getFamily


getLeft()

getLeft(): Vector3Tuple

Defined in: core/Mobject.ts:461

Returns

Vector3Tuple

Inherited from

VMobjectRendering.getLeft


getPoints()

getPoints(): number[][]

Defined in: core/VMobject.ts:108

Get all points defining this VMobject as 3D arrays

Returns

number[][]

Copy of the points array


getRight()

getRight(): Vector3Tuple

Defined in: core/Mobject.ts:464

Returns

Vector3Tuple

Inherited from

VMobjectRendering.getRight


getSubpathLengths()

getSubpathLengths(): number[]

Defined in: core/VMobject.ts:290

Get base subpath lengths (intrinsic topology metadata). Subclasses may override this to compute dynamic metadata.

Returns

number[]


getSubpathOrientationSign()

getSubpathOrientationSign(index): -1 | 1

Defined in: core/VMobject.ts:353

Get orientation sign for a specific subpath index: +1 (CCW) or -1 (CW).

Parameters

index

number

Returns

-1 | 1


getSubpathOrientationSigns()

getSubpathOrientationSigns(lengths?): (-1 | 1)[]

Defined in: core/VMobject.ts:324

Get orientation sign for each subpath: +1 (CCW) or -1 (CW). Returns undefined when subpath metadata is missing or inconsistent.

Parameters

lengths?

number[]

Returns

(-1 | 1)[]


getThreeObject()

getThreeObject(): Object3D

Defined in: core/Mobject.ts:555

Returns

Object3D

Inherited from

VMobjectRendering.getThreeObject


getTop()

getTop(): Vector3Tuple

Defined in: core/Mobject.ts:455

Returns

Vector3Tuple

Inherited from

VMobjectRendering.getTop


getUnitVector()

getUnitVector(): Vector3Tuple

Defined in: core/VMobject.ts:587

Get the unit vector from the first to the last point of this VMobject, accounting for the object's current rotation transform.

Returns

Vector3Tuple


getUpdaters()

getUpdaters(): UpdaterFunction[]

Defined in: core/Mobject.ts:608

Returns

UpdaterFunction[]

Inherited from

VMobjectRendering.getUpdaters


getVisiblePointCount()

getVisiblePointCount(): number

Defined in: core/VMobject.ts:164

Get the visible point count (null means all points visible).

Returns

number


getVisiblePoints()

getVisiblePoints(): Point[]

Defined in: core/VMobject.ts:138

Get points that should be visible (for rendering) as 2D Points

Returns

Point[]

Overrides

VMobjectRendering.getVisiblePoints


getVisiblePoints3D()

getVisiblePoints3D(): number[][]

Defined in: core/VMobject.ts:146

Get points that should be visible (for rendering) as 3D arrays

Returns

number[][]

Overrides

VMobjectRendering.getVisiblePoints3D


hasUpdaters()

hasUpdaters(): boolean

Defined in: core/Mobject.ts:605

Returns

boolean

Inherited from

VMobjectRendering.hasUpdaters


interpolate()

interpolate(target, alpha): this

Defined in: core/VMobject.ts:373

Interpolate this VMobject towards a target VMobject

Parameters

target

VMobject

The target VMobject to interpolate towards

alpha

number

Progress from 0 (this) to 1 (target)

Returns

this

this for chaining


markGeometryDirty()

markGeometryDirty(): void

Defined in: core/VMobjectRendering.ts:180

Mark geometry as needing rebuild on next render.

Returns

void

Inherited from

VMobjectRendering.markGeometryDirty


moveTo()

moveTo(target, alignedEdge?): this

Defined in: core/Mobject.ts:216

Parameters

target

Mobject | Vector3Tuple

alignedEdge?

Vector3Tuple

Returns

this

Inherited from

VMobjectRendering.moveTo


moveToAligned()

moveToAligned(target, alignedEdge?): this

Defined in: core/Mobject.ts:437

Parameters

target

Mobject | Vector3Tuple

alignedEdge?

Vector3Tuple

Returns

this

Inherited from

VMobjectRendering.moveToAligned


nextTo()

nextTo(target, direction, buff): this

Defined in: core/Mobject.ts:410

Parameters

target

Mobject | Vector3Tuple

direction

Vector3Tuple = RIGHT

buff

number = 0.25

Returns

this

Inherited from

VMobjectRendering.nextTo


prepareForNonlinearTransform()

prepareForNonlinearTransform(numPieces): this

Defined in: core/Mobject.ts:635

Parameters

numPieces

number = 50

Returns

this

Inherited from

VMobjectRendering.prepareForNonlinearTransform


remove()

remove(...mobjects): this

Defined in: core/Mobject.ts:342

Parameters

mobjects

...Mobject[]

Returns

this

Inherited from

VMobjectRendering.remove


removeUpdater()

removeUpdater(updater): this

Defined in: core/Mobject.ts:595

Parameters

updater

UpdaterFunction

Returns

this

Inherited from

VMobjectRendering.removeUpdater


replace()

replace(target, stretch): this

Defined in: core/Mobject.ts:381

Parameters

target

Mobject

stretch

boolean = false

Returns

this

Inherited from

VMobjectRendering.replace


restoreState()

restoreState(): boolean

Defined in: core/Mobject.ts:652

Returns

boolean

Inherited from

VMobjectRendering.restoreState


rotate()

rotate(angle, axisOrOptions?): this

Defined in: core/Mobject.ts:237

Rotate the mobject by angle around an axis. Accepts aboutPoint or aboutEdge to specify the rotation center.

Parameters

angle

number

axisOrOptions?

Vector3Tuple | { aboutEdge?: Vector3Tuple; aboutPoint?: Vector3Tuple; axis?: Vector3Tuple; }

Returns

this

Inherited from

VMobjectRendering.rotate


rotateAboutOrigin()

rotateAboutOrigin(angle, axis): this

Defined in: core/Mobject.ts:253

Parameters

angle

number

axis

Vector3Tuple = ...

Returns

this

Inherited from

VMobjectRendering.rotateAboutOrigin


saveState()

saveState(): this

Defined in: core/Mobject.ts:647

Returns

this

Inherited from

VMobjectRendering.saveState


scale()

scale(factor, options?): this

Defined in: core/Mobject.ts:283

Parameters

factor

number | Vector3Tuple

options?
aboutEdge?

Vector3Tuple

aboutPoint?

Vector3Tuple

Returns

this

Inherited from

VMobjectRendering.scale


setBaseSubpathLengths()

setBaseSubpathLengths(lengths): void

Defined in: core/VMobject.ts:280

Set base subpath-length metadata for this VMobject. Represents intrinsic topology (e.g. outer contour + holes from SVG parsing).

Parameters

lengths

number[]

Returns

void


setColor()

setColor(color): this

Defined in: core/Mobject.ts:140

Parameters

color

string

Returns

this

Inherited from

VMobjectRendering.setColor


setFill()

setFill(color?, opacity?): this

Defined in: core/Mobject.ts:178

Parameters

color?

string

opacity?

number

Returns

this

Inherited from

VMobjectRendering.setFill


setFillOpacity()

setFillOpacity(opacity): this

Defined in: core/Mobject.ts:168

Parameters

opacity

number

Returns

this

Inherited from

VMobjectRendering.setFillOpacity


setPoints()

setPoints(points): this

Defined in: core/VMobject.ts:75

Set the points defining this VMobject. Accepts either Point[] ({x, y} objects) or number[][] ([x, y, z] arrays).

Parameters

points

Array of points in either format

number[][] | Point[]

Returns

this

this for chaining


setPoints3D()

setPoints3D(points): this

Defined in: core/VMobject.ts:100

Set the points defining this VMobject using 3D arrays (alias for setPoints with number[][])

Parameters

points

number[][]

Array of [x, y, z] control points for cubic Bezier curves

Returns

this

this for chaining


setPointsAsCorners()

setPointsAsCorners(corners): this

Defined in: core/VMobject.ts:189

Set the points to form straight line segments between corner points. Each pair of consecutive corners becomes a cubic Bezier with linear handles. Matches Manim's set_points_as_corners.

Parameters

corners

number[][]

Array of [x, y, z] corner points

Returns

this

this for chaining


setStrokeOpacity()

setStrokeOpacity(opacity): this

Defined in: core/Mobject.ts:148

Parameters

opacity

number

Returns

this

Inherited from

VMobjectRendering.setStrokeOpacity


setStrokeWidth()

setStrokeWidth(width): this

Defined in: core/Mobject.ts:158

Parameters

width

number

Returns

this

Inherited from

VMobjectRendering.setStrokeWidth


setStyle()

setStyle(style): this

Defined in: core/Mobject.ts:126

Parameters

style

Partial<MobjectStyle>

Returns

this

Inherited from

VMobjectRendering.setStyle


setTransformSubpathLengths()

setTransformSubpathLengths(lengths): void

Defined in: core/VMobject.ts:299

Set transform-time subpath lengths override. Used by Transform animations to preserve compound-path structure.

Parameters

lengths

number[]

Array of subpath lengths, or undefined to clear

Returns

void


setVisiblePointCount()

setVisiblePointCount(count): void

Defined in: core/VMobject.ts:155

Set visible point count for progressive creation animations. Use null to show all points.

Parameters

count

number

Returns

void


setX()

setX(x): this

Defined in: core/Mobject.ts:467

Parameters

x

number

Returns

this

Inherited from

VMobjectRendering.setX


setY()

setY(y): this

Defined in: core/Mobject.ts:471

Parameters

y

number

Returns

this

Inherited from

VMobjectRendering.setY


setZ()

setZ(z): this

Defined in: core/Mobject.ts:475

Parameters

z

number

Returns

this

Inherited from

VMobjectRendering.setZ


shift()

shift(delta): this

Defined in: core/Mobject.ts:208

Parameters

delta

Vector3Tuple

Returns

this

Inherited from

VMobjectRendering.shift


stretch()

stretch(factor, dim, options?): this

Defined in: core/Mobject.ts:310

Parameters

factor

number

dim

number

options?
aboutEdge?

Vector3Tuple

aboutPoint?

Vector3Tuple

Returns

this

Inherited from

VMobjectRendering.stretch


toCorner()

toCorner(direction, buff, frameDimensions?): this

Defined in: core/Mobject.ts:509

Parameters

direction

Vector3Tuple = ...

buff

number = 0.5

frameDimensions?

[number, number]

Returns

this

Inherited from

VMobjectRendering.toCorner


toEdge()

toEdge(direction, buff, frameDimensions?): this

Defined in: core/Mobject.ts:504

Parameters

direction

Vector3Tuple

buff

number = 0.5

frameDimensions?

[number, number]

Returns

this

Inherited from

VMobjectRendering.toEdge


update()

update(dt): void

Defined in: core/Mobject.ts:612

Parameters

dt

number

Returns

void

Inherited from

VMobjectRendering.update


_toLinewidth()

static _toLinewidth(this, strokeWidth): number

Defined in: core/VMobjectRendering.ts:123

Convert Manim-compatible strokeWidth to LineMaterial linewidth in pixels. Python Manim uses cairo_line_width_multiple=0.01, so: linewidth_px = strokeWidth * 0.01 * (rendererWidth / frameWidth)

NOTE: This static method uses class-level statics. For multi-scene correctness, internal code should use the instance method _computeLinewidth().

Parameters

this

typeof VMobjectRendering

strokeWidth

number

Returns

number

Inherited from

VMobjectRendering._toLinewidth