Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def SVGGetMaterial(color, context):
- """
- Get material for specified color
- """
- materials = context['materials']
- rgb_re = re.compile('^\s*rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,(\d+)\s*\)\s*$')
- if color in materials:
- return materials[color]
- diff = None
- if color.startswith('#'):
- color = color[1:]
- if len(color) == 3:
- color = color[0] * 2 + color[1] * 2 + color[2] * 2
- diff = (int(color[0:2], 16), int(color[2:4], 16), int(color[4:6], 16))
- elif color in svg_colors.SVGColors:
- diff = svg_colors.SVGColors[color]
- elif rgb_re.match(color):
- c = rgb_re.findall(color)[0]
- diff = (float(c[0]), float(c[1]), float(c[2]))
- else:
- return None
- mat = bpy.data.materials.new(name='SVGMat')
- mat.diffuse_color = ([x / 255.0 for x in diff])
- materials[color] = mat
- return mat
Add Comment
Please, Sign In to add comment