/usr/share/pyshared/tvtk/common.py is in mayavi2 4.1.0-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 | """Common functions and classes that do not require any external
dependencies (apart from the standard library of course).
"""
# Author: Prabhu Ramachandran <prabhu_r@users.sf.net>
# Copyright (c) 2005-2007, Enthought, Inc.
# License: BSD Style.
import string
import re
######################################################################
# Utility functions.
######################################################################
def get_tvtk_name(vtk_name):
"""Converts a VTK class name to a TVTK class name.
This function additionally converts any leading digits into a
suitable string.
For example:
>>> get_tvtk_name('vtk3DSImporter')
'ThreeDSImporter'
>>> get_tvtk_name('vtkXMLDataReader')
'XMLDataReader'
"""
if vtk_name[:3] == 'vtk':
name = vtk_name[3:]
dig2name = {'1':'One', '2':'Two', '3':'Three', '4':'Four',
'5':'Five', '6': 'Six', '7':'Seven', '8':'Eight',
'9': 'Nine', '0':'Zero'}
if name[0] in string.digits:
return dig2name[name[0]] + name[1:]
else:
return name
else:
return vtk_name
class _Camel2Enthought:
"""Simple functor class to convert names from CamelCase to
Enthought compatible names.
For example::
>>> camel2enthought = _Camel2Enthought()
>>> camel2enthought('XMLActor2DToSGML')
'xml_actor2d_to_sgml'
"""
def __init__(self):
self.patn = re.compile(r'([A-Z0-9]+)([a-z0-9]*)')
self.nd_patn = re.compile(r'(\D[123])_D')
def __call__(self, name):
ret = self.patn.sub(self._repl, name)
ret = self.nd_patn.sub(r'\1d', ret)
if ret[0] == '_':
ret = ret[1:]
return ret.lower()
def _repl(self, m):
g1 = m.group(1)
g2 = m.group(2)
if len(g1) > 1:
if g2:
return '_' + g1[:-1] + '_' + g1[-1] + g2
else:
return '_' + g1
else:
return '_' + g1 + g2
# Instantiate a converter.
camel2enthought = _Camel2Enthought()
|