Не подтверждена Коммит 796c15cf создал по автору Sergey's avatar Sergey Зафиксировано автором GitHub
Просмотр файлов

Fix useless input copying of color out node (#4604)

* fix useless input copying of color out node
and fast conversion for numpy from vector to color

* switch to numpy mode if input is numpy
владелец 40200a24
......@@ -27,6 +27,7 @@ from sverchok.utils.surface import SvSurface
from sverchok.utils.solid_conversion import to_solid_recursive
from mathutils import Matrix, Quaternion
import numpy as np
from numpy import ndarray
......@@ -136,7 +137,13 @@ def string_to_color(source_data):
def vector_to_color(source_data):
return [[(v[0], v[1], v[2], 1) for v in obj] for obj in source_data]
if source_data and isinstance(source_data[0], np.ndarray):
out = []
for obj in source_data:
out.append(np.concatenate((obj, np.ones((len(obj), 1))), axis=1))
return out
else:
return [[(v[0], v[1], v[2], 1) for v in obj] for obj in source_data]
class NoImplicitConversionPolicy:
......
......@@ -107,12 +107,12 @@ class SvColorsOutNodeMK1(bpy.types.Node, SverchCustomTreeNode):
color_input = self.inputs['Colors']
if color_input.is_linked:
abc = self.inputs['Colors'].sv_get()
abc = self.inputs['Colors'].sv_get(deepcopy=False)
data = dataCorrect_np(abc)
else:
data = [[self.unit_color[:]]]
if self.output_numpy:
if self.output_numpy or isinstance(data[0], ndarray):
unpack_func = unpack_np if isinstance(data[0], ndarray) else unpack_list_to_np
else:
unpack_func = unpack_list
......
Поддерживает Markdown
0% или .
You are about to add 0 people to the discussion. Proceed with caution.
Сначала завершите редактирование этого сообщения!
Пожалуйста, зарегистрируйтесь или чтобы прокомментировать