def __init__(self, name):
        Node.__init__(self)

        self.name = name
        self.description = None
        self.tags = None
        self.attribute = None
示例#2
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.start_pos = Point2D(kwargs['start'])
        self.end_pos = Point2D(kwargs['end'])

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width')
 def __init__(self, **kwargs):
     Node.__init__(self)
     self.at = Vector2D(kwargs.get('at', (0, 0)))
     self.radius = float(kwargs['radius'])
     self.width = float(kwargs['width'])
     self.layers = kwargs['layers']
     self.number = kwargs.get('number', "")
 def __init__(self, **kwargs):
     Node.__init__(self)
     self.filename = kwargs['filename']
     self.at = Vector3D(kwargs.get('at', [0, 0, 0]))
     self.offset = Vector3D(kwargs.get('offset', [0, 0, 0]))
     self.scale = Vector3D(kwargs.get('scale', [1, 1, 1]))
     self.rotate = Vector3D(kwargs.get('rotate', [0, 0, 0]))
示例#5
0
    def __init__(self,
                 keycap_type: str = None,
                 spacing: float = None,
                 x_spacing: float = None,
                 y_spacing: float = None,
                 width: float = None,
                 rotation: float = 0,
                 x_offset: float = 0,
                 y_offset: float = 0):

        Node.__init__(self)

        if spacing is not None:
            self.x_spacing = spacing
            self.y_spacing = spacing
        elif x_spacing is None or y_spacing is None:
            raise Exception('Keycap spacing not specified')
        else:
            self.x_spacing = x_spacing
            self.y_spacing = y_spacing

        self.width = width
        self.rotation = rotation
        self.x_offset = x_offset
        self.y_offset = y_offset

        if keycap_type == 'regular':
            self.virtual_childs = self._init_regular_keycap()
        elif keycap_type == 'ISOEnter':
            self.virtual_childs = self._init_ISOEnter_keycap()
        else:
            raise Exception('Keycap type not supported')
示例#6
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        geometricCircle.__init__(self, Vector2D(kwargs['center']),
                                 float(kwargs['radius']))

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width')
示例#7
0
    def __init__(self, name):
        Node.__init__(self)

        self.name = name
        self.description = None
        self.tags = None
        self.attribute = None
示例#8
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.radius_ratio = 0

        self._initNumber(**kwargs)
        self._initType(**kwargs)
        self._initShape(**kwargs)
        self._initPosition(**kwargs)
        self._initSize(**kwargs)
        self._initOffset(**kwargs)
        self._initDrill(**kwargs)  # requires pad type and offset
        self._initSolderPasteMargin(**kwargs)
        self._initSolderPasteMarginRatio(**kwargs)
        self._initSolderMaskMargin(**kwargs)
        self._initLayers(**kwargs)
        self._initMirror(**kwargs)

        if self.shape == self.SHAPE_OVAL and self.size[0] == self.size[1]:
            self.shape = self.SHAPE_CIRCLE

        if self.shape == Pad.SHAPE_OVAL or self.shape == Pad.SHAPE_CIRCLE:
            self.radius_ratio = 0.5
        if self.shape == Pad.SHAPE_ROUNDRECT:
            self._initRadiusRatio(**kwargs)

        if self.shape == Pad.SHAPE_CUSTOM:
            self._initAnchorShape(**kwargs)
            self._initShapeInZone(**kwargs)

            self.primitives = []
            if 'primitives' not in kwargs:
                raise KeyError('primitives must be declared for custom pads')

            for p in kwargs['primitives']:
                self.addPrimitive(p)
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.start_pos = Point(kwargs["start"], **kwargs)
        self.end_pos = Point(kwargs["end"], **kwargs)

        self.layer = kwargs.get("layer", "F.SilkS")
        self.width = kwargs.get("width")
示例#10
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.start_pos = Vector2D(kwargs['start'])
        self.end_pos = Vector2D(kwargs['end'])

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width')
示例#11
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.radius_ratio = 0

        self._initNumber(**kwargs)
        self._initType(**kwargs)
        self._initShape(**kwargs)
        self._initPosition(**kwargs)
        self._initSize(**kwargs)
        self._initOffset(**kwargs)
        self._initDrill(**kwargs)  # requires pad type and offset
        self._initSolderPasteMargin(**kwargs)
        self._initSolderPasteMarginRatio(**kwargs)
        self._initSolderMaskMargin(**kwargs)
        self._initLayers(**kwargs)
        self._initMirror(**kwargs)

        if self.shape == self.SHAPE_OVAL and self.size[0] == self.size[1]:
            self.shape = self.SHAPE_CIRCLE

        if self.shape == Pad.SHAPE_OVAL or self.shape == Pad.SHAPE_CIRCLE:
            self.radius_ratio = 0.5
        if self.shape == Pad.SHAPE_ROUNDRECT:
            self._initRadiusRatio(**kwargs)

        if self.shape == Pad.SHAPE_CUSTOM:
            self._initAnchorShape(**kwargs)
            self._initShapeInZone(**kwargs)

            self.primitives = []
            if 'primitives' not in kwargs:
                raise KeyError('primitives must be declared for custom pads')

            for p in kwargs['primitives']:
                self.addPrimitive(p)
    def __init__(self, **kwargs):
        Node.__init__(self)

        #
        self.virtual_childs = []
        #
        self._initPosition(**kwargs)
        self._initSize(**kwargs)
        self._initFootPrint(**kwargs)
        #
        #
        #
        self._initDesriptionNode(**kwargs)
        self._initTagNode(**kwargs)
        self._initAttributeNode(**kwargs)
        self._initFile3DNameNode(**kwargs)
        self._initExtraTextNode(**kwargs)

        self.extraffablines = kwargs.get('extraffablines')
        self.typeOfBox = str(kwargs.get('typeOfBox'))
        self.pins = kwargs.get('pins')

        #
        # Create foot print parts
        #
        #
        self._createPinsNode()
        self._createFFabLine()
        self._createPin1MarkerLine()
        self._createFSilkSLine()
        self._createFCrtYdLine()
示例#13
0
    def __init__(self, **kwargs):
        Node.__init__(self)

        #
        self.virtual_childs = []
        #
        self._initPosition(**kwargs)
        self._initSize(**kwargs)
        self._initFootPrint(**kwargs)
        #
        #
        #
        self._initDesriptionNode(**kwargs)
        self._initTagNode(**kwargs)
        self._initAttributeNode(**kwargs)
        self._initFile3DNameNode(**kwargs)
        self._initExtraTextNode(**kwargs)

        self.extraffablines = kwargs.get('extraffablines')
        self.typeOfBox = str(kwargs.get('typeOfBox'))
        self.pins = kwargs.get('pins')

        #
        # Create foot print parts
        #
        #
        self._createPinsNode()
        self._createFFabLine()
        self._createPin1MarkerLine()
        self._createFSilkSLine()
        self._createFCrtYdLine()
 def __init__(self, **kwargs):
     Node.__init__(self)
     self._initPincount(**kwargs)
     self._initIncrement(**kwargs)
     self._initInitialNumber(**kwargs)
     self._initSpacing(**kwargs)
     self._initStartingPosition(**kwargs)
     self.virtual_childs = self._createPads(**kwargs)
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.nodes = []
        for n in kwargs['nodes']:
            self.nodes.append(Point2D(n))

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width')
示例#16
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.center_pos = Point(kwargs['center'])
        self.start_pos = Point(kwargs['start'])
        self.angle = kwargs['angle']

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width')
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.center_pos = Point(kwargs['center'])
        self.start_pos = Point(kwargs['start'])
        self.angle = kwargs['angle']

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width')
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.polygone_line = kwargs['polygone']

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width')

        self.virtual_childs = self._createChildNodes(self.polygone_line)
示例#19
0
 def __init__(self, **kwargs):
     Node.__init__(self)
     self._initPincount(**kwargs)
     self._initInitialNumber(**kwargs)
     self._initIncrement(**kwargs)
     self._initSpacing(**kwargs)
     self._initStartingPosition(**kwargs)
     self.virtual_childs = self._createPads(**kwargs)
示例#20
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.polygone_line = kwargs['polygone']

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width')

        self.virtual_childs = self._createChildNodes(self.polygone_line)
示例#21
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.center_pos = Point(kwargs['center'])
        self.radius = kwargs['radius']

        self.end_pos = {'x': self.center_pos.x+self.radius, 'y': self.center_pos.y}

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width')
示例#22
0
    def __init__(self, **kwargs):
        Node.__init__(self)

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width')

        self._initPolyPoint(**kwargs)

        self.virtual_childs = self._createChildNodes(self.nodes)
    def __init__(self, **kwargs):
        Node.__init__(self)

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width')

        self._initPolyPoint(**kwargs)

        self.virtual_childs = self._createChildNodes(self.nodes)
示例#24
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.start_pos = Vector2D(kwargs['start'])
        self.end_pos = Vector2D(kwargs['end'])

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width', 0.12)  # TODO: auto detection

        self.virtual_childs = self._createChildNodes(self.start_pos, self.end_pos, self.layer, self.width)
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.start_pos = Point(kwargs['start'])
        self.end_pos = Point(kwargs['end'])

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width', 0.15)  # TODO: better variation to get line width

        self.virtual_childs = self._createChildNodes(self.start_pos, self.end_pos, self.layer, self.width)
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.center_pos = Vector2D(kwargs['center'])
        self.radius = kwargs['radius']

        self.end_pos = Vector2D([self.center_pos.x+self.radius, self.center_pos.y])

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width')
    def __init__(self, name):
        Node.__init__(self)

        self.name = name
        self.description = None
        self.tags = None
        self.attribute = None
        self.maskMargin = None
        self.pasteMargin = None
        self.pasteMarginRatio = None
示例#28
0
    def __init__(self, name):
        Node.__init__(self)

        self.name = name
        self.description = None
        self.tags = None
        self.attribute = None
        self.maskMargin = None
        self.pasteMargin = None
        self.pasteMarginRatio = None
示例#29
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.center_pos = Vector2D(kwargs['center'])
        self.radius = kwargs['radius']

        self.end_pos = Vector2D(
            [self.center_pos.x + self.radius, self.center_pos.y])

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width')
示例#30
0
 def __init__(self, **kwargs):
     Node.__init__(self)
     self.solder_mask_margin = kwargs.get('solder_mask_margin', 0)
     self.minimum_overlap = kwargs.get('minimum_overlap', 0.1)
     self._initPosition(**kwargs)
     self._initSize(**kwargs)
     self._initNumber(**kwargs)
     self._initPasteSettings(**kwargs)
     self._initNumAnchor(**kwargs)
     self._generatePads()
示例#31
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.reference_arc = geometricArc(geometry=kwargs['reference_arc'])
        self.width = float(kwargs['width'])

        self.number = kwargs.get('number', "")
        self.layers = kwargs['layers']
        self.minimum_overlap = kwargs.get('minimum_overlap', 0.1)

        self.setRoundRadius(**kwargs)
        self.setLimitingLines(**kwargs)
示例#32
0
    def __init__(self, **kwargs):
        Node.__init__(self)

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width', 0.15)

        self._initMirror(**kwargs)

        self._initPolygone(**kwargs)

        self.virtual_childs = self._createChildNodes(self.polygone_line)
示例#33
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        if 'geometry' in kwargs:
            geometry = kwargs['geometry']
            geometricLine.__init__(self, geometry.start_pos, geometry.end_pos)
        else:
            geometricLine.__init__(self,
                                   start=Vector2D(kwargs['start']),
                                   end=Vector2D(kwargs['end']))

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width')
示例#34
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.start_pos = Point(kwargs['start'])
        self.end_pos = Point(kwargs['end'])

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get(
            'width', 0.15)  # TODO: better variation to get line width

        self.virtual_childs = self._createChildNodes(self.start_pos,
                                                     self.end_pos, self.layer,
                                                     self.width)
示例#35
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.type = kwargs['type']
        self.text = kwargs['text']
        self.at = Vector2D(kwargs['at'])
        self.rotation = kwargs.get('rotation', 0)

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.size = Vector2D(kwargs.get('size', [1, 1]))
        self.thickness = kwargs.get('thickness', 0.15)

        self.hide = kwargs.get('hide', False)
示例#36
0
    def __init__(self, **kwargs):
        Node.__init__(self)

        self._initNumber(**kwargs)
        self._initType(**kwargs)
        self._initShape(**kwargs)
        self._initPosition(**kwargs)
        self._initSize(**kwargs)
        self._initOffset(**kwargs)
        self._initDrill(**kwargs)  # requires pad type and offset
        self._initSolderPasteMargin(**kwargs)
        self._initLayers(**kwargs)
    def __init__(self, **kwargs):
        Node.__init__(self)

        self._initNumber(**kwargs)
        self._initType(**kwargs)
        self._initShape(**kwargs)
        self._initPosition(**kwargs)
        self._initSize(**kwargs)
        self._initOffset(**kwargs)
        self._initDrill(**kwargs)  # requires pad type and offset
        self._initSolderPasteMargin(**kwargs)
        self._initLayers(**kwargs)
示例#38
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.type = kwargs['type']
        self.text = kwargs['text']
        self.at = Point(kwargs['at'])
        self.rotation = kwargs.get('rotation', 0)

        self.layer = kwargs['layer']
        self.size = Point(kwargs.get('size', [1, 1]))
        self.thickness = kwargs.get('thickness', 0.15)

        self.hide = kwargs.get('hide', False)
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.at = Vector2D(kwargs.get('at', [0, 0]))
        self.size_round_base = kwargs.get('size_round_base', 0.01)
        self.grid_round_base = kwargs.get('grid_round_base', 0.01)

        self.radius_ratio = kwargs.get('radius_ratio', 0)
        self.maximum_radius = kwargs.get('maximum_radius')

        self._initNumber(**kwargs)
        self._initSize(**kwargs)
        self._initThermalVias(**kwargs)
        self._initPaste(**kwargs)
    def __init__(self, name):
        Node.__init__(self)

        self.name = name
        self.description = None
        self.tags = None
        self.attribute = None
        self.clearance = None
        self.maskMargin = None
        self.pasteMargin = None
        self.pasteMarginRatio = None
        self.zoneConnect = None
        self.thermalWidth = None
        self.thermalGap = None
示例#41
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        self._initType(**kwargs)

        self.text = kwargs['text']
        self.at = Vector2D(kwargs['at'])
        self.rotation = kwargs.get('rotation', 0)
        self.mirror = kwargs.get('mirror', False)

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.size = Vector2D(kwargs.get('size', [1, 1]))
        self.thickness = kwargs.get('thickness', 0.15)

        self.hide = kwargs.get('hide', False)
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.start_pos = Point(kwargs['start'])
        self.end_pos = Point(kwargs['end'])

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width', 0.15)  # TODO: better variation to get line width

        rect_line = RectLine(**kwargs)
        rect_line._parent = self

        rect_fill = RectFill(**kwargs)
        rect_fill._parent = self

        self.virtual_childs = [rect_line, rect_fill]
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.start_pos = Point(kwargs['start'])
        self.end_pos = Point(kwargs['end'])

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get(
            'width', 0.15)  # TODO: better variation to get line width

        rect_line = RectLine(**kwargs)
        rect_line._parent = self

        rect_fill = RectFill(**kwargs)
        rect_fill._parent = self

        self.virtual_childs = [rect_line, rect_fill]
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.at = Vector2D(kwargs.get('at', [0, 0]))
        self.size_round_base = kwargs.get('size_round_base', 0.01)
        self.grid_round_base = kwargs.get('grid_round_base', 0.01)

        self.round_radius_handler = RoundRadiusHandler(default_radius_ratio=0, **kwargs)

        self.kicad4_compatible = kwargs.get('kicad4_compatible', False)
        self.paste_round_radius_handler = RoundRadiusHandler(
                radius_ratio=kwargs.get('paste_radius_ratio', 0),
                maximum_radius=kwargs.get('paste_maximum_radius', None),
                round_radius_exact=kwargs.get('paste_round_radius_exact', None),
                kicad4_compatible=self.kicad4_compatible
            )

        self._initNumber(**kwargs)
        self._initSize(**kwargs)
        self._initThermalVias(**kwargs)
        self._initPaste(**kwargs)
示例#45
0
 def __init__(self, **kwargs):
     Node.__init__(self)
     self.filename = kwargs['filename']
     self.at = Vector3D(kwargs.get('at', [0, 0, 0]))
     self.scale = Vector3D(kwargs.get('scale', [1, 1, 1]))
     self.rotate = Vector3D(kwargs.get('rotate', [0, 0, 0]))
示例#46
0
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.nodes = PolygonPoints(**kwargs)

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width')
    def __init__(self, **kwargs):
        Node.__init__(self)
        self.nodes = PolygonPoints(**kwargs)

        self.layer = kwargs.get('layer', 'F.SilkS')
        self.width = kwargs.get('width')
 def __init__(self, **kwargs):
     Node.__init__(self)
     self.filename = kwargs['filename']
     self.at = Point(kwargs['at'])
     self.scale = Point(kwargs['scale'])
     self.rotate = Point(kwargs['rotate'])
 def __init__(self, r):
     Node.__init__(self)
     self.rotation = r  # in degree
    def __init__(self, x, y):
        Node.__init__(self)

        # translation information
        self.offset_x = x
        self.offset_y = y