From: <Kev...@ca...> - 2004-12-06 16:31:09
|
Sorry if my terms are incorrect. I'm new to Python and VPython. I'm using vpython 3.0.3 & 3.0.2 Creating TEXT without specifying a color generates an error. The __init__ method does not handle color equal to None. Reshape does. example: from visual import * from visual.text import * t=text(string='ABC') t=text(string='ABC',color=color.red) >>> from visual import * Visual 2004-12-03 >>> from visual.text import * >>> t=text(string='ABC') Traceback (most recent call last): File "<stdin>", line 1, in ? File "C:\Python23\lib\site-packages\visual\text.py", line 331, in __init__ depth, color, container, visible) File "C:\Python23\lib\site-packages\visual\text.py", line 363, in showletter thickness, color, container, visible) File "C:\Python23\lib\site-packages\visual\text.py", line 342, in makeletterbox b = convex(display=self.display, color=color, frame=container, visible=visible) File "C:\Python23\lib\site-packages\visual\primitives.py", line 288, in __init__ process_init_args_from_keyword_dictionary(self, keywords) File "C:\Python23\lib\site-packages\visual\primitives.py", line 37, in process_init_args_from_keyword_dictionary displayobject.color = keywords['color'] Boost.Python.ArgumentError: Python argument types in None.None(convex, NoneType) did not match C++ signature: None(visual::convex {lvalue}, visual::rgb) >>> t=text(string='ABC',color=color.red) >>> It works fine when text.py is modified to check if color defaulted: class text: def __init__(self, pos=(0,0,0), axis=defaultdir, string='', justify='left', height=1.0, width=None, depth=0, color=None, up=None, visible=1, display=None): if display == None: display = scene self.display = display >> if color == None: >> color = display.foreground Regards, Kevin x57048 |