示例#1
0
 def get_config(self, name: str) -> List['DXFEntity']:
     """ Returns a list of :class:`~ezdxf.entities.Viewport` objects, for the multi-viewport configuration `name`.
     """
     try:
         return self.entries[self.key(name)]
     except KeyError:
         raise DXFTableEntryError(name)
示例#2
0
 def get(self, name: str) -> 'DXFEntity':
     """ Get table-entry by name as WrapperClass(). """
     key = self.key(name)
     for entry in iter(self):
         if self.key(entry) == key:
             return entry
     raise DXFTableEntryError(name)
示例#3
0
文件: table.py 项目: soldocode/ezdxf
 def new(self, name, dxfattribs=None):
     if self.has_entry(name):
         raise DXFTableEntryError('%s %s already exists!' % (self._dxfname, name))
     if dxfattribs is None:
         dxfattribs = {}
     dxfattribs['name'] = name
     return self.new_entry(dxfattribs)
示例#4
0
 def get(self, name: str) -> 'DXFEntity':
     """ Get table entry `name` (case insensitive). Raises :class:`DXFValueError` if table entry does not exist. """
     key = self.key(name)
     entry = self.entries.get(key, None)
     if entry:
         return entry
     else:
         raise DXFTableEntryError(name)
示例#5
0
 def add_entry(self, entry: 'DXFEntity') -> None:
     """ Add a table `entry`, created by other object than this table. (internal API) """
     if entry.dxftype() != self._head.dxf.name:
         raise DXFTypeError('Invalid table entry type {} for table {}'.format(entry.dxftype(), self.name))
     name = entry.dxf.name
     if self.has_entry(name):
         raise DXFTableEntryError('{} {} already exists!'.format(self._head.dxf.name, name))
     entry.doc = self.doc
     entry.owner = self._head.dxf.handle
     self._append(entry)
示例#6
0
    def new(self, name: str, dxfattribs: dict = None) -> 'DXFEntity':
        """
        Create a new table entry `name`.

        Args:
            name: name of table entry, case insensitive
            dxfattribs: additional DXF attributes for table entry

        """
        if self.has_entry(name):
            raise DXFTableEntryError('{} {} already exists!'.format(self._head.dxf.name, name))
        dxfattribs = dxfattribs or {}
        dxfattribs['name'] = name
        dxfattribs['owner'] = self._head.dxf.handle
        return self.new_entry(dxfattribs)
示例#7
0
 def new(self, name: str, dxfattribs: dict = None) -> 'DXFEntity':
     if self.has_entry(name):
         raise DXFTableEntryError('%s %s already exists!' % (self._dxfname, name))
     dxfattribs = dxfattribs or {}
     dxfattribs['name'] = name
     return self.new_entry(dxfattribs)