def __iter__(self) -> Iterable[Tuple[str, str]]: """ Yields all redraw associations as (object_handle, sort_handle) tuples. """ for handle, sort_handle in take2(self.sortentstable_subclass[self.TABLE_START_INDEX:]): yield handle.value, sort_handle.value
def load_table(self, tags: 'Tags') -> None: for handle, sort_handle in take2(tags): if handle.code != 331: raise DXFStructureError('Invalid handle code {}, expected 331'.format(handle.code)) if sort_handle.code != 5: raise DXFStructureError('Invalid sort handle code {}, expected 5'.format(handle.code)) self.table[handle.value] = sort_handle.value
def load_table(self, tags: "Tags") -> None: for handle, sort_handle in take2(tags): if handle.code != 331: raise DXFStructureError( f"Invalid handle code {handle.code}, expected 331" ) if sort_handle.code != 5: raise DXFStructureError( f"Invalid sort handle code {handle.code}, expected 5" ) self.table[handle.value] = sort_handle.value
def get_acad_dstyle(self, dim_style: 'DimStyle') -> dict: try: data = self.get_xdata_list('ACAD', 'DSTYLE') except DXFValueError: return {} attribs = {} codes = dim_style.CODE_TO_DXF_ATTRIB for code_tag, value_tag in take2(data): group_code = code_tag.value value = value_tag.value if group_code in codes: attribs[codes[group_code]] = value return attribs
def get_acad_dstyle(self, dim_style: 'DimStyle') -> dict: """ Get XDATA section ACAD:DSTYLE, to override DIMSTYLE attributes for this DIMENSION entity. Returns a ``dict`` with DIMSTYLE attribute names as keys. (internal API) """ try: data = self.get_xdata_list('ACAD', 'DSTYLE') except DXFValueError: return {} attribs = {} codes = dim_style.CODE_TO_DXF_ATTRIB for code_tag, value_tag in take2(data): group_code = code_tag.value value = value_tag.value if group_code in codes: attribs[codes[group_code]] = value return self.dim_style_attr_handles_to_names(attribs)
def write_str(self, s: str) -> None: data = s.split('\n') for code, value in take2(data): self.write_tag2(int(code), value)
def __iter__(self) -> Iterable[Tuple[int, int]]: for edge in take2(self.values): yield edge
def _parse_xlist(self) -> Dict: if self._xlist: return dict(take2(self._xlist)) else: return dict()
def from_tags(cls, tags): return cls(data=((k, v) for k, v in take2( tag.value for tag in tags if tag.code in set(cls.SEARCH_CODES))))
def __iter__(self): for edge in take2(self.value): yield edge
def from_tags(cls, tags: Tags) -> 'TagDict': return cls(data=(t for t in take2(tag.value for tag in tags if tag.code in set(cls.SEARCH_CODES))))