Как сделать меш с помощью скрипта Python на Blender

Я хочу знать, как создать сетку с вершинами и гранями, используя скрипт на Python из математических уравнений, например, сферических гармоник и так далее.

Если показан пример кода простой функции, остальное я сделаю сам.

Версия Ubuntu: 12.04

Версия Blender: 2.62

Добавлена ​​информация (2013/08/02):

Я нашел очень полезный сайт ,

Blender Python: математическая сетка

Наконец, я получил пример, это случай нормального распределения.

import bpy
import math

# clear mesh and object
for item in bpy.context.scene.objects:
    if item.type == 'MESH':
        bpy.context.scene.objects.unlink(item)
for item in bpy.data.objects:
    if item.type == 'MESH':
        bpy.data.objects.remove(item)
for item in bpy.data.meshes:
    bpy.data.meshes.remove(item)
for item in bpy.data.materials:
    bpy.data.materials.remove(item)

# mesh arrays
verts = []
faces = []

# mesh variables
numX = 100
numY = 100

# variance and scale variables
variance = .35
scale = 4

# fill verts array
for i in range (0, numX):
    for j in range(0,numY):
        # nomalize range
        u = 2*(i/numX-1/2)
        v = 2*(j/numY-1/2)

        s = variance
        x = scale*u
        y = scale*v
        z = scale*1/math.sqrt(2*math.pi*s*s)*math.exp(-(u*u+v*v)/(2*s*s))

        vert = (x,y,z)
        verts.append(vert)

# fill faces array
count = 0
for i in range (0, numY *(numX-1)):
    if count < numY-1:
        A = i
        B = i+1
        C = (i+numY)+1
        D = (i+numY)
        face = (A,B,C,D)
        faces.append(face)
        count = count + 1
    else:
        count = 0

# create mesh and object
mesh = bpy.data.meshes.new("wave")
object = bpy.data.objects.new("wave",mesh)

# set mesh location
object.location = bpy.context.scene.cursor_location
bpy.context.scene.objects.link(object)

# create mesh from python data
mesh.from_pydata(verts,[],faces)
mesh.update(calc_edges=True)

Снимок экрана: Mesh Object by Python Script

0
задан 2 August 2013 в 17:23

1 ответ

Вам следует искать похожие сценарии. Как вы, возможно, знаете, Blender поставляется с аддонами, написанными на Python. Есть несколько доступных дополнений о создании мешей. Вы должны включить их, но они установлены на вашем компьютере. Ищите в / usr / share / blender / addons, чтобы увидеть их. Может быть, вы можете сделать несколько обратных исследований, чтобы ответить на ваш вопрос.

Скопируйте свой собственный скрипт в эту папку. В настройках также есть «установка из файла». Вы должны включить сценарии в настройках. Это немного скрыто. В левом верхнем углу окна по умолчанию вы можете увидеть восклицательный знак. Нажмите на него и выберите настройки из выпадающего меню. Затем вам нужно увеличить высоту этого бара, чтобы увидеть настройки. На скриншоте вы можете увидеть увеличенную панель настроек. Выберите вкладку аддона. Справа вы можете пометить «включить аддон». Чтобы сделать это изменение постоянным, вы должны сохранить его. Я забыл о ярлыке, поищите его, может быть, его Ctrl + U.

Ну, когда я использовал Blender, была возможность запускать скрипты. Теперь я вижу только консоль.

enter image description here

0
ответ дан 2 August 2013 в 17:23

Другие вопросы по тегам:

Похожие вопросы: