您的位置:首頁 > 軟件教程 > 教程 > Manim中的Cone類:創(chuàng)建和操控錐形幾何對象

Manim中的Cone類:創(chuàng)建和操控錐形幾何對象

來源:好特整理 | 時間:2024-11-15 10:04:04 | 閱讀:167 |  標(biāo)簽: a 對象 One C   | 分享到:

Cone是Manim中專門用于創(chuàng)建和操控錐形幾何對象的類。 Cone允許用戶定義錐體的底面半徑、高度、顏色、不透明度等屬性,并提供了一系列方法來操控這個錐體,如移動、縮放、旋轉(zhuǎn)等。 通過這些屬性和方法,用戶可以靈活地創(chuàng)建出符合自己需求的錐形對象,并將其融入到動畫或演示中。 1. 主要參數(shù) Cone的

Cone Manim 中專門用于創(chuàng)建和操控 錐形幾何對象 的類。

Cone 允許用戶定義錐體的底面半徑、高度、顏色、不透明度等屬性,并提供了一系列方法來操控這個錐體,如移動、縮放、旋轉(zhuǎn)等。

通過這些屬性和方法,用戶可以靈活地創(chuàng)建出符合自己需求的錐形對象,并將其融入到動畫或演示中。

主要參數(shù)

Cone 的主要參數(shù)有:

參數(shù)名稱 類型 說明
base_radius float 圓錐底部的半徑
height float 圓錐的高度,也就是圓錐從底面中心到頂點的垂直距離
direction np.ndarray 圓錐的朝向
show_base bool 是否顯示圓錐的底面
v_range list[float] 圓錐縱向掃描的范圍,用于控制圓錐側(cè)面的縱向形狀
u_min float 圓錐橫向掃描的最小角度,影響圓錐側(cè)面的橫向分布
checkerboard_colors bool 是否使用棋盤格顏色模式,有助于在視覺上區(qū)分圓錐的不同部分

這些參數(shù)允許用戶靈活地創(chuàng)建和自定義圓錐體對象。

例如,通過調(diào)整 base_radius height 參數(shù),可以改變圓錐的大小和形狀;通過 direction 參數(shù),可以控制圓錐的朝向;而 show_base v_range 、 u_min checkerboard_colors 參數(shù)則提供了對圓錐視覺表現(xiàn)的進一步定制。

主要方法

Cone 類有兩個自己特有的改變方向的方法:

名稱 說明
get_direction 用于獲取圓錐體的方向向量。這個方向向量通常是一個三維向量,表示圓錐體在空間中的朝向。
set_direction 用于設(shè)置圓錐體的方向向量。通過傳入一個新的三維向量,可以改變圓錐體在空間中的朝向。

使用示例

下面的示例將展示如何創(chuàng)建圓錐體對象、設(shè)置其參數(shù)、以及調(diào)用其方法來改變圓錐體的屬性或進行動畫。

基本的圓錐體

本示例展示了如何在 Manim 場景中創(chuàng)建一個基本的圓錐體。

圓錐體具有指定的底面半徑和高度,并且默認方向朝上。

# 創(chuàng)建一個底面半徑為1,高度為2的圓錐體,
# 方向朝上(默認方向)
cone = Cone(base_radius=1, height=2)

Manim中的Cone類:創(chuàng)建和操控錐形幾何對象

自定義圓錐體

在此示例中,創(chuàng)建了一個圓錐體,并對其進行了自定義設(shè)置。

這包括設(shè)置圓錐體的 填充顏色 、 邊框顏色 、 邊框?qū)挾? ,以及將其移動到場景中的 特定位置

這樣,圓錐體不僅具有獨特的外觀,還位于用戶指定的位置。

# 創(chuàng)建一個底面半徑為1.5,高度為3的圓錐體,
# 設(shè)置填充顏色和邊框顏色
cone = Cone(
    base_radius=1.5,
    height=3,
    fill_color=RED,
    stroke_color=YELLOW,
    stroke_width=2,
)
# 將圓錐體移動到場景中的特定位置
cone.move_to(np.array([1, 1, 1]))

Manim中的Cone類:創(chuàng)建和操控錐形幾何對象

旋轉(zhuǎn)和縮放

這個示例演示了如何為圓錐體添加動畫效果。

首先,創(chuàng)建了一個圓錐體,并隨后應(yīng)用了兩種動畫:旋轉(zhuǎn)和縮放。

圓錐體先繞y軸旋轉(zhuǎn)了一定角度,然后按比例放大。

# 創(chuàng)建一個底面半徑為1,高度為2的圓錐體
cone = Cone(
    base_radius=1,
    height=2,
    fill_color=BLUE,
)
# 將圓錐體添加到場景中
self.play(Create(cone))
# 創(chuàng)建旋轉(zhuǎn)動畫,繞y軸旋轉(zhuǎn)90度
self.play(
    Rotate(
        cone,
        axis=Y_AXIS,
        angle=PI / 2,
    ),
)
# 創(chuàng)建縮放動畫,將圓錐體放大1.5倍
self.play(cone.animate.scale(1.5))

Manim中的Cone類:創(chuàng)建和操控錐形幾何對象

復(fù)制和排列

此示例展示了如何復(fù)制圓錐體并將其排列成一行。

首先,創(chuàng)建了一個圓錐體作為模板,然后使用循環(huán)創(chuàng)建了多個該圓錐體的副本,并將它們稍微移動位置以排列成一行。

# 創(chuàng)建一個底面半徑為0.5,高度為1的圓錐體作為模板
cone_tpl = Cone(
    base_radius=0.5,
    height=1,
    fill_color=GREEN,
)
# 創(chuàng)建一個圓錐體數(shù)組,
# 每個圓錐體都是模板的復(fù)制,并稍微移動位置
cones = VGroup(
    *[cone_tpl.copy().move_to([i, 0, 0]) for i in range(5)]
)
# 將圓錐體數(shù)組添加到場景中
self.play(Create(cones))
# 整個圓錐體數(shù)組一起移動
self.play(cones.animate.shift(LEFT * 3))

Manim中的Cone類:創(chuàng)建和操控錐形幾何對象

附件

文中的代碼只是關(guān)鍵部分的截取,完整的代碼共享在網(wǎng)盤中( cone.py ),

下載地址: 完整代碼 (訪問密碼: 6872)

小編推薦閱讀

好特網(wǎng)發(fā)布此文僅為傳遞信息,不代表好特網(wǎng)認同期限觀點或證實其描述。

a 1.0
a 1.0
類型:休閑益智  運營狀態(tài):正式運營  語言:中文   

游戲攻略

游戲禮包

游戲視頻

游戲下載

游戲活動

《alittletotheleft》官網(wǎng)正版是一款備受歡迎的休閑益智整理游戲。玩家的任務(wù)是對日常生活中的各種雜亂物

相關(guān)視頻攻略

更多

掃二維碼進入好特網(wǎng)手機版本!

掃二維碼進入好特網(wǎng)微信公眾號!

本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請發(fā)郵件[email protected]

湘ICP備2022002427號-10 湘公網(wǎng)安備:43070202000427號© 2013~2024 haote.com 好特網(wǎng)